信息收集

在SRC漏洞挖掘过程中,保证在最短时间内提交”有效”漏洞,自我总结漏洞数量主要来源于三个方面:

一、资产收集;

二、学会使用自动化工具;

三、通过数据包仔细审查业务逻辑。

资产收集作为漏洞挖掘第一步,资产收集的广度,会直接影响漏洞的数量,所以资产收集尤为重要。

这里简单介绍一下资产收集的有关小工具以及方法。


1.1子域名收集

子域名收集推荐几个比较好用的工具:

一、Oneforall

项目链接:https://github.com/shmilylty/OneForAll,Oneforall是一款强大的子域名收集工具,适用于SRC资产收集。

使用方法:python3 oneforall.py --target baidu.com run

在这里插入图片描述

二、在线子域名收集工具

地址:https://phpinfo.me/domain

在线子域名收集能够帮助我们在漏洞挖掘过程中快速获取第一手资产信息,甚至可能带来意外收获。
在这里插入图片描述

1.2.搜索引擎

在渗透测试过程中,优秀的搜索引擎能快速获取高质量资产信息。这里推荐两款广受好评且实用性强的资产搜索引擎。

一、Fofa

地址:https://fofa.so/

Fofa支持类似谷歌黑客语法的搜索语法,具体检索语句的使用方法可在网页内查询,此处不再赘述。

在这里插入图片描述

二、谷歌黑客语法

Google作为全球领先的搜索引擎,其强大的检索功能不仅服务于普通用户,也常被黑客用作信息收集工具。通过构造特定的搜索语法,黑客能够利用Google快速定位互联网上的敏感信息。

以下简要介绍几种常用的Google搜索语法(更详细的使用方法建议自行查阅):

  1. intitle语法:用于搜索网页标题包含特定关键词的页面。示例:"intitle:上科互联"可查找标题中含有"上科互联"的网页。

  2. inurl语法:用于搜索URL地址包含特定字符串的页面。示例:"inurl:/admin_login"可查找含有管理员登录页面的URL。

  3. intext语法:用于搜索网页正文包含指定内容的页面。示例:"intext:上科互联"功能类似于网站内的内容搜索功能。
    Google作为全球领先的搜索引擎,其强大的检索功能不仅服务于普通用户,也常被黑客用作信息收集工具。通过构造特定的搜索语法,黑客能够利用Google快速定位互联网上的敏感信息。

以下简要介绍几种常用的Google搜索语法(更详细的使用方法建议自行查阅):

  1. intitle语法:用于搜索网页标题包含特定关键词的页面。示例:"intitle:上科互联"可查找标题中含有"上科互联"的网页。

  2. inurl语法:用于搜索URL地址包含特定字符串的页面。示例:"inurl:/admin_login"可查找含有管理员登录页面的URL。

  3. intext语法:用于搜索网页正文包含指定内容的页面。示例:"intext:上科互联"功能类似于网站内的内容搜索功能。优化后的内容:

  4. Filetype:按文件类型搜索。输入"filetype:PDF"可专门查找PDF格式的文件。

  5. Site:搜索特定网站相关内容。输入"Site:www.sunghost.cn"会显示该网站的所有关联URL。

1.3.端口扫描

端口扫描是信息收集的关键环节。在实际漏洞挖掘过程中,我们经常发现同一IP地址开放不同端口,对应着不同的WEB服务。值得注意的是,许多漏洞往往隐藏在这些非常规端口的服务中。

推荐使用功能强大的Nmap工具进行端口扫描。它不仅支持基础的端口扫描和资产存活探测,还能通过内置的漏洞探测脚本进行安全检测。

Nmap

下载地址:https://nmap.org/,这里推荐使用图形化界面的,也可以使用现在网上的一些端口扫描工具如小米范端口扫描工具等等。


1.4.指纹识别

