您可以从以下位置找到一些信息亚伦·斯特布纳 https://twitter.com/astebner here: https://learn.microsoft.com/en-us/archive/blogs/astebner/more-info-about-how-msi-custom-actions-work-behind-the-scenes https://learn.microsoft.com/en-us/archive/blogs/astebner/more-info-about-how-msi-custom-actions-work-behind-the-scenes
这是摘录:
msiexec.exe - 嵌入 (GUID)- 这是自定义操作服务器(由 -Embedding 开关指示)
自定义操作:自定义操作是在安装过程中运行的一段自定义代码。它们可以是脚本或二进制形式 -dll
, exe
, vbscripts
, etc...
危险临近。有了更高的权利,他们基本上可以做“任何事情”,但通常他们都没事。
微星执行程序: 会有很多msiexec.exe
在任何 MSI 文件的安装过程中,某些 MSI 文件可能会触发其中相当多的进程。这与 MSI 中存在多少自定义操作以及可能的许多其他因素有关。也总会有一个client msiexec.exe process
运行user context
and a server msiexec.exe process
运行为LocalSystem
(除非服务器静默运行 - 则安装不需要用户部分)。这些进程本身运行实际的安装。
技术花絮: 我相信msiexec.exe
安装后,进程会在进程列表中保留大约 10 分钟。这至少曾经是正常行为(事情发生了变化)。希斯·斯图尔特(Heath Stewart)关于此的旧博客 https://devblogs.microsoft.com/setup/the-windows-installer-service/.
Malware:关于恶意软件意义上的这一点。自定义操作进程当然可能会被感染,但大多数情况下不会被感染,防病毒软件可能会因为误报而决定扰乱它。系统模式自定义操作以临时管理员权限运行,并且肯定可以用任何东西感染计算机。未提升的 MSI 文件可以通过在启动时启动等方式安装木马和其他类型的恶意软件。然而,高级自定义操作可能会安装驱动程序和服务以及各种疯狂的行为。
抗病毒忧郁:MSI 文件的一个常见问题是防病毒软件可能会决定隔离超级隐藏 MSI 缓存文件夹中的 MSI:C:\Windows\Installer。该文件夹受到高度保护,不应被任何东西访问,在这里乱搞通常会导致 MSI 包无法卸载(包被缓存以方便卸载、修改和修复)。对于此类不可卸载的软件包有一些技巧和修复 https://stackoverflow.com/a/53876981/129130。此外,还有其他原因可能导致 MSI 源丢失 https://stackoverflow.com/a/50478416/129130(系统还原怪异是我怀疑的罪魁祸首之一)。
城市的钥匙:远远超出了您实际询问的内容:如果您确定 MSI 被感染,我会犹豫是否调用其卸载程序...我想这是不言而喻的。如果它运行在高架上,它就拥有“城市的钥匙”。使用 Microsoft FixIt 工具(在上面的链接答案中找到)或其他一些方法来擦除安装。或者更好的是:我想重建你的盒子 - 好像你还不够忙?
Links:
- 卸载 MSI 软件包的方法综合列表 https://stackoverflow.com/a/1055933/129130
- 为什么有多个 msiexec.exe 实例? https://serverfault.com/a/67161/20599
- 包缓存的位置 https://stackoverflow.com/a/48823086/129130