PBR与Kittens:CactusCon 11上介绍的APT 35案例
2023年1月底,Kudelski Security美国事件响应团队的James Navarro和Jacob Wellnitz在亚利桑那州梅萨市的CactusCon 11会议上发表了演讲。该演讲是对客户新收购子公司遭受网络攻击进行近一年调查和响应的成果。本次攻击被认为是由国家资助的威胁行为者实施,被称为Charming Kitten和Nemesis Kitten。该威胁行为者还以Phosphorus、Magic Hound、Newscaster和APT 35等名称闻名,专注于长期、资源密集型的网络间谍活动。MITRE在ATT&CK项目网站上提供了有关该组织的更多信息。
背景
Kudelski Security的一位现有客户在其内部安全工具检测到可疑的内部端口扫描活动后联系了我们。该活动针对的是他们最近收购的一家石油和天然气精炼厂内的运营技术网络。新收购的公司运营多家工厂,包括石油精炼厂。
Kudelski Security的客户继承了被收购公司的所有IT基础设施,包括漏洞、缺失的补丁和受感染的系统。如果被收购公司进行了SANS安全意识成熟度模型练习,他们可能在1到5的评分中仅为1级。
准备
不幸的是,被收购公司没有事件响应计划或操作手册。因此,参与必须从广泛的发现开始。
访问Kudelski Security网站,了解我们如何帮助客户准备这些支持事件准备的关键文档。
检测与分析
威胁情报
从2021年5月起,FBI和CISA发布了多份公告,详细说明了高级持续性威胁(APT)利用的策略、技术和程序(TTP),并将其归因于伊朗相关行为者等。虽然这些公告以Fortinet设备和漏洞为中心,但列出的利用后活动与我们客户遭遇的情况一致。尽管该组织未使用Fortinet设备,但公告中的相关IoC对该组织进行威胁搜寻非常有用。事实上,在这种情况下,IoC本应使被收购公司能够进行威胁搜寻,从而发现利用行为。
Kudelski Security在FBI和CISA警报发布时即进行摄入,并利用这些信息支持和完善我们的托管检测与响应服务。
后来在与现场员工交谈和事件响应团队调查过程中发现,一名FBI特工已于2022年4月就针对该组织域名的可疑活动联系了被收购公司。
检测
促使Kudelski Security事件响应团队介入的初始检测是2022年4月18日来自Palo Alto Cortex XDR的警报。被收购公司仅因一名信息技术工作人员登录Cortex控制台而注意到该警报。该警报涉及与精炼厂OT网络相关的潜在端口扫描活动。事件响应团队的调查证实,Cortex警报可能在2022年1月被威胁行为者禁用。
CrowdStrike检测
Kudelski Security与CrowdStrike合作,将其作为我们快速事件响应服务的首选工具之一。因此,一旦部署了CrowdStrike,我们就能够看到多个检测结果,这些结果与CrowdStrike现有的Falcon情报和机器学习模型对恶意活动的检测相匹配。
尽管CrowdStrike有现成的检测,但该威胁行为者在环境中部署了更多工具,需要通过威胁搜寻来发现。
分析
事件响应团队将威胁搜寻和数字取证工件分析的结果相关联,以识别受感染的机器。这导致了更多的IoC和需要调查的机器。根据FBI的IoC,我们能够确定初始访问是2022年1月8日通过Log4Shell漏洞利用网络的VMWare Horizon环境实现的。进一步调查显示,威胁行为者于2021年12月26日建立了他们的命令与控制(C2)基础设施。这仅在2021年11月24日发现Log4Shell后一个月。
对攻击者活动的分析和对威胁行为者使用的二进制文件的反向工程追踪到了通过VMware Horizon利用Log4Shell的IoC。2021年12月10日的VMSA-2021-0028显示该软件存在漏洞。取证工件分析显示,攻击者随后破坏了网络内的VMware Identity Manager平台,以部署后门用户、提升权限并启用横向移动。攻击者输出随后通过webhook发送回。
发现并反向工程的其他DotNET二进制文件似乎与MuddyWater使用的恶意软件属于同一类型。截至发布时,VirusTotal上仅有一家安全供应商将恶意软件使用的C2域标记为恶意。
归因
Kudelski Security事件响应团队的网络威胁情报将此攻击与据CISA称在伊朗政府支持下运作的威胁行为者相关联。多个CISA警报(如AA21-321A、AA22-055A、AA22-138B、AA22-174A、AA22-257A和AA22-320A)与此参与中看到的TTP相匹配。需要注意的是,CISA关于VMWare漏洞的公告(AA22-138B)直到2022年5月18日才发布,大约在Kudelski Security事件响应介入后一个月,以及网络被利用后五个月。还发现了与MuddyWater使用的DotNET二进制文件相匹配的文件,MuddyWater是另一个已知的威胁行为者,被认为来自同一地区。这可能表明行为者之间的协作或共享工具集。
受感染系统
Kudelski Security事件响应团队识别出超过十几台被威胁行为者入侵的系统。我们将“受感染”定义为系统上执行了恶意代码的证据。受感染系统的显著示例包括域控制器、SQL服务器、Microsoft Exchange、用户虚拟桌面基础设施(VDI)机器、VMWare Horizon组件和VMware Identity Manager设备。许多这些系统发现了多种后门和C2方法,如ngrok隧道、恶意webhook、web shell和投放的恶意软件。
访问系统
还访问了其他系统。我们将“访问系统”定义为显示威胁行为者登录活动证据的系统。秘密访问了数十台系统,如其他域控制器、额外的SQL服务器、用户VDI VM和文件服务器。
威胁搜寻
团队基于公告和取证工件收集的发现,在客户环境中进行了许多不同IoC和TTP的威胁搜寻。
我们的美国事件响应团队首席威胁猎手和检测工程师James Navarro提供了一些示例CrowdStrike查询,可能帮助组织搜寻该威胁行为者的类似活动。
MITRE ATT&CK中的杀伤链
TA0001 – 初始访问
威胁行为者利用著名的Log4Shell漏洞针对组织的VMWare Horizon环境。以下是一个CrowdStrike事件查询示例,可根据环境进行修改。
(Log4Shell查询代码)
TA0002 – 执行
此案例中的执行阶段侧重于利用PowerShell部署威胁行为者的恶意软件和命令与控制基础设施。
(PowerShell下载查询代码)
恶意PowerShell进程 - 使用隐藏窗口连接到互联网
(PowerShell反向Shell连接查询代码)
PowerShell Pastebin下载
(PowerShell Pastebin下载查询代码)
TA0003 – 持久化
发现了多种持久化机制,如反向shell、webhook、SSH隧道、ngrok隧道、BackRecover.exe、CharlesBokowski.exe和Interop.exe。
NGROK隧道
(NGROK隧道查询代码)
DNS隧道技术
(DNS隧道技术查询代码)
Transfer.io
(Transfer.io查询代码)
WebShells
(WebShells查询代码)
后门、WebShell、BackRecover.exe、CharlesBokowski.exe、Interop.exe
(后门查询代码)
TA0004 – 权限提升
凭据收集、LSASS转储、密码猜测/破解。该威胁行为者收集凭据、转储LSASS并利用密码攻击。取证工件收集分析显示,使用的工具包括BloodHound、SharpHound和MimiKatz。
BloodHound和SharpHound黑客工具
(BloodHound查询代码)
Mimikatz
(Mimikatz查询代码)
LSASS进程内存转储文件
(LSASS转储查询代码)
使用Hashcat进行密码破解
(Hashcat查询代码)
Hydra密码猜测黑客工具
(Hydra查询代码)
CrackMapExec命令执行
(CrackMapExec查询代码)
RomCom RAT和权限提升工具
(RomCom RAT查询代码)
TA0005 – 防御规避
针对我们客户的威胁行为者使用了各种方法来避免网络内的防御措施。这些策略包括混淆PowerShell脚本名称、使用Base64编码、使用有效账户凭据和滥用域管理员账户。还检测到Impacket、LOLBins的使用,以及最有趣的发现,即禁用Palo Alto Cortex EDR的警报。
Impacket工具执行
(Impacket查询代码)
Metasploit / Impacket PsExec服务安装
(Metasploit查询代码)
SystemBC恶意软件的防御规避技术
(SystemBC查询代码)
Wevtutil清除日志
(Wevtutil查询代码)
WMIC卸载安全产品
(WMIC查询代码)
TA0006 – 凭据访问
该威胁行为者使用了通过各种方式收集的有效凭据,使用Mimikatz破解密码哈希,以及诸如KrbRelayUp等工具来提升其访问权限。
KrbRelayUp黑客工具
(KrbRelayUp查询代码)
ADCSPwn黑客工具
(ADCSPwn查询代码)
Findstr GPP密码
(Findstr查询代码)
VeeamBackup数据库凭据转储
(VeeamBackup查询代码)
TA0007 – 发现
与大多数Windows环境攻击一样,该威胁行为者使用了Windows操作系统内置的各种工具(如netsh)来映射域结构。
启用网络发现 - Netsh.exe
(Netsh查询代码)
WMIC发现
(WMIC发现查询代码)
可疑进程模式NTDS.DIT
(NTDS.DIT查询代码)
TA0008 – 横向移动
访问了SMB共享,滥用了SSH,当然还利用了RDP。
管理员访问SMB共享服务器
(SMB共享查询代码)
RDP劫持痕迹
(RDP劫持查询代码)
美国以外的SSH
(SSH查询代码)
远程桌面协议(RDP)端口操作
(RDP端口操作查询代码)
RDP反向隧道
(RDP反向隧道查询代码)
TA0009 – 收集
一旦威胁行为者获得了对网络大部分区域的访问权限,他们就开始从许多地方窃取信息。浏览器配置文件和凭据被窃取,Windows凭据被收集,数据被写入档案以进行外泄。
SQLite Chromium配置文件数据数据库访问
(Chromium查询代码)
SQLite Firefox配置文件数据数据库访问
(Firefox查询代码)
PowerShell ChromeLoader浏览器劫持者
(ChromeLoader查询代码)
可疑信息窃取恶意软件
(信息窃取查询代码)
浏览器凭据存储访问
(浏览器凭据查询代码)
TA0010 – 外泄
一旦威胁行为者感兴趣的数据被收集,它就被存储在zip档案中,并通过多种方法和已建立的隧道传输出网络。
WinSCP会话创建 - 可能的数据外泄
(WinSCP查询代码)
潜在数据暂存或外泄 - 常见Rclone参数
(Rclone查询代码)
反向隧道
(反向隧道查询代码)
外泄域
(外泄域查询代码)
使用7-ZIP压缩数据并加锁以备外泄
(7-ZIP查询代码)
TA0011 – 命令与控制
除了常见的通过隧道进行的命令与控制接口外,事件响应团队还发现证据表明威胁行为者利用了两个Twitter配置文件进行额外的C2活动。截至发布时,其中一个账户已被暂停,另一个处于休眠状态。Kudelski Security此时不会发布账户信息,以便进行进一步研究。
Ngrok隧道
(Ngrok隧道查询代码)
Ngrok隧道域
(Ngrok域查询代码)
遏制、根除和恢复
在可能的情况下,事件响应团队利用CrowdStrike的网络遏制功能来拒绝对手继续访问系统。此功能使我们能够对机器进行分析,同时防止系统与网络上其他系统的网络访问。然后我们进行了取证工件收集,并能够手术式地移除持久化机制和恶意二进制文件。虽然通常