通过指纹识别可以快速了解搭建网站使用的什么内容管理系统,以及网站使用的框架信息(CMS:织梦、帝国、XXXOA等等;网站框架:Nginx、Spring boot、Apache、IIS等等)。

这里推荐两款比较简单方便的指纹识别工具。

一、潮汐指纹库

潮汐指纹识别库是由,tide安全团队开发的一款开源的指纹识别库。

地址:http://finger.tidesec.net/

在这里插入图片描述

二、火狐浏览器自带插件Wappalyzer

下载地址:https://addons.mozilla.org/zh-CN/firefox/search/?q=wappalyzer

在这里插入图片描述


1.5.目录扫描

通过扫描网站URL,能够有效收集各类资产信息,为后续漏洞挖掘提供关键线索。这些信息包括但不限于:网站源码文件、安装页面、后台管理界面、API接口文档(如Swagger UI)以及存在未授权访问风险的页面等。
这里推荐一款常用的目录扫描工具。

Dirsearch

项目地址:https://github.com/maurosoria/dirsearch

在这里插入图片描述

使用方法:python3 dirsearch.py -u http://www.baidu.com -t 30线程可以自行定义,也可以使用”-h”,查看使用方法。

在这里插入图片描述

2 漏洞探测&漏洞验证

2.1.漏洞扫描

在漏洞探测方面可以使用扫描器(但是得根据客户需求),一般主流的漏洞扫描器如:Goby、Xray、Awvs、Nessus,这里可以使用Goby同时做信息收集和漏洞探测(信息收集功能会比漏洞探测功能效果好)。

2.2.Burp

Burp Suite是漏洞挖掘领域最核心的工具之一,因其开源特性和强大功能,在漏洞验证和挖掘过程中发挥着不可替代的作用。以下分享两个在实战中发现的典型漏洞案例:

  1. 越权漏洞分析
    越权漏洞通常分为垂直越权和水平越权两类。通过修改数据包中的关键参数(如uid、id等)即可实现越权访问。曾发现一个有趣的垂直越权案例:在低权限登录状态下,仅需修改数据包中的路径参数就能访问高权限内容。

  2. 逻辑漏洞挖掘技巧
    逻辑漏洞的核心在于分析业务逻辑是否存在可绕过点。以某银行系统为例,通过修改支付方式参数,成功绕过了指纹支付和面部识别验证机制。

这里简单介绍几个比较好用的Burp插件:Fakeip(可以在请求头中加入XFF头)、chunked-coding-converter-master(分片上传可以绕过部分waf如安全狗等等)许多漏洞检测插件。

2.3.其它漏洞探测工具

一、Sqlmap

当手工测试发现某功能点存在SQL注入时可以直接采用sqlmap工具进行快速注入查看数据库表结构。

常用的sqlmap参数:–is-dba、–dbs、–batch、-v 3、–level 5、–temper “绕过waf模块”、–threads=10、–current-user、–dbms=“MySQL”、-r

sqlmap中常用的绕过waf的temper脚本:

apostrophemask.py

用utf8代替引号

equaltolike.py

like代替等号

space2dash.py

绕过过滤‘=’ 替换空格字符(”),(’ – ‘)后跟一个破折号注释,一个随机字符串和一个新行(’ n’)

greatest.py

绕过过滤 >

space2hash.py

空格替换为#号 随机字符串以及换行符

apostrophenulencode.py

绕过过滤双引号,替换字符和双引号。

halfversionedmorekeywords.py

当数据库为mysql时绕过防火墙,每个关键字之前添加mysql版本评论

space2mssqlblank.py

空格替换为其它空符号

base64encode.py

用base64编码替换

modsecurityversioned.py

过滤空格,包含完整的查询版本注释

space2mysqlblank.py

空格替换其它空白符号(mysql)

between.py

用between替换大于号(>)

space2mysqldash.py

替换空格字符(’ ‘)(’ -‘)后跟一个破折号注释一个新行(’ n’)

space2plus.py

用+替换空格

二、Msf

