黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

今天给大家分享的是关于ssrf这个漏洞的挖掘思路和分析

概念:SSRF(Server-Side Request Forgery),服务器端请求伪造,利用漏洞伪造服务器端发起请求,从而突破客户端获取不到数据限制

这里的Server-side-request-forgery不知道同学们有没有发现他和我们的csrf Cross-site request forgery 很像,其实啊csrf针对的是客户端,而我们的ssrf针对的是服务端

比如我们发现了某网站存在ssrf我们可以去让该网站访问本地的127.0.0.1还可以去进行探测内网等操作,所以ssrf的危害还是很大的

口说无凭,我们启动我们的ssrf靶机

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

这个就是我们的ssrf靶机环境了,首先我们可以尝试输入一些东西在url内

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

这里输入123456之后报错了,我们发现他有一个file-get-contents函数

这是就要给大家引入这个函数的用法了

该函数功能有两个可以是post或者get,我们这里贴出get请求的代码

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

如上是演示代码

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

如上是ssrf的靶场的代码

我们发现了这个file_get_contents函数我们只需吧url作为参数传进去就可以了

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

成功加载了百度的页面我们这是就要理解一下他的原理了

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

可能图不太好看但是理论没问题

简单的理论过后我们走入最简单的一个ssrf漏洞

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

这就是我的ip 111开头的

我们打开某翻译平台然后粘贴url

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

成功获取了该翻译平台的ip

这里利用的是平台的网页翻译功能,能够辅助用户去翻译网页的内容,当服务器去访问时也就产生了ssrf漏洞

,那么我们如何挖掘ssrf漏洞呢?

1. 漏洞扫描器的发现

这里我们推荐burpsuite_pro的scnner模块

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

图为burpsuite_pro支持的漏洞,这里只截图了一小部分,后面还有很多很多,而且可扩展

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

我们把正常的请求包直接进行active scan 这样就可以去发现ssrf漏洞了

这里他扫出来的时外部服务交互,其实也就是ssrf漏洞

2. 手工发现很多地方的url可能时被base64位加密过的这个需要大家自己去发现

然后就是常出现漏洞的位置,比如我们提到的翻译处,还有图片的引用,以及其他的地方可能导致服务端去请求我们可控url的都可以作为我们的ssrf漏洞挖掘点

这里我们有些事无回显的那么我们怎么能去挖掘ssrf呢

这里我们就要介绍一款工具netcat,这款工具在反弹shell的时候我相信大家都不陌生吧,我们只需要在服务器上开启我们的netcat工具

执行命令为"nc -l -p 1234"这个时候我们用ssrf漏洞去尝试访问,这样我们通过nc来验证我们的ssrf漏洞了

这里我们的nc在监听1234端口,然后我们去利用ssrf漏洞去访问,

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

黑客进阶——服务端请求伪造漏洞的挖掘思路和分析

最终成功验证了ssrf漏洞,大家在验证的时候公网中也是同样的方法

在这里我们顺便介绍一下nc吧

我们用到了 –l 和 -p 这样就能监听连接我们服务器1234端口了

总结

关于ssrf漏洞我个人认为危害比较大,因为可以利用的姿势太多太多,也就导致了危害的增大,希望大家能够早日挖到ssrf漏洞哦!


分享到:


相關文章: