转载:聊一聊ssrf漏洞的挖掘思路与技巧

这次,小编来转载一篇关于网络安全的文章干货:”聊一聊ssrf漏洞的挖掘思路与技巧“。

关于网络安全
关于网络安全

所以此文章的内容除了干货还是干货,如果你看完了还是不会挖ssrf,那可以来找本文作者

前言 什么是ssrf

SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是从外网无法访问的内部系统。SSRF 形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。

通俗的说,比如这样一个url:,如果我们将换为与该服务器相连的内网服务器地址会产生什么效果呢?比如127.0.0.1、10.0.0.1、192.168.1.1等等,如果存在该内网地址就会返回1xx 2xx 之类的状态码,不存在就会返回其他的状态码,所以:如果应用程序对用户提供的URL和远端服务器返回的信息没有进行合适的验证和过滤,就可能存在这种服务端请求伪造的缺陷。

注:说到这里,不用看客们说,我自己先提两个问题,

1:为什么要请求127.0.0.1、10.0.0.1、192.168.1.1呢?有什么区别呢

答:127.0.0.1只是代表你的本机地址,如果该网站只有一个服务器的情况下,是可以访问127.0.0.1的来判断的,但要明确一点,127.0.0.1其实并不是内网地址,内网地址是有严格的地址段的,这是ipv4地址协议中预留的,分别是10.0.0.0–10.255.255.255、172.16.0.0–172.31.255.255 、192.168.0.0–192.168.255.255。

2:如果请求地址会返回状态码,那请求地址+端口会不会返回状态码呢?

答:提出这个问题的同学应该是相当clever的,答案是肯定的,当然会返回状态码。只是探测内网地址的话属实不够看 的,所以如果一个点存在ssrf,那势必要尝试一下能不能探测内网端口,比如,假设10.0.0.1这个地址存在,那我们可以尝试请求10.0.0.1:21、10.0.0.1:3306、10.0.0.1:6379等内网的常用端口,如果探测结果有收获的话,那就可以为其他工作节省很多力气了。

0X01 基础的ssrf漏洞利用

随便找了个输入点,大家就假装这个图中的点就是漏洞点吧,因为真正的漏洞点不好放出来,也不好打码,理解万岁。

关于网络安全
关于网络安全

不过可能有有人问了,那我怎么知道这个点是否是漏洞点呢,其实这个东西不好回答,因为没有成文的规定,经验成分居多吧,如果看到让用户输入url,导入外部链接的这些点,就可以去尝试一下,.

好了,言归正传,如果这是一个漏洞点,那我们怎么用呢,最简单的方法,http://ceye.io。CEYE是一个用来检测带外流量的监控平台,如DNS查询和HTTP请求。一些漏洞类型没有直接表明攻击是成功的。就如同此处的ssrf,,Payload触发了却不在前端页面显示。这时候使用CEYE平台,通过使用诸如DNS和HTTP之类的带外信道,便可以得到回显信息。用法也很简单,登录 http://CEYE.IO,在用户详情页可以看到自己的域名标识符 identifier,对于每个用户,都有唯一的域名标识符http://abcdef.ceye.io 。所有来自于 http://abcdef.ceye.io 或 .http://abcdef.ceye.io/ 的 DNS查询和HTTP请求都会被记录。通过查看这些记录信息,就可以判断漏洞详情.

比如我在此输入我的域名标识符,如图

关于网络安全
关于网络安全

然后我就可以去http://ceye.io观察是否有请求记录,结果得到记录

关于网络安全
关于网络安全

当然我们也可以通过抓包,在包里修改url的信息构造不同的请求然后观察返回的状态码来探测信息

关于网络安全
关于网络安全

所以通过上述两种方法, 那我就可以确定这个地方确实是有ssrf漏洞的。不过仅仅到这是不够的,这样的操作提到补天或者盒子都是不收的,除非有进一步的操作证明危害,所以接下来会演示探测端口。

0X02 简单的ssrf绕过

上面说的漏洞点本身就是一个让用户输入链接的地方,那自然就不必绕过,但是如果漏洞点是一个加载图片的地方呢,想必大家都见过社区或者论坛有这样一个模块点,就是可以让用户导入外部的图片链接进行评论或者其他,比如下图,

关于网络安全
关于网络安全

那么这种地方,也是可能存在ssrf的,不过当我们输入http://ceye.io却发现并没有回显请求,这是因为这种地方一般会对后缀做一个检测,如果不是jpg或者其他图片后缀的话并不会通过,不过好在http://ceye.io是很强大的,我们可以随便构造,http://abcdef.ceye.io/ichunqiu.jpg, 对其进行输入,再去观察有无回显,结果有了,

关于网络安全
关于网络安全

有其他限制的话都是一个道理,也可以在burp里截包改包达到此效果。

0X03 挖洞时遇到的一个挺有意思的ssrf

有一天笔者在挖洞的时候遇到一个站,就假设是http://www.xxx.com吧, 发现是一个开源的系统,于是就突发出不想黑盒的想法,想看看审计的能力学的怎么样了,就在网上下载这个开源的系统,一点一点的对其审计,在某个文件里发现这么一个链接:http://127.0.0.1/abc.php?url=http://www.baidu.com, 这可不是跳转哦,结合上下代码,发现此链接好像是服务器发起请求的操作,因为127.0.0.1是本机地址,所以笔者尝试构造http://www.xxx.com/abc.php?url=http://www.baidu.com, 发现也可以成功访问,所以隐约觉得这是一个操作的地方,由于那个开源系统找不到了,所以没法贴图了,只能一点一点说了,

总之笔者通过分析上下的代码,发现这个链接的构成是由赋予abc.php一个外部的url参数,在没有任何过滤,任何防护的情况下读取这个外部url并发起请求,于是就可以尝试是否可以读取内网地址呢?于是笔者构造http://www.xxx.com/abc.php?url=http://127.0.0.1:80, 为什么第一次就要访问80端口呢,因为该站是可以访问的,所以80端口必开放,第一次探测80也是想看一看正确的返回与错误的返回的区别,访问完http://www.xxx.com/abc.php?url=http://127.0.0.1:80后, 得到正确的返回结果,就可以尝试继续访问90端口,100端口,等等。

不过笔者继续想到,这个地方既然存在ssrf,且url参数没有任何防护与过滤,那可不可以尝试读取文件呢,

说来就来,继续构造http://www.xxx.com/abc.php?url=file:///C:/Windows/win.ini。 发现读取成功,所以又成功探测到一枚文件读取。

0X04压轴–weblogic的ssrf漏洞

提起weblogic,相信很多带哥都很熟悉,所以关于weblogic的其他漏洞笔者就不献丑了,就只在这个地方聊一下weblogic的ssrf漏洞。

WebLogic的SSRF漏洞算是一个比较知名的SSRF漏洞,具体原理可以自行谷歌。本篇主要是通过复现该漏洞来加深对SSRF漏洞的理解。

weblogic的ssrf漏洞的存在页面笔者就不说了,百度都可以找到的,页面的样子是这个样子的

关于网络安全
关于网络安全

当初在学习这块的时候,傻乎乎的以为只要存在这个页面就必有ssrf,结果当然是否定的,在借鉴了猪猪侠大佬的ppt之后,发现一共有如图四种回显状态

关于网络安全
关于网络安全

那么可以通过构造http://xxx.com/uddiexplorer/SearchPublicRegistries.jsp?operator=http://(要探测的内网地址)&rdoSearch=name&txtSearchname=sdf&txtSearchkey=&txtSearchfor=&selfor=Business+location&btnSubmit=Search

对其进行探测,观察其回显状态,判断是否存在目标网段,这个地方最主要的就是operator这个参数,主要思路就是通过修改这个参数,来探测内网地址和内网端口,不过问题来了,上面刚才说内网地址那么多,我们要怎么才能知道呢,且慢,在weblogicssrf的漏洞页面点击这里

关于网络安全
关于网络安全

就会来到这里,有时候由于配置不当的关系,这个地方会直接给出内网地址的网段

关于网络安全
关于网络安全

