位置:首页 > 培训课程

网络安全SRC漏洞挖掘经验总结V1.0

2021-07-29 10:25:55 来源: freebuf

0x01 信息收集

1、Google Hack实用语法

迅速查找信息泄露、管理后台暴露等漏洞语法,例如:

filetype:txt 登录
filetype:xls 登录
filetype:doc 登录
intitle:后台管理
intitle:login
intitle:后台管理  inurl:admin
intitle:index of /

查找指定网站,再加上site:http://example.com,例如:

site:example.com filetype:txt 登录
site:example.com intitle:后台管理
site:example.com admin
site:example.com login
site:example.com system
site:example.com 管理
site:example.com 登录
site:example.com 内部
site:example.com 系统

关键词可以根据实际情况进行调整,推荐Google、Bing,搜索内容如果被删除,网页快照一般仍会有记录。

v2-9fbed3bcdfa42a7e0774b90fb683ab3b_1440w.jpg

2、Shodan、fofa网络资产搜索引擎

Shodan、fofa、zoomeye、360quake等网络资产搜索引擎可以用来搜索网络空间中在线设备,功能十分强大,相当于网络安全界的google:

v2-0ed8683346174525f4463a7947d09f78_1440w.jpg

尤其是现在支持icon图标、logo搜索,那是方便的一比

比如对某IP进行信息检索,点击view raw data:

v2-ba8ef1cde72397650028b111cc032958_1440w.jpg

找到data.0.http.favicon.data字段:

v2-4482cd574ca23f24c3178a3e40656475_1440w.png

搜索相应的值即可根据企业logo查询资产:

http.favicon.hash:-1507567067

推荐安装shodan chrome 插件,方便进行查看和使用:

https://chrome.google.com/webstore/detail/shodan/jjalcfnidlmpjhdfepjhjbhnhkbgleap

v2-795656c9a90c052999e4c55ffdc22270_1440w.jpg

fofa是国内的一款网络空间资产搜索引擎,与shodan类似,常见搜索语法:

title="abc" 从标题中搜索abc。例:标题中有北京的网站
header="abc" 从http头中搜索abc。例:jboss服务器
body="abc" 从html正文中搜索abc。例:正文包含Hacked by
domain="qq.com" 搜索根域名带有qq.com的网站。例: 根域名是qq.com的网站
host=".gov.cn" 从url中搜索.gov.cn,注意搜索要用host作为名称。例: 政府网站, 教育网站
port="443" 查找对应443端口的资产。例: 查找对应443端口的资产
...

实用查询语句:

body="关键词1" && country=CN&&title="关键词2"

可以快速定位国内想要搜索的网站信息。

3、子域名收集

推荐几个好用的工具:

