「作者主页」:士别三日wyx
此文章已录入专栏《网络攻防》,持续更新热门靶场的通关教程
「未知攻,焉知收」,在一个个孤独的夜晚,你完成了几百个攻防实验,回过头来才发现,已经击败了百分之九十九的同期选手。
一、题目简介
页面中的文字提示我们使用「菜刀」连接后门,什么!你没有菜刀?恭喜你,你来对地方了,网上大部分的答案都是直接上菜刀连后门,实际上不使用菜刀也能拿到 flag
![在这里插入图片描述](https://img-blog.csdnimg.cn/04b428ce5ddd4722ab2ceffc7475a2a2.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5aOr5Yir5LiJ5peld3l4,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
二、思路分析
这一关是「代码执行」漏洞,推荐使用 var_dump() + scandir() + file_get_contents() 读取文件内容
1)一句话木马
根据页面中的文字提示可知,作者为我们准备好了「一句话木马」,并委婉的提示,使用「菜刀」连接
![在这里插入图片描述](https://img-blog.csdnimg.cn/79433a53be44428794bdf64121a8c133.png)
一句话木马本质上是利用了「代码执行」函数,将 post 请求的参数传递到 eval()
中执行,我们完全可以修改 post 请求的参数来执行代码
2)代码执行
使用工具(此处使用 Max HacKBar)修改 post 请求的「参数」,payload如下
Syc=phpinfo();
![在这里插入图片描述](https://img-blog.csdnimg.cn/41ba7403657c4e3594231e736f0558ad.png)
代码成功执行,页面展示了PHP的信息
![在这里插入图片描述](https://img-blog.csdnimg.cn/94d4687349774cee84aca5c4d6685900.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5aOr5Yir5LiJ5peld3l4,size_20,color_FFFFFF,t_70,g_se,x_16)
这里没有进行过滤,可以「执行任意代码」,读取 flag.php 文件即可获取flag
三、解题步骤
1)目录遍历
使用 var_dump() + scandir() 查看根目录下的所有文件,payload如下
Syc=var_dump(scandir('/'));
![在这里插入图片描述](https://img-blog.csdnimg.cn/ca57018b40f646daa81b8f3685661c0b.png)
页面的背景颜色会遮盖代码执行的结果,提交请求后,右键查看「页面源代码」,获取代码的执行结果
![在这里插入图片描述](https://img-blog.csdnimg.cn/f9781de8e1314fbdbbb9105231c4a00f.png)
CTF中有个不成文的「规矩」,如果有一个文件名为 flag*,那 flag 大概率就在这个文件里面
2)查看文件内容
使用 var_dump() + file_get_contents() 查看文件内容,payload如下
Syc=var_dump(file_get_contents('/flag'));
![在这里插入图片描述](https://img-blog.csdnimg.cn/d69e66d7b8374bdc808ea3cd79ed89d3.png)
提交请求后,右键查看「页面源代码」,flag 就在里面
![在这里插入图片描述](https://img-blog.csdnimg.cn/6c2d93e67acd46748cbadc06fec350fe.png)
四、总结
喜欢一个东西首先要先学会「尊重」,虽然网络安全的圈子不乏各种灰产,以及高调宣传自己是黑客的脚本小子,但不可否认,这个圈子仍有不少人保持着「举世皆浊我独清,众人皆醉我独醒」的心态,努力磨砺技术,提升自身修养,让互联网变得更加安全