有网段了,就可以一点一点的探测了,探测内网的telnet,ssh,redis,以及各个数据库,为以后的内网漫游做好信息收集。还有,在Weblogic的SSRF中,有一个比较大的特点,就是虽然它是一个“GET”请求,但是我们可以通过传入%0a%0d来注入换行符,而某些服务(如redis)是通过换行符来分隔每条命令,也就说我们可以通过该SSRF攻击内网中的redis服务器。手动反弹shell,就是常规的发送redis命令,然后把弹shell脚本写入crontab中,最后用get发送命令,不过别忘了,get发送命令的时候要进行url编码,最后在服务器上进行监听就OK了。

当然,作为一名脚本小子,手动探测以及反弹shell太累了,好在网上的探测脚本很多,不过试了很多,感觉还是下面这个很顺手,在此贴上一个大牛的脚本,可以很方便的探测ssrf的网段以及每个网段的端口,甚至还有反弹shell的功能,地址: https://github.com/NoneNotNull/SSRFX

0X05结尾

ssrf这个漏洞虽然在各大src上都被评为低危,但是这是因为它本身的危害有限,不可否认,若是与其他漏洞,其他思路结合起来会对你的渗透过程方便很多,它的强大之处是在于探测到一些信息之后从而进一步的利用.,比如获取内网的开放端口信息,主机的信息收集和服务banner信息,攻击内网和本地的应用程序及服务,还有就是利用file协议读取本地文件,就好像上面的那个文件读取漏洞。

 

本文来自简书https://www.jianshu.com/p/b5691b12cca4 ,经授权后发布,本文观点不代表小嵘SEO立场,转载请联系原作者。

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月10日 13:13
下一篇 2019年6月12日 14:32

相关推荐

  • 推荐一款免费的网站后门在线查杀工具

    网络安全,对于各位站长来说,现在是至关重要。网站被黑,网站被挂后门,可能会造成各种的损失。做好网络安全防护对于SEO优化也是至关重要的一步,保护好自己的网站,也能保护好自己网站的排名。这次,小编来推荐一款免费的网站后门在线查杀工具,希望对大家有帮助。 最近网站被挂马劫持风险非常之高,负责的几个网站都被植入后门和挂马,网站流量深受其害,今天为大家介绍一款在线木…

    2019年12月15日
    01.3K
  • 关于Vbs脚本病毒专杀工具下载和用法

    BS脚本病毒是使用VBScript编写,以宏病毒和新欢乐时光病毒为典型代表的VBS脚本病毒十分的猖獗,很重要的一个原因就是其编写简单。VBS脚本病毒具有如下几个特点。 ①编写简单。一个以前对病毒一无所知的病者爱好者,可以在很短时间内编写出一个新型病毒!②破坏力大。其破坏力不仅表现在对用户系统文件及性能的破坏,它还可以使邮件服务器崩溃,使网络发生严重堵塞!③感…

    2019年3月14日
    01.3K
  • 什么是DNS投毒与DNS劫持?

    什么是DNS投毒与DNS劫持?今天小编就来给大家分享一下。DNS投毒太可怕了,中了污染基本域名就没救了….. DNS污染,又称为域名服务器缓存污染(DNS cache pollution)或者域名服务器快照侵害(DNS cache poisoning)。是指一些刻意制造或无意中制造出来的域名服务器分组,把域名指往不正确的IP地址。一般来说,外间在…

    2019年9月27日
    01.6K
  • 转载:实战案例:精准入侵号码交易网与黑客远程定位

    这是第二篇关于网站安全与黑客攻防的案例教程,本文系转载内容介绍到的工具和思路仅供学习参考,做为站长SEO从业人员要提升警惕,不要成为别人攻击的对象。 切记:害人之心不可有,防人之心不可无。 一,谨防网络骗子 有位读者粉丝打算买6位数的QQ号,发来个网址,问是不是骗子。 顺手打开网址~网页如下图。 哎,如今的骗子真是越来越不长进了。 哥哥之前写过多篇行骗大术,…

    2019年3月13日 网络安全
    1889
  • 关于如何修改wordpress后台登录入口

    这次,小编来给大家说说,关于如何修改wordpress后台登录入口。相信很多小伙伴也喜欢用wordpress来建站,简单便利而且优化效果好。虽然不是静态网站,其实伪静态网站排名也不差哦。 需要修改根目录里的wp-login.php和wp-includes文件夹下的general-template.php文件: 1. 首先在网站根目录下找到wp-login.p…

    2020年5月14日
    01.3K
  • DNS污染怎么解决?DNS污染解决尝试方法

    小编相信,有很大一部分的朋友没有听说过dns污染这个词语,其实呢,dns污染就是dns劫持的一种,那么dns污染怎么办呢?下面就来跟您说说简单的dns污染解决方法,希望对大家有帮助。 什么是DNS污染? 按照百度百科的解释就是:某些网络运营商为了某些目的,对DNS进行了某些操作,导致使用ISP的正常上网设置无法通过域名取得正确的IP地址。某些国家或地区为出于…

    2019年9月28日
    01.2K
  • 如果网站被黑被劫持了怎么办?

    网站遇到被黑,被恶意镜像怎么办?这是站长们最头疼的问题,只是有网站都有遇到过。今天无忧哥具体来讲讲几个安全防护和解决的办法,以供参考。 问:我的网站被同行恶意的镜像网站,被降权了怎么办? 网站被黑被恶意镜像,被植入垃圾代码,现象屡见不鲜。站长管理员应该及时发现分析网站数据和代码。不要等着网站出现了危机,再去进行恢复和处理。带来的后果严重影响排名的周期和SEO…

    2019年3月13日
    01.1K
  • 匿名线上聊天室,一次性匿名在线聊天工具

    科技越来越发达了,但是科技进步的同时,大家有注意到私隐的问题嘛?美国多次曝光社交媒体公司频繁泄露用户的私隐,不仅如此,就连手机制造商也有泄露用户私隐的情况出现。那我们平时在互联网聊天的时候有什么需要注意的呢?如何保护我们的个人私隐不被泄露?如何从聊天软件入手去保护我们的私隐?这次小编来介绍一下比较安全的聊天工具吧。   相信大家会遇到这种情况:在某…

    2019年8月17日 网络安全
    03.6K
  • 关于wordpress博客网站的杀毒教程

    这次,小编准备给大家介绍的是“关于wordpress博客网站的杀毒教程”。 实际上,WordPress建站非常简单,选择一个好的主题,多使用,多磨合,多练多时间,你就会了,你就熟悉了。 然而,关于网站中毒的话,虽然不是每个人都能遇到,遇到就非常麻烦了。 下面,是1个网站中了病毒的案例: 一个一直跟踪的网站流量被腰斩,起初以为这个是这个网站垃圾外链,被谷歌惩罚…

    2019年8月12日 网络安全
    0834
  • 推荐五款WordPress网站的web安全防护插件

    在人们的意识里,常常会有一个普遍的误区,大多数人可能会认为小型网站不会受到网络犯罪的威胁。事实上,现在网络犯罪比以往任何时候都要多。根据不完全数据统计调查显示,2018年,企业主因网络犯罪损失了3900万美元,这比2017年增长了161%。 如果你经营一家小型电子商务商店,你的WordPress网站很可能会成为黑客的攻击对象,其带来的结果可能是毁灭性的。20…

    2019年9月1日
    0990
  • 转载:实战黑客入侵网站教程轻松拿下1000个网站

    我们生活在互联网时代,重视个人信息及网站数据安全尤为重要,但又有多少互联网从业者真正做到了保护数据及隐私的安全呢。开通网站安全版块为站长们分享网站安全与黑客入侵网站的相关案例,目的提醒站长们注重自己的网站帐号数据和资料安全,尽可能的把网站被黑的风险降到最低。 一,胜率 初恋结婚的概率为1%,所谓天长地久,不过是一厢情愿。 初次创业的成功率在5%左右,所谓雄心…

    2019年3月13日 网络安全
    11.4K
  • 关于WordPress任意文件删除漏洞安全指南

    近日,阿里云云盾应急响应中心和腾讯云安全中心监测到知名开源博客软件和内容管理系统 WordPress 被爆存在任意文件删除漏洞,攻击者可利用该漏洞进行任意文件删除攻击。 恶意攻击者可以利用该漏洞删除WordPress建站配置文件wp-config.php,从而导致界面进入网站安装页面。漏洞原因为WordPress程序 unlink() 函数在处理的用户输入传…

    2019年3月14日
    0986