MSF为kali自带的渗透测试工具,功能十分强大,该工具可以用作漏洞验证以及漏洞探测工具,也可以用于后渗透,这里简单说一下MSF可以作为漏洞探测以及漏洞验证非常使用的工具之一如(各种未授权访问(Rsync)、弱口令爆破、Oracle Tns远程监听、MS17-010、CVE-2019-0708等等)

三、开源漏洞探测工具

Fastjson漏洞探测可以使用网上公开的Poc也可以使用Burp插件进行探测。

Shiro反序列化漏洞可以使用github上开源的飞鸿shiro漏洞探测工具。

ThinkPhp可以使用雷石实验室研发的自动检测工具,针对ThinkPhp5.0版本的RCE漏洞可以使用github上的一些开源工具。

这里开源的漏洞探测工具非常多,建议通过关注各个安全团队的微信公众号,完善工具。

总结:

漏洞挖掘方法非常多样,发现漏洞可能是扫描器直接出的漏洞,也有可能是一个不起眼的信息泄露引起的高危漏洞(如swagger UI页面,可以导致调试API接口引发更大的安全漏洞),但是总结两个点:

一、在漏洞挖掘过程中细心查看每一个功能点以及数据包逻辑才是王道。

二、学会利用自动化工具,最后信息收集才是最重要的老铁。

===

3 实践

3.1.之前漏洞挖掘简述

刚开始挖掘漏洞确实可以从公益SRC或者EDU下手,可以先锻炼一下挖洞速度,已经挖洞思路,这里简单介绍一下之前的挖过的公益SRC和一些厂商的专属漏洞。

常规端口漏洞(21、22、389、879、2181、2049、3306、3368、6379、8XXX、9100、9200)

未授权访问&弱口令

在这里插入图片描述

在SRC挖掘过程中往往最先考虑的就是端口漏洞,因为未授权访问、弱口令等漏洞危害性比较大,通常定级也是中高危的样子,而且,挖掘也是比较方便快捷。

某厂商存在大量弱口令:

在这里插入图片描述

SQL注入类:

SQL注入类漏洞在漏洞挖掘过程中也是很常见的,可以用自己的py脚本结合sqlmap批量跑,但是在综测项目中这种办法并不可行,因为不够快,捞不到钱。还是尝试手工测试比较靠谱。

在这里插入图片描述

之前遇到一个比较有意思的sql注入,该注入的回显信息是根据响应体的的字节长度来判断的,返回正确跟返回错误的值固定且不一样。

命令执行类:

通过指纹识别技术可以检测目标网站的CMS类型及其使用的框架和组件。在获取这些信息后,可以利用现有的公开POC来验证是否存在远程代码执行漏洞。

这里记一次之前遇到的一个ThinkPhp5.X框架命令执行漏洞,好不容易找到一个框架漏洞可惜是公益的SRC没有钱,留下了不争气的眼泪。

在这里插入图片描述

之前在安恒的雷神众测注册过账号,但是漏洞提交量有限,可以简单看一下,其实专属SRC提交漏洞赚取赏金,其实就是,资产收集,做的好,还有就是挖掘漏洞的时候细心加上耐心,最最重要的一点还是漏洞提交速度,做全世界最快的男人。

在这里插入图片描述

还有就是逻辑漏洞,目前逻辑漏洞也是赏金占比比较大的一类漏洞,这里记一次之前某银行的逻辑漏洞挖掘过程,结局比较拉跨,因为当时只是看到了后台的一些数据以及参数,以为跟后台数据有交互就可以定个中危,没想到绕过的仅仅只是前端的校验。

在这里插入图片描述

这里直接填写数据然后抓包修改两次返回包,可以绕过前端登录验证直接进入后台。

在这里插入图片描述

在这里插入图片描述

只是当时没有测试里面的参数,修改密码什么的也没有测试,看来还是得细心才行要,银行的漏洞,低危和中危往往是两个概念,来自金钱的诱惑。

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