Web渗透测试之SSRF攻击:初识SSRF

前言

  本篇将初步讲解什么是SSRF漏洞,SSRF漏洞产生的原因以及如何利用简单的SSRF漏洞进行攻击。

什么是SSRF漏洞

  SSRF全称为Server-side request forgery,中文名为服务端请求伪造。顾名思义SSRF攻击是从服务端入手,假借服务端之手发起伪造请求。那么问题来了,该服务器是向谁发起的请求呢?
  我们知道网络有外网内网之分的。所谓的外网就是公开的、大家都可以访问的网络部分,比如旅游景点的介绍、论坛的板块等。还有一部分网络出于保护隐私信息的目的是限制访问的,比如企业的内部网络、校园网等,这就是内网。
而有的内网不是完全孤立的,为了与外网建立联系,就通过内网中的一台服务器与外网相连接。而SSRF攻击要做的就是通过这台与外网连接的服务器向这台服务器本身或内网中的其它服务器发起请求。
  在了解完什么是SSRF后我们再来看看SSRF漏洞产生的原因。

SSRF漏洞产生的原因

  先前我们讲到内网是为了保护隐私信息而搭建的独立网络。在这一前提下,内网中的计算机A对内网中的计算机B是彼此隐式信任的。也就是说只要是从A发出的流量,无论是什么B都是接受的。有了这一基础,如果我们能够控制内网中的一台计算机/服务器,就能逐步控制整个内网。但内网是封闭的,因此内网为了与外网联系而对外网开放的那台服务器就是我们的入手点。
  而这台服务器必须具有的特点是它必须从其它服务器获取资源,比如图片、文本、音乐等。也就是说其URL中必须包含其它的URL。其格式大概为:

http://xxx/x?xx=http://yyy

  如果没有对后面这部分引用的URL做出限制,我们就可以通过将其恶意修改为内网的IP地址,以达到访问内网中不想让外网访问的资源的目的。以下是一些常见的内网IP段:
C类:192.168.0.0 - 192.168.255.255
B类:172.16.0.0 - 172.31.255.255
A类:10.0.0.0 - 10.255.255.255
  简而言之,如果URL中引用了其它的URL但是没有对引用的这部分URL做出限制,就会产生SSRF漏洞。

如何利用SSRF

  在我们可以对内网的服务器发起请求的情况下,还有一个问题需要我们解决:我们不知道内网中的哪些服务器提供了哪些服务。在手工条件下,我们可以逐个尝试内网IP段中的IP地址并加上端口号发起请求,再根据页面的返回情况加以判断(在有回显的情况下,非盲SSRF)。之后再根据判明的服务进行相应的针对。
接下来让我们来看个针对该服务器本身的SSRF漏洞利用。
以下是靶场首页:
靶场首页
在该靶场中商品提供库存查询功能:
库存查询
当我们查询库存时进行抓包:
抓包结果
  接着我们发现在stockAPI中含有其它URL,表明可能存在SSRF漏洞。于是尝试访问该台服务器下的admin目录:访问admin目录
成功访问admin目录:
访问成功
点击Delete执行删除操作:
错误示范
  这是一个错误示范,不要试图点击admin目录下的任何操作,因为本质上我们是通过这台服务器本身发送的请求,如果用我们的计算机发送请求操作只会被拒绝。
修改URL为:
正确操作
后再执行删除操作后删除成功:
删除成功
  我们再来看一个针对内网其它服务器的SSRF。
以下是靶场首页:
靶场首页
仍旧是具有库存查询功能:
查询库存
查询时进行抓包发现stockAPI依旧含有其它URL:
抓包结果
  这次尝试查找内网IP段为192.168.0.x其它提供有Web服务的服务器,也就是端口号为8080的服务器。虽然两百多个不是很多,但还是用burpsuite进行批量处理:
参数设置
批量扫描
点击开始攻击,经过漫长的等待后终于扫描结束了,发现一个目标:
发现目标
payload为120,表明其IP段为192.168.0.120
依旧是执行删除操作:
删除成功

总结

  SSRF产生的原因为未对引用的URL进行限制处理,这使得攻击者能够利用该服务器引用的URL指向内网中的其它服务器以访问原先被限制访问的资源。然后再以两个示例表明如何利用简单的SSRF漏洞访问该台服务器本身以及该服务器指向的内网中的限制访问资源,而在需要批量扫描IP段及其端口时,脚本的优越性是要远胜手工逐个尝试的。
  以上就是本篇的全部内容,我们下篇见。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值