SRC漏洞挖掘实用技巧

2019-09-02 约 3332 字 预计阅读 7 分钟

声明:本文 【SRC漏洞挖掘实用技巧】 由作者 tinyfisher 于 2019-09-02 09:05:00 首发 先知社区 曾经 浏览数 236 次

感谢 tinyfisher 的辛苦付出!

0x01 信息收集

1、Google Hack实用语法

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

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

查找指定网站,再加上site: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,搜索内容如果被删除,网页快照一般仍会有记录。


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

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

特别是超强搜索引擎shodan,甚至可以根据logo查询互联网资产:
比如对某IP进行信息检索,点击view raw data:

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

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

http.favicon.hash:-1507567067

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

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

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、子域名收集

推荐几个好用的工具:

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

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

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

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

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

5、网盘搜索引擎

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

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

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

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

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

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

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

0x02 微信公众号抓包技巧

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

对于这种情况,可以通过安卓模拟器抓微信包、真机微信抓包的方式解决,但都相对不太方便,和大家分享通过SocksCap64直接抓微信PC端的流量方法。
SocksCap64是一款功能非常强大的代理客户端,支持http/https、socks4/5、TCP、UDP等协议,在内网渗透中经常使用,同样可以用他来代理微信PC客户端的流量,并将流量转发至burp中,就可以进行抓包分析。
首先还是在burp中设置监听:

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

测试一下,是否成功:

然后利用SocksCap64启动微信:

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

0x03 登录界面思路

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

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

  • 账号注册
  • 首次设置密码时用户身份校验
  • 账号登录
  • 重置密码
  • 绑定手机/邮箱
  • 修改绑定手机/邮箱
  • 免费试用/活动领取/反馈处
  • ...

常见的测试和绕过手段:

0x05 逻辑漏洞

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

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

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

关键词:[‘渗透测试’, ‘渗透测试’]


author

旭达网络

旭达网络技术博客,曾记录各种技术问题,一贴搞定.
本文采用知识共享署名 4.0 国际许可协议进行许可。

We notice you're using an adblocker. If you like our webite please keep us running by whitelisting this site in your ad blocker. We’re serving quality, related ads only. Thank you!

I've whitelisted your website.

Not now