欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

2020GKCTF CheckIN github exp实现复现
搜一下 disable_functions 发现禁用了很多函数
2020GKCTF CheckIN github exp实现复现
禁用了system,exec,shell_exec,ls等 但是没有禁用 file_get_contents fopen 甚至eval等函数

但是我在尝试的时候发现一个奇怪的问题 括号内单引号打过去打不出flag 双引号能打出来
2020GKCTF CheckIN github exp实现复现
2020GKCTF CheckIN github exp实现复现

去请教了一下 颖奇师傅 先是让我试一下 require 发现也是单引号不行 双引号可以
最后发现居然是 base64网站的问题 解密后加密结果不一样 。。。。。
。。。。。日

贴一下地址 吃一堑长一智吧也算是。。。。。

http://tool.chinaz.com/Tools/Base64.aspx

相关标签: CTF入坟