Windows资源管理器Icon图标注入

admin 2024年8月5日15:31:14评论18 views字数 1024阅读3分24秒阅读模式

于非法用途及盈利等目的,间接使用文章中的任何工具、思路及技术,我方对于由此引起的法律后果概不负责。

🌟简介

使用图标将 DLL 注入资源管理器的非正统和隐蔽方式

Windows资源管理器Icon图标注入

IconJector

 

这是一个Windows资源管理器DLL注入技术,使用Windows上的更改图标对话框。

它是如何工作的?

 

首先,在临时目录中创建一个文件夹,并使用SHObjectProperties打开该文件夹的属性。为了独立于系统语言检索窗口的句柄,EnumWindows与一个回调函数一起使用,该函数在每个打开的窗口中检查不同的文件夹名称。

Windows资源管理器Icon图标注入

通过属性页,调用更改图标对话框,其句柄也通过EnumWindows检索。最后,图标路径更改为DLL(在本例中扩展名为.ico),这将导致资源管理器在按下OK按钮后加载DLL。

图标

 

“图标”实际上是一个简单的DLL文件,扩展名为.ico,它可以打开使用资源黑客添加的图标资源的计算器应用程序。

当涉及到文件夹视图中图标的外观时,存在一些异常。我已经在两个不同的Windows 10版本(最新版本和旧版本)和Windows 11上进行了测试。

Windows 10

 

在两个Widnows10版本上,当扩展名更改为. ico时,DLL中存储的图标不会显示

Windows资源管理器Icon图标注入

然而,在最新的Windows 10版本上,它确实工作,直到我试图打开照片应用程序内部的“图标”。从那时起,我就无法重新创建它。

Windows资源管理器Icon图标注入

Windows 11

 

在Windows 11上,该图标在资源管理器视图中显示为正常图标。然而,当它在照片应用程序中打开时,会显示错误。这种行为当然很有趣,因为用户如果只是想更改文件夹的图标,可能会将恶意DLL注入到资源管理器中。这可能看起来像这样:

为什么?

 

这是一种非常隐蔽的将DLL注入Explorer进程的方法,因为它不使用通常的DLL注入API。它确实产生了两个简短的弹出窗口,但并不太令人不安。因此,它可以被威胁行为者用作AV规避技术,通过合法的资源管理器进程执行代码或加载UMD rootkit。nbsp;

此外,将DLL伪装成. ico文件传播可能是一种有趣的攻击媒介。

使用的工具

 

为了获得正确的窗口句柄,我使用了Spy++,这是一个与Visual Studio一起安装的工具。

Windows资源管理器Icon图标注入

项目地址

https://github.com/0xda568/IconJector?tab=readme-ov-file
Windows资源管理器Icon图标注入

原文始发于微信公众号(SecHub网络安全社区):Windows资源管理器Icon图标注入

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月5日15:31:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Windows资源管理器Icon图标注入https://cn-sec.com/archives/2765526.html

发表评论

匿名网友 填写信息