JSFinder(https://github.com/Threezh1/JSFinder)

v2-0ce32295d34176b5e94fd1b5b28edfe1_1440w.jpg

在网站的JS文件中,会存在各种对测试有帮助的内容,JSFinder可以帮助我们获取到JS中的url和子域名的信息,拓展我们的渗透范围。爬取分为普通爬取和深度爬取,深度爬取会深入下一层页面爬取JS,时间会消耗的更长,流程如下:

v2-a6ed517a6b1bb8ca9460d4fa0d3dfea9_1440w.jpg

Sublist3r(https://github.com/aboul3la/Sublist3r)

Sublist3r是一个python版工具,其设计原理是基于通过使用搜索引擎,从而对站点子域名进行列举。Sublist3r目前支持以下搜索引擎:Google, Yahoo, Bing, 百度以及Ask,而未来将支持更多的搜索引擎。目前,Sublist3r同样也通过Netcraft以及DNSdumpster获取子域名。

v2-c8986b8b110e0966ffb793b940004b4f_1440w.jpg

云悉(http://www.yunsee.cn/info.html)

云悉可以在线搜集子域名、ip段、CMS指纹等信息

v2-24fe9a17f835aecf195d046af10a9f06_1440w.jpg

4、github敏感信息泄露实时监控

GSIL(GitHub Sensitive Information Leakage)项目,地址:
https://github.com/FeeiCN/GSIL

v2-7fda575cb4e5442dabf0f59bb9ba6c6e_1440w.jpg

通过配置关键词,实时监控github敏感信息泄露情况,并发送至指定邮箱:

v2-b63664ff5baa33305f2bc50439174742_1440w.jpg

5、网盘搜索引擎

和github类似,网盘中往往会存在企业泄露的内部信息,同样需要关注,常见的网盘搜索引擎:
盘多多:http://www.panduoduo.net/
盘搜搜:http://www.pansoso.com/
盘搜:http://www.pansou.com/
凌云风搜索:https://www.lingfengyun.com/

v2-23a42a84d175ba6831b575663a48c7b7_1440w.jpg

6、注意公众号、服务号、小程序、APP

企业的微信号、服务号、小程序、APP会帮助我们拓展攻击面,部分应用入口web中并没有,需要从公众号、小程序、APP入手,公众号中甚至会有企业用于测试的公众号、服务号,这些信息需要重点关注:

v2-7e94d0eb128c0a76b5fcb7fc9bfa37da_1440w.jpg

7、注册非普通用户(商户、企业用户等等)

商户、企业用户注册一般需要提交多个资料:营业执照、企业证件号等等,比较繁琐:

v2-cdd72efe4557a075dff12d534589bb33_1440w.jpg

但不要因为麻烦放弃,此类用户由于注册难,意味着测试的人员少,往往漏洞比较多。部分平台审核不严,很多情况下提供资料注册即可通过或简单电话验证即可通过。

想办法提供各类资料注册(网上购买营业执照、OSINT、PS)
想办法获取到账号(撞裤、文库、QQ群、github泄漏等)
借账号/租账号/买账号

v2-4b4754b089c9fbb385d30ebcf6816211_1440w.jpg

0x02 微信公众号抓包技巧

企业微信公众号可以大大拓宽我们的测试范围,公众号部分链接可以直接复制到浏览器中打开,然后按照常规的渗透测试方法进行,但是有的链接复制到浏览器后,会出现下图情况

v2-0d109cd2885d4ed057329ea571764590_1440w.jpg

对于这种情况,可以通过安卓模拟器抓微信包、真机微信抓包的方式解决,但都相对不太方便,和大家分享通过SocksCap64直接抓微信PC端的流量方法。

SocksCap64是一款功能非常强大的代理客户端,支持http/https、socks4/5、TCP、UDP等协议,在内网渗透中经常使用,同样可以用他来代理微信PC客户端的流量,并将流量转发至burp中,就可以进行抓包分析。

首先还是在burp中设置监听:

v2-daac341bda032ffb1b3dd7aab307e9f1_1440w.jpg

然后在SocksCap64中设置代理服务器为burp的地址和端口,代理方式HTTP:

测试一下,是否成功:

v2-86f0f517239644e53ddd8b5efb35927f_1440w.jpg

然后利用SocksCap64启动微信:

v2-14c47058529c6005688f065213d07f25_1440w.jpg

即可成功抓到微信PC端的流量:

v2-c58e667516129e040ea964466cd49a7c_1440w.jpg

0x03 登录界面思路

v2-1ef7ad795d28d08b768cac23ab475db6_1440w.jpg

0x04 短信&邮件轰炸绕过

在网站测试的过程中,常常在用户注册登录时出现手机号/邮箱注册,这里就可能出现短信&邮件炸漏洞,此类漏洞测试比较方便,虽然有的站点做了防护,但也有一些绕过的办法。

这里收集了部分目前较为流行的临时接收短信的网站,方便用于测试:

https://www.pdflibr.com/

http://www.z-sms.com/

https://www.receive-sms-online.info/

[国内] http://www.smszk.com/

[国外] http://receive-sms-online.com/

[国外] https://smsnumbersonline.com/

[国外] https://www.freeonlinephone.org/

[国外] https://sms-online.co/receive-free-sms

在应用手机号/邮箱和验证码作为用户登录凭证时,一般涉及到的网站功能点主要包括:

账号注册

首次设置密码时用户身份校验

账号登录

重置密码

绑定手机/邮箱

修改绑定手机/邮箱

免费试用/活动领取/反馈处

...

常见的测试和绕过手段:

v2-12953f8c631f999c8a3ea39976981b11_1440w.jpg

0x05 逻辑漏洞

随着开发人员安全意识的日益加强,IPS/IDS、WAF、全流量检测等防护设备的不断部署,传统的SQL注入漏洞、命令执行等漏洞正变得越来越少,或者越来越难挖(需要绕过各种防御设备)。但业务逻辑漏洞几乎可以bypass一切传统的安全防护设备,目前还没有非常有效的防御手段。同时,业务逻辑纷繁复杂,再资深的程序员也可能挖坑,所以只要基础扎实,逻辑思维能力强,耐心细心,不放过任何一个步骤,此类漏洞比较容易挖。

v2-1e8957ebba3cf05f55987372d3181b43_1440w.jpg

1、修改返回包的越权

场景1:修改手机号

一般的修改逻辑为:认证原手机号 -> 填写新手机号 -> 提交修改

如果在进行下一步操作时,没有校验上一步的认证是否成功时,就会存在逻辑缺陷绕过。
比如在第一步认证原手机号时,随意输入验证码,将response包中的相关字段进行修改,比如0改成1,false改成true,即可绕过第一步验证,进入填写新手机号界面,如果第三步提交修改时没有验证第一步的结果,就会造成逻辑漏洞。

乌云案例:http://www.anquan.us/static/bugs/wooyun-2015-0120951.html

场景2:登录绕过

部分网站的身份验证放在了前端,因此只需要将response包中的相关字段进行修改,比如0改成1,false改成true,就可以登录任意用户账号。

乌云案例:http://www.anquan.us/static/bugs/wooyun-2015-0151201.html

2、水平越权

场景1:遍历ID
在一些请求中,GET或POST中有明显的id数字参数(手机号、员工号、账单号、银行卡号、订单号等等),可以尝试进行遍历,如果程序没有对当前权限进行判断,就会存在水平越权问题。

乌云案例:http://www.anquan.us/static/bugs/wooyun-2016-0204958.html

场景2:ID替换
如果程序对用户标识进行了hash或者加密,而又无法破解用的什么加密方式的话,就无法通过遍历ID来获取其他用户信息了。此时可以尝试注册两个账号,通过替换两个ID加密后的值,判断程序是否对权限进行了验证,如果没有,也会存在越权问题。

3、垂直越权

观察cookie中的session字段,猜测修改,发现:
level=1: admin
level=2: vip user
level=3: normal user

v2-7091b157b0af046dc32b7e607c4c3761_1440w.jpg

说明,本教程文章仅限用于学习和研究目的,请勿用于非法用途。漏洞挖掘中应遵守SRC中的相关规则。