WMIHACKER源码深度剖析:免杀机制与WMI利用原理

【免费下载链接】WMIHACKER A Bypass Anti-virus Software Lateral Movement Command Execution Tool 【免费下载链接】WMIHACKER 项目地址: https://gitcode.com/gh_mirrors/wm/WMIHACKER

WMIHACKER是一款免杀横向移动命令执行测试工具,无需445端口即可实现远程命令执行、文件上传和下载等功能。它通过创新性的WMI利用方式,有效绕过传统杀毒软件的拦截,为安全研究人员提供了全新的横向渗透测试思路。

WMIHACKER核心功能解析 🚀

WMIHACKER主要提供三大核心功能,这些功能通过巧妙的WMI技术实现,既保证了操作的隐蔽性,又能有效绕过杀毒软件的检测。

命令执行:突破传统限制的创新方法

传统的WMIEXEC、PSEXEC等工具执行命令时,通常会创建服务或调用Win32_Process.create,这些方法已被杀毒软件100%拦截。WMIHACKER另辟蹊径,采用了两种不同的命令执行策略:

对于Windows版本低于6的系统,WMIHACKER使用Win32_ScheduledJob创建计划任务来执行命令(WMIHACKER_0.6.vbs#L450-L484)。这种方式利用了系统自带的计划任务功能,具有较高的隐蔽性。

对于Windows版本6及以上的系统,WMIHACKER则通过Schedule.Service COM对象创建临时任务(WMIHACKER_0.6.vbs#L139-L204)。任务执行后立即删除,大大降低了被检测的风险。

文件传输:基于注册表的隐蔽通道

WMIHACKER的文件上传和下载功能同样体现了其创新性。它利用Windows注册表作为临时存储介质,实现文件的隐蔽传输。

上传文件时,WMIHACKER先将文件内容转换为二进制数据,然后存储到注册表中(WMIHACKER_0.6.vbs#L539-L550)。下载文件时,则从注册表中读取二进制数据并还原为文件(WMIHACKER_0.6.vbs#L531-L537)。这种方式避免了直接的文件传输,有效绕过了基于文件监控的检测机制。

交互式Shell:模拟真实终端体验

WMIHACKER还提供了交互式shell功能,允许用户在远程主机上执行多个命令,就像使用本地终端一样(WMIHACKER_0.6.vbs#L113-L135)。这种模式特别适合需要在远程主机上进行多步操作的场景,提高了渗透测试的效率。

免杀机制深度解析 🛡️

WMIHACKER的免杀能力源于其独特的技术实现。让我们深入分析其主要的免杀机制:

无文件执行:减少检测面

WMIHACKER本身是一个VBScript脚本文件,执行过程中不需要在目标系统上写入额外的可执行文件。所有操作都在内存中完成,大大降低了被静态查杀的风险。

合法系统功能滥用

WMIHACKER充分利用了Windows系统自带的合法功能,如WMI服务、计划任务、注册表等。这些功能是系统正常运行所必需的,杀毒软件通常不会对其进行拦截,从而为WMIHACKER提供了天然的保护。

动态代码生成与清理

WMIHACKER在执行过程中动态生成必要的代码和任务,并在使用后立即清理。例如,创建的临时任务在执行后会被立即删除(WMIHACKER_0.6.vbs#L180-L181),这种"来无影去无踪"的方式使得检测变得非常困难。

命令混淆与编码

为了绕过基于特征码的检测,WMIHACKER对命令进行了巧妙的处理。例如,它使用Replace函数处理命令中的引号(WMIHACKER_0.6.vbs#L97),避免直接出现可能被检测的字符串模式。

WMI利用原理详解 🔍

WMI(Windows Management Instrumentation)是Windows系统的核心组件,提供了管理系统资源的统一接口。WMIHACKER充分利用了WMI的强大功能,实现了高效的横向移动。

WMI服务连接

WMIHACKER通过SWbemLocator对象连接远程主机的WMI服务(WMIHACKER_0.6.vbs#L53-L66)。这种连接使用135端口,而不是传统的445端口,有效避开了针对445端口的防御措施。

WMI事件消费者与过滤器

WMIHACKER使用WMI事件机制来触发命令执行。它创建了ActiveScriptEventConsumerWMIHACKER_0.6.vbs#L140-L141)和__EventFilterWMIHACKER_0.6.vbs#L184-L191),并通过__FilterToConsumerBinding将它们绑定在一起(WMIHACKER_0.6.vbs#L193-L197)。这种基于事件的触发机制使得命令执行更加隐蔽。

结果获取与清理

为了获取命令执行结果,WMIHACKER将结果写入临时文件,然后读取并通过Base64编码存储到注册表中(WMIHACKER_0.6.vbs#L290-L351)。完成后,临时文件会被删除(WMIHACKER_0.6.vbs#L486-L494),注册表项也会被清理,整个过程不留痕迹。

实际应用场景与示例 💻

WMIHACKER的设计使其在多种场景下都能发挥作用。以下是一些典型的使用示例:

单命令执行

执行单条命令并获取结果:

cscript WMIHACKER_0.6.vbs /cmd 172.16.94.187 administrator "Password!" "systeminfo" 1

如果不需要即时结果,可以将输出重定向到文件:

cscript WMIHACKER_0.6.vbs /cmd 172.16.94.187 administrator "Password!" "systeminfo > c:\1.txt" 0

交互式Shell

启动交互式shell,执行多个命令:

cscript WMIHACKER_0.6.vbs /shell 172.16.94.187 administrator "Password!"

文件上传与下载

上传本地文件到远程主机:

cscript wmihacker_0.4.vbe /upload 172.16.94.187 administrator "Password!" "c:\windows\system32\calc.exe" "c:\calc"

从远程主机下载文件:

cscript wmihacker_0.4.vbe /download 172.16.94.187 administrator "Password!" "c:\calc" "c:\windows\system32\calc.exe"

传递哈希(PTH)

WMIHACKER还支持使用传递哈希(Pass-The-Hash)技术,只需将用户名和密码都设置为"-":

cscript WMIHACKER_0.6.vbs /cmd 172.16.94.187 - - "systeminfo" 1

总结与展望 🌟

WMIHACKER通过创新性地利用WMI技术,成功实现了免杀横向移动和命令执行。其核心优势在于:

  1. 无需445端口,避开了常见的防御措施
  2. 利用合法系统功能,提高了隐蔽性
  3. 动态生成和清理代码,减少了检测痕迹
  4. 支持多种操作模式,满足不同场景需求

对于安全研究人员来说,WMIHACKER不仅是一个实用的测试工具,更是学习WMI技术和免杀技巧的优秀案例。通过深入研究其源码,我们可以更好地理解WMI的工作原理,以及如何在安全测试中有效地利用这些技术。

未来,随着防御技术的不断进步,WMIHACKER也需要持续进化。可能的发展方向包括:更复杂的代码混淆技术、更隐蔽的通信方式,以及对新型WMI功能的利用等。无论如何,WMIHACKER已经为我们展示了WMI在安全领域的巨大潜力,值得每一位安全研究者关注和学习。

要开始使用WMIHACKER进行安全测试,只需克隆仓库:

git clone https://gitcode.com/gh_mirrors/wm/WMIHACKER

请记住,WMIHACKER仅用于合法的安全测试和研究目的,任何未经授权的使用都是违法的。

【免费下载链接】WMIHACKER A Bypass Anti-virus Software Lateral Movement Command Execution Tool 【免费下载链接】WMIHACKER 项目地址: https://gitcode.com/gh_mirrors/wm/WMIHACKER

Logo

立足具身智能前沿赛道,致力于搭建全球化、开源化、全栈式技术交流与实践共创平台。

更多推荐