[Web] ezDoor - pyz
从phpinfo着手,初步认定是opcache的漏洞
参考文章https://www.anquanke.com/post/id/83844
叫phpinfo对应的参数丢进脚本里算出system id
在本地写一个php来使opcache生成对应的bin文件
因为opcache.validate_timestamps => On
写个简单脚本计算出文件创建的时间戳
依照文章将bin的system id和时间戳改一下,需要注意的是这里是64位,改40h的数据(赛后写的wp,时间戳没对上)
http://202.120.7.217:9527/?action=shell&dir=/var/www/html/flag获取flag文件夹的文件名
http://202.120.7.217:9527/?action=shell&a=$a=base64_encode(gzcompress(file_get_contents(%22/var/www/html/flag/93f4c28c0cf0b07dfd7012dca2cb868cc0228cad%22)));;echo%20$a;
将文件压缩并用base64编码显示出来
本地进行反操作获得bin,在opcache后面加个0x00修复文件
利用github的工具将bin反汇编成伪代码
用vld看更清晰点:
根据opcode写PHP代码并解密
打赏还是打残,这是个问题
没有帐号? 立即注册