2020GKCTF CheckIN github exp实现复现
程序员文章站
2022-07-16 15:47:44
...
<?php
highlight_file(__FILE__);
class ClassName
{
public $code = null;
public $decode = null;
function __construct()
{
$this->code = @$this->x()['Ginkgo'];
$this->decode = @base64_decode( $this->code );
@Eval($this->decode);
}
public function x()
{
return $_REQUEST;
}
}
new ClassName();
直接给shell 稍微试一下容易发现 phpinfo() 可以执行
phpinfo();
PHP Version 7.3.18
搜一下 disable_functions 发现禁用了很多函数
禁用了system,exec,shell_exec,ls等 但是没有禁用 file_get_contents fopen 甚至eval等函数
但是我在尝试的时候发现一个奇怪的问题 括号内单引号打过去打不出flag 双引号能打出来
去请教了一下 颖奇师傅 先是让我试一下 require 发现也是单引号不行 双引号可以
最后发现居然是 base64网站的问题 解密后加密结果不一样 。。。。。
。。。。。日
贴一下地址 吃一堑长一智吧也算是。。。。。
http://tool.chinaz.com/Tools/Base64.aspx