批量挖漏洞竟如此简单,你上你也行
2021-10-27 10:40:18 Author: mp.weixin.qq.com(查看原文) 阅读量:242 收藏

好久不发文了,难道信安之路断了?哈哈,开玩笑,信安之路一直存在,只是在别的地方继续分享,公众号就耽搁了,后面还是会继续分享所学所感的,请大家放心。

这段时间一直在搞批量漏洞发现的事儿,之前也开了三期公益 SRC 实战训练营,积累了一些不错的内容,但是不宜大范围传播,所以有兴趣的可以加入信安之路(注册平台、加入星球)都可以查看该内容,三期的大纲如图:

在此期间,我们也成立了新的 SRC 小分队,在这里也收一拨人,如果你满足补天排名 Top 2000 都可以加入我们这个小分队,一起交流挖洞心得,学习挖洞技术,当然如果你是小分队的一员,加入信安之路的知识星球可以享受五折优惠。

接下来我们一起回顾一下批量挖洞的流程和涉及到的技术能力要求。

第一步:信息收集

在批量刷洞之前,你首先要确定目标范围,如果你是在做渗透测试工作,一定会先给你一个目标列表或者单个目标网站,然后作为起始点,进行扩散,然后进一步渗透,信息收集的结果决定了你的测试面有多大,批量漏洞发现是个概率事件,单个系统出现漏洞的可能性可能是百分之一,如果你发现了一千个系统,那么很大可能,你可以发现十个漏洞,所以信息收集是成功挖到漏洞的第一步重要操作。

这里主要涉及资产信息收集的技术,资产主要包括 IP、域名(主域名、子域名),这里推荐一个工具 subfinder,在有各大平台 API KEY 的前提下,不到三十秒即可收集一份比较全的子域名信息;另外一种方式是 DNS 枚举,可以自己实现,也可以使用开源的工具,这类工具非常多;如果你不想这么麻烦,那么可以尝试使用 oneforall,只不过需要花费的时间很多,如果是针对单个目标,没啥问题,如果是几十,上百,上千的目标,那么需要花费的时间就得以天,月来记了。

第二步:服务探测

有了大量域名之后,我们需要知道这些域名对应的系统开放了哪些服务(这里可以使用 masscan 和 nmap 的结合来提升速度和准确度)比如数据库服务、HTTP 服务等,针对非 HTTP 服务,可以进行一些暴力枚举的测试,发现一些弱口令的问题,而 HTTP 服务是漏洞的重灾区,也是后面最重要的漏洞发现途径。弱口令扫描可以使用 goby,提供的暴力枚举的模块,如图:

接下来是针对 HTTP 服务的信息收集,主要收集 header 信息、body 内容,然后提取 title 字段和网页链接,这里的技术实现可以自己编写脚本,也可以使用开源的工具,我们训练营的这类实现都是以脚本的形式提供,单一功能,单一脚本实现,速度比较快,操作难度比较低,最终会得到大量网站的 header 信息,title 内容、链接列表和原始的 body 内容,这些信息都会在后面的漏洞发现时使用。

第三步:漏洞探测

1、针对带参数的链接进行漏洞测试

传统的扫描器,核心是爬虫加漏洞扫描的模式,我们通过之前的信息收集,收集到一个链接的列表,然后将列表中带参数的链接提取出来(带有 ?好和 = 号的链接),然后使用 xray 进行扫描,命令:

xray.exe webscan --uf linklist.txt --ho xray-vul.html

使用 xray 之前需要先修改配置文件,针对这类链接的测试,主要检测的漏洞包括:sql 注入、xxs、ssrf 等,根据自己的需求来配置。

2、针对通用组件和 CMS 进行 POC 检测

互联网上的网站,很大一部分都使用了通用的组件和开源或者商业的 CMS,这类系统,通过传统的漏洞扫描模式无法直接探测出漏洞,但是历史上有很多直接提供的漏洞测试方法,这些都被沉淀为 POC,可以直接使用,使用之前,首先要能识别出那些系统使用了哪个框架或者组件,这是 POC 检测的第一步,否则,你会花大量时间在无意义的漏洞探测中。

比如 WordPress,它是一个知名的开源博客系统,有很多人在为它开发插件,程序本身,目前漏洞比较少,而插件漏洞会比较多,所以首先要识别出那些网站是基于 WordPress 的,然后它使用了哪些插件,然后根据插件去寻找历史漏洞和 POC 进行测试,这个过程走起来比较麻烦,你也可以直接识别出 WordPress 系统,然后使用跟 WordPress 相关的漏洞 POC 进行检测,一旦遇到合适的,漏洞就发现了。

POC 及 POC 验证工具,推荐使用 xray 和 nuclei 两款软件,使用起来很不错的,最近我在搞一百个通用组件的漏洞实战计划,目前更新到 14 个,目标 100 个:

通过这种方式还是发现了不少漏洞,如图:

当你信息收集的足够全面,你也可以发现很多漏洞,这都不是事儿。

3、针对非通用系统进行漏洞探测

搞完 Nday 之后,很多原创的系统怎么去找漏洞?手工一个一个去做是可以的,但是消耗的时间会非常多,比如常规的 sql 注入、xss 等漏洞完全可以自动化解决,那么可以使用 rad + xray,或者 crawlergo + xray 的方式来实现自动化触发漏洞扫描,实现批量自动化挖洞,啥也不用管,让他自己去发现就可以了,剩下的就是早上醒来收漏洞即可。

4、手工测试工具无法自动化的漏洞

自动化能解决一切吗?当然不可以,首先自动化,无法实现每个系统登录之后的漏洞测试,也无法实现针对业务逻辑漏洞的检测,这些问题还是需要人工参与才可以,那么可以实现人工结合工具,实现半自动化挖洞,人去发现工具发现不了的问题,比如逻辑问题,而工具去发现他能发现的问题,比如 sql 注入、xss、ssrf 等。涉及的技术就是 burp + xray 的联动,然后结合你自己的逻辑漏洞的挖掘方法。

总结

以上就是整个漏洞挖掘的过程,如果你感觉实现起来比较难,想要看一下成熟的经验和操作指南,欢迎加入信安之路,注册成长平台和加入知识星球都可以成为信安之路的一员,如果你已经是挖洞高手,且在补天有一定名次,也欢迎加入信安之路的 SRC 小分队,成为我们中的一员,一起交流学习。


文章来源: http://mp.weixin.qq.com/s?__biz=MzI5MDQ2NjExOQ==&mid=2247495865&idx=1&sn=10f22eacbba6ffc2d89d6616db883497&chksm=ec1dc091db6a4987495da93435de43f76aff28e9dcc46ca61c2894a91020c0b35ee60be73ec2#rd
如有侵权请联系:admin#unsafe.sh