简介
MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。
MSI文件将程序的组成文件与功能关联起来。此外,它还包含有关安装过程本身的信息。如目标文件夹路径、系统依赖项、安装选项和控制安装过程的属性。采用MSI安装的优势在于你可以随时彻底删除它们,更改安装选项,即使安装中途出现意想不到的错误,一样可以安全地恢复到以前的状态,正是凭着此强大功能,越来越多的软件开始使用MSI作为发行的方式了。
Ocra分析
7z 可用于查看内部文件,但无法分析 msi 的实际功能。Orca是一个显示msi文件各种信息的工具。您可以使用“Orca msi 安装程序”通过谷歌搜索找到它。(Orca.msi:710ae2be53e11f3d5c5f8cfccce76a3a)
使用 Orca 打开 msi 文件,您将看到下表。我们以一个样本为例为例,这个样本不包含压缩文件,将恶意代码嵌入到msi结构里。
File Table
.cab包含的文件,可疑从此表中看到
Binary Table
不在.cab中,而是直接在msi文件二进制表中
Component Table
原件释放位置
Registry Table
在注册表项注册值
CustomAction Table
最重要的表。与其他表格不同,需要查看每个操作项的详细信息。
Custom
ExecuteScriptCode
Action ExecuteScriptCode 也是最常用的一种,可以看到恶意代码。
除了 VBScript 之外,ExecuteScriptCode 还可以包含 JScript
msilib解析msi文件
参考链接
https://rvsec0n.wordpress.com/2020/02/22/msi-malware-analysis/
https://docs.python.org/3/library/msilib.html#summary-information-objects