关于SSRF攻击

这些天专注了解了SSRF攻击(Server-side Request Forgery,服务器端请求伪造),对这类攻击有了自己的一些总结与看法,老外取这个名字是挺不错的,我很喜欢,这让我想到了CSRF(Cross-site Request Forgery,跨站请求伪造),前者是在服务器端发出了伪造的请求,后者是在浏览器端发出伪造请求。

@riyazwalikar的三篇实战文章不错:
http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-1.html
http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-2.html
http://www.riyazwalikar.com/2012/11/cross-site-port-attacks-xspa-part-3.html

我上篇文章(http://evilcos.me/?p=206)提到的Alexander这个人,他在上面这三篇文章中有和@riyazwalikar进行讨论,建议@riyazwalikar说的XSPA攻击叫做SSRF更合适,这三篇文章提到了可以进行的攻击类型有:
1. 可以对外网、内网、本地进行端口扫描,某些情况下端口的Banner会回显出来(比如3306的);
2. 攻击运行在内网或本地的有漏洞程序(比如溢出);
3. 可以对内网Web应用进行指纹识别,原理是通过请求默认的文件得到特定的指纹,这点和我2012年在kcon v1(知道创宇第一届的“知道Web安全论坛”)上分享的《JavaScript安全从浏览器到服务端》(http://vdisk.weibo.com/s/mernF)里提到的内网Web应用指纹识别思路类似,大家可以对照的看;
4. 攻击内网或外网有漏洞的Web应用,这点也在我的《JavaScript安全从浏览器到服务端》可以看到类似思路,不过我用的都是JavaScript:);
5. 使用file:///协议读取本地文件,类比下本地文件读取漏洞?;

大家可以根据上面这几点进行发散,SSRF很好理解。

最后摘录上篇文章(http://evilcos.me/?p=206)里的文字总结下SSRF攻击:
利用这个漏洞,可以从漏洞服务器发出伪造的请求到目标服务上,目标服务可以是内网的各类服务,可以使用不一样的协议,并根据回显来判断攻击是否成功(如果是盲打的话,就不用回显了:))。

by 知道创宇安全研究团队 余弦

6 comments

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据