当前位置:首页 > 焦点

利用工具对互联网业务系统进行漏洞探测

打开浏览器,利用联网漏洞挂上代理,工具对着目标域名敲下第一条命令——这大概是对互每个做漏洞探测的人最熟悉的起手式。但真正决定效率的业务,不是系统你手速多快,而是进行你选了哪些工具、怎么组合它们。探测

我习惯从资产梳理开始。利用联网漏洞一个互联网业务系统,工具表面上看可能只有一个主站,对互实际上背后藏着几十上百个接口、业务子域名、系统测试环境。进行用 OneForAll 跑一遍子域名收集,探测再配合 httpx 批量探测存活和指纹,利用联网漏洞十分钟内就能拿到一张比甲方自己还清楚的资产地图。有次我给一个电商平台做授权测试,主站防护严密,但通过子域名关联发现了一个 beta 环境,登录接口连验证码都没加,弱口令直接进了后台。

资产清单出来后,下一步是端口和服务识别。Nmap 依然是绕不开的选择,但别傻乎乎地全端口扫。先跑 nmap -sS -T4 --top-ports 1000 快速过一遍,再针对开放端口做服务版本探测。我见过太多人一上来就 -p 1-65535,结果被防火墙封了 IP,后面什么都干不了。这里有个细节:如果目标有 CDN,直接扫 IP 没意义,得先找真实源站。用 fofa 或 shodan 查证书、查特定 header 特征,往往比硬扫更快。

Web 漏洞探测才是重头戏。Burp Suite 的主动扫描适合常规漏洞,但别指望它覆盖所有场景。我通常把 sqlmap 和 XSStrike 当作补充,针对特定参数手工验证。Nuclei 是近几年我最常用的工具,模板生态好,跑起来快,一个 nuclei -u https://target.com -t cves/ -t exposures/ 就能筛出不少低垂果实。但要注意,Nuclei 的误报率不低,尤其是 exposures 类模板,看到结果别急着提交,先手工确认。
有个坑我踩过:某次用 Nuclei 扫出一个 .git 泄露,兴奋地报了漏洞,结果甲方回复说那是他们故意放的蜜罐。从那以后,任何工具输出我都会交叉验证——用 curl 看响应体,用浏览器看实际渲染,用 git-dumper 尝试拉取完整仓库。工具说“有”,你得自己判断“是不是真的可利用”。

API 接口是现在漏洞探测的富矿。很多系统前端做了鉴权,后端接口却裸奔。Postman 配合 Burp 的 Logger 模块,把前端所有请求抓下来,逐个改参数、换方法、删 token,看返回有什么变化。我遇到过最离谱的一个案例:某 SaaS 系统的 /api/v1/user/delete 接口,把 DELETE 改成 GET 就能直接删用户,连认证都不需要。这种逻辑漏洞,扫描器根本发现不了,只能靠人工观察和测试。

最后说一个容易被忽略的环节:信息泄露的被动收集。GitHub 上搜目标域名,Google 搜 site:target.com ext:log,Wayback Machine 翻历史快照。有次我在一个废弃的 Jenkins 页面里找到了数据库连接字符串,直接连上了生产库。工具是死的,思路是活的。漏洞探测这件事,工具帮你省时间,但判断力省不了。

分享到: