[PWNHUB 公开赛 2018]傻 fufu 的工作日
我们先扫描目录,发现文件index.php.bak
下载打开,提示文件被PHPjiami加密了
phpjiami加密流程
加密流程:源码 -> 加密处理(压缩,替换,BASE64,转义)-> 安全处理(验证文件 MD5 值,限制
IP、限域名、限时间、防破解、防命令行调试)-> 加密程序成品,再简单的说:源码 + 加密外壳
我们去网上找个解密脚本
encode文件夹放待加密的文件,文件格式恢复成php
decode文件为明文
我们运行
1 | php phpjiami.php |
得到源码
我们发现有个UploadFile.class.php
访问UploadFile.class.php.bak将其下载下来
依旧解码得到
1 |
|
关键代码
1 | if(!in_array($filename[count($filename)-1], $this->allow_ext)) { |
存在绕过
利用上传数组upfile('1'->'jpg','0'->'php')
所以$filename[count($filename)-1]
取出的是jpg
end($filename)
取出的是php
绕过达成
找到上传目录后我们直接连蚁剑,在根目录得到flag