SSRF攻击测试

ssrf攻击原理:

1387286478507

使用curl处理用户请求,并展示用户请求的结果

图片1

用户提交请求端

图片2

端口扫描

正常情况下,请求http://www.test.com/test/baimaozi/ssrf/robots.txt 返回结果如下

图片3

如果请求非http服务的端口,比如:http://www.test.com:3306/test/baimaozi/ssrf/robots.txt 会返回banner信息

http://www.test.com:3306/test/baimaozi/ssrf/robots.txt

图片4

请求8080端口tomcat

http://www.test.com:8080/test/baimaozi/ssrf/robots.txt

图片5

请求关闭的端口会报错http://www.test.com:801/test/baimaozi/ssrf/robots.txt

图片6

攻击应用程序

内网web应用指纹识别

识别tomcat

http://www.test.com:8080/manager/images/tomcat.gif

图片7

读取本地文件

file:///C:/Windows/win.ini

图片8

如何防御

通常有以下5个思路:

1,过滤返回信息,验证远程服务器对请求的响应是比较容易的方法。如果web应用是去获取某

一种类型的文件。那么在把返回结果展示给用户之前先验证返回的信息是否符合标准。

2, 统一错误信息,避免用户可以根据错误信息来判断远端服务器的端口状态。

3,限制请求的端口为http常用的端口,比如,80,443,8080,8090。

4,黑名单内网ip。避免应用被用来获取获取内网数据,攻击内网。

5,禁用不需要的协议。仅仅允许http和https请求。可以防止类似于file:///,gopher://,ftp:// 等引起的问题。

原创文章,作者:Moto,如若转载,请注明出处:http://www.mottoin.com/article/web/84709.html

发表评论

登录后才能评论

联系我们

021-62666911

在线咨询:点击这里给我发消息

邮件:root@mottoin.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code