场景:某中型金融机构(员工500+)在一次HVV实战演练中,红队仅用3小时即从钓鱼邮件突破边界,最终拿下域控权限。防守方SOC虽有告警但未能及时阻断,暴露出多层防御盲区。
攻击 / 事件时间线
初始访问:精准钓鱼
红队针对目标公司财务部门,伪造一封以'6月薪资调整通知'为主题的钓鱼邮件,附件为带宏的Excel文档。邮件通过伪造发件人域名(使用相似域名finance-corpt.com),绕过SPF校验。员工打开文档并启用宏后,执行了嵌入的PowerShell payload,回连红队C2服务器(使用HTTPS over 443端口)。
Cobalt StrikeEvilginx2MacroPack
权限维持与信息收集
Cobalt Strike beacon上线后,红队立即执行 whoami 和 net user /domain 确认当前用户为域用户。随后使用 PowerView 脚本枚举域内组策略和信任关系,发现域管理员组存在弱密码账户(Admin-IT01)。同时通过 SharpHound 收集AD拓扑数据,定位到域控服务器IP。
PowerViewSharpHoundCobalt Strike
提权与横向移动
红队利用Mimikatz从当前主机内存中dump出域管理员凭证(NTML hash)。随后使用 PsExec 横向移动到域控服务器,执行 ntdsutil 导出域数据库文件(NTDS.dit)。整个过程仅耗时45分钟,未触发任何EDR告警——原因是红队使用了动态签名和进程镂空技术(Process Hollowing)绕过杀软。
MimikatzPsExecntdsutil
数据窃取与痕迹清理
红队将NTDS.dit和SYSTEM hive文件通过加密通道回传至C2服务器。为掩盖行动痕迹,红队使用 wevtutil 清除了Windows安全日志中与登录和进程创建相关的Event ID 4624/4688记录,并删除了Mimikatz和PsExec的执行痕迹。同时留下一个后门服务(命名为'WinUpdateSvc')用于持久化访问。
wevtutilCobalt Strike后门服务
蓝队视角 · 发现与处置
防守方SOC在钓鱼邮件发出后15分钟即收到邮件网关告警(可疑附件),但未及时研判。用户启用宏后,终端EDR产生'可疑进程树'告警(Excel -> PowerShell),但被误判为正常办公行为。直到域控上出现异常服务创建(WinUpdateSvc),蓝队才启动应急响应,但此时数据已被窃取。蓝队通过Sysmon日志回溯攻击链,确认初始入口点,并封禁C2 IP。
涉及关键技术 / 工具
Cobalt Strike进程镂空绕过EDRMimikatz凭证提取SharpHound域拓扑枚举
防护经验总结
- 启用邮件DMARC/DKIM/SPF三重校验,阻止相似域名伪造;对所有包含宏的文档执行沙箱检测。
- 终端EDR对PowerShell执行应设置'高敏感度'规则,尤其是从Office进程衍生的PowerShell进程应立即阻断并弹窗告警。
- 域控服务器应启用LAPS管理本地管理员密码,并配置Windows事件日志转发至SIEM,对Event ID 4688(进程创建)和4624(登录)建立实时关联规则。
#红蓝对抗#钓鱼攻击#域渗透#Cobalt Strike#Mimikatz