去年冬天,黑客我在一个安全论坛上看到有人贴出一张截图:某省级医院的攻防内网拓扑图,标注了HIS服务器、免费医保接口和备份数据库的阅读IP段。发帖人只写了一句话——“这图是黑客去年从某文库下载的PPT里扒出来的,现在还能用。攻防”底下跟帖的免费人没一个惊讶,反倒开始交流怎么用Shodan搜同类暴露面。阅读那帖子活了不到两小时就被删了,黑客但图我存了。攻防
这事让我想起一个更早的免费案例。2017年,阅读NSA的黑客“永恒之蓝”工具包被影子经纪人泄露,三个月后WannaCry席卷全球。攻防当时很多人骂微软为什么不给XP打补丁,免费但真正的问题在于:那些被攻陷的机器,绝大多数连最基本的SMB端口都没关。安全圈有句老话,“漏洞是补不完的,但懒是可以治的。”可惜没人愿意治。
我刚开始学渗透测试那会儿,导师扔给我一台靶机,说“别用扫描器,先手工摸。”我花了三个小时,从robots.txt翻到备份文件,最后在`/admin/backup.zip`里找到了数据库密码。那密码是`admin123`。后来我进了这家公司的内网,发现他们连域控的密码都是`P@ssw0rd`——加了符号,但没换字母。这种案例在真实攻防里占七成以上,根本不需要什么0day。
防守方总在追新概念。前年零信任火的时候,一堆企业买微隔离产品,结果连资产清单都没理清楚。我见过一个客户,部署了号称能检测横向移动的EDR,但服务器之间还在用明文LDAP认证。攻击者拿下一台Web服务器后,直接抓取内存里的凭证,五分钟就摸到了财务系统。EDR倒是报警了,但日志被淹没在每天两万条误报里,没人看。
红队视角看,突破边界往往靠的是“人”而不是“技术”。有一次我们做钓鱼演练,发了一封伪装成IT部门的邮件,说“请点击链接更新VPN客户端”。三十人的目标部门,十七个点了。其中五个还回复了邮件问“为什么更新后连不上”。拿到凭证后,我们没急着进内网,而是先登录了他们的OA,翻到了组织架构图和最近的项目文档。这些信息比任何扫描结果都值钱。
免费阅读黑客攻防的内容,网上到处都是。但大部分是工具说明书,或者CTF题解。真正有用的,是那些讲“为什么”而不是“怎么做”的东西。比如《The Web Application Hacker‘s Handbook》里有一章专门讲“攻击逻辑漏洞”,举的例子是电商网站的优惠券复用。这种漏洞扫描器扫不出来,但造成的损失比SQL注入大得多。我见过一个平台,因为没校验优惠券使用次数,被人用脚本刷了七十万。
防守方要学的第一课,其实是“承认自己会犯错”。微软的安全响应中心有个做法值得借鉴:他们假设攻击者已经在内网了,所以重点放在检测和响应上,而不是死守边界。这思路放到企业里,就是别指望防火墙能挡住一切。你得有日志,得有基线,得知道正常流量长什么样。不然就算买了再贵的设备,也只是给攻击者增加一点噪音。
最后说个真事。某次攻防演练,我们打进去后,发现对方的内网共享里有个文件夹叫“安全整改报告”。打开一看,里面详细列了他们上次演练被攻破的路径和修复方案。但那个文件夹的权限是“所有人可读”。我们照着报告里的修复清单,反向找到了三个没改的弱口令。这事我后来在沙龙上讲过,台下有人笑,有人摇头。没人觉得意外。