游客发表
上周三凌晨两点,系统我在客户内网里用一条没打补丁的安全Confluence路径拿到了域管权限。整个过程没触发任何告警,渗透EDR安静得像台关机的测试收音机。这不是结论电影桥段——从外网边界到核心数据库,总共花了四小时十七分钟,报告中间只用了三个已知漏洞和一个弱口令。系统
渗透测试这行干久了,安全你会发现一个尴尬的渗透事实:大多数企业花大价钱买的防护设备,防的测试是三年前的攻击手法。这次测试的结论目标是一家中型金融公司,外网暴露面不大,报告但VPN入口挂着Citrix Gateway,系统版本号停留在CVE-2023-3519修复之前。安全我试了两次就弹出了反向shell。渗透进去之后更离谱——内网里跑着未授权的Redis实例,端口6379直接对办公网开放,里面缓存着明文用户会话token。运维团队的解释是“临时调试用,忘了关”。
横向移动阶段我用了两个技巧。一是Kerberoasting,域内服务账户的密码策略形同虚设,八个服务账户有五个能在四小时内爆破出弱密码。二是利用WSUS服务器的配置错误,向所有域内主机推送了一个“安全更新”——实际上是个Cobalt Strike beacon。这里有个细节值得玩味:客户部署了微隔离方案,但策略只覆盖了生产网段,办公网和测试网之间是一片坦途。安全团队事后复盘时说,他们以为微隔离是“全局生效”的,没人去验证过策略的实际覆盖范围。
数据 exfiltration 阶段我选了最笨的办法——DNS隧道。每秒只传2KB,但持续跑了六个小时。流量监控系统没报警,因为阈值设的是每秒10MB以上。这个设定暴露了一个普遍问题:安全运营团队把“异常”定义得太窄了。慢速、低频、合法的协议滥用,在大多数SOC里都是盲区。我甚至用公司自己的备份系统把数据库导出了一份——备份账户的权限比普通域用户还大,密码是去年离职员工留下的,没人改过。
报告里我写了三页攻击路径,但真正让客户坐不住的是最后那张截图:我在域控上创建了一个新账户,名字叫“backup_service”,然后给自己发了封邮件,主题是“测试完成”。这封邮件通过了所有邮件安全网关的检查,因为发件人就是域管理员。技术层面讲,这次测试暴露的不是某个单一漏洞,而是一连串“差不多就行”的决策——补丁晚打两周、微隔离策略少配一条、密码策略放宽一点、监控阈值调高一些。每个决定单独看都有理由,叠在一起就是一条直通核心的快速路。
修复建议我没写太长。第一条就是关掉那个Redis实例,第二条是给所有服务账户强制30位随机密码并启用托管服务账户。客户CTO问我“能不能给个优先级排序”,我说不用排,前两条不做,后面写再多也是废纸。渗透测试的价值不在于报告有多厚,而在于你愿不愿意承认:攻击者不需要完美,他们只需要你有一个地方偷懒。
友情链接