场景:某大型水务关基机构,2026年5月因数据泄露被罚近千万。攻击者自2024年7月通过弱口令进入内网,潜伏近两年后窃取用户数据及管网拓扑。
攻击 / 事件时间线
初始访问
攻击者利用水务机构对外暴露的SCADA系统Web管理后台,通过admin/123456弱口令直接登录。该系统未启用MFA,日志记录级别仅为ERROR,未记录登录来源IP。攻击者登录后,上传了经过免杀的Cobalt Strike Beacon(PowerShell变种),通过计划任务实现持久化。
Cobalt StrikePowerShell
内网侦察与提权
Beacon上线后,攻击者使用BloodHound分析AD域环境,发现域管理员账户密码被明文存储在内部Wiki页面。利用该凭证,攻击者通过PsExec横向移动到域控服务器,并导出域管理员Hash(Mimikatz)。随后创建了隐蔽的域管理员影子账户,用于长期控制。
BloodHoundMimikatzPsExec
横向移动与数据窃取
攻击者以域管理员身份,通过WinRM和RDP批量登录到SQL Server集群和文件服务器。使用sqlcmd导出用户数据库(350万条用水数据、身份证号等),并通过Rclone将数据同步至境外云存储(MEGA)。为掩盖流量,攻击者将数据包分片,并伪装成正常的SCADA协议流量。
RclonesqlcmdWinRM
告警触发与溯源
防守方通过Zeek(Bro)流量审计,发现异常的外部DNS解析记录(指向MEGA域名),且流量包大小远超正常SCADA数据。SOC研判后,通过Sysmon日志(Event ID 1, 3, 11)回溯到域控服务器,发现异常计划任务和影子账户。最终通过Velociraptor在终端抓取攻击者内存中的C2配置,锁定攻击源IP。
ZeekSysmonVelociraptor
蓝队视角 · 发现与处置
SOC通过Zeek流量审计发现异常DNS请求,触发一级告警。研判组迅速隔离涉事SQL Server集群,并提取Sysmon日志,发现域控存在异常计划任务。使用Velociraptor对全端进行内存取证,捕获到C2 Beacon配置文件和Shadow账户创建记录。结合威胁情报,确认攻击者IP关联某APT组织。最终通过域控日志回溯,确认横向移动路径,并切断所有外联通道,完成应急响应。
涉及关键技术 / 工具
弱口令与MFA缺失BloodHound域分析Rclone数据外传
防护经验总结
- 所有对外系统(特别是SCADA)必须强制启用MFA,并禁用默认管理员账户。
- 部署Zeek或Suricata进行全流量审计,重点监控异常DNS请求和协议流量特征。
- 建立域管理员账户使用审计机制,对PsExec、WinRM等高危工具的执行日志进行实时监控。
#水务安全#APT#数据泄露#内网潜伏