前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ImpulsiveDLLHijack:一款基于C#实现的DLL劫持技术研究工具

ImpulsiveDLLHijack:一款基于C#实现的DLL劫持技术研究工具

作者头像
FB客服
发布2021-12-15 21:04:12
1.5K0
发布2021-12-15 21:04:12
举报
文章被收录于专栏:FreeBufFreeBuf

关于ImpulsiveDLLHijack

ImpulsiveDLLHijack是一款功能强大的DLL劫持技术安全研究工具,该工具基于C#开发实现,可以帮助广大研究人员以自动化的方式扫描、发现并利用目标设备二进制文件中的DLL安全问题,并实现DLL劫持。

红队研究人员也可以利用该工具来识别劫持路径,并在定制工具中实现该技术以绕过EDR产品的检测。

工具机制

该工具能够通过下列两个自动化阶段步骤实现DLL劫持检测:

发现:寻找潜在的DLL劫持路径;

利用:判断并确认DLL是否已从劫持路径加载,从而确定目标DLL劫持路径是否100%可利用;

工具要求

exe:

https://docs.microsoft.com/en-us/sysinternals/downloads/procmon

自定义DLL路径确认:

下面这些DLL文件,可帮助工具确认DLL是否已从已识别的劫持路径成功加载:dll(从本项目的MalDLL目录中获取)、maldll64.dll(从本项目的MalDLL目录中获取)、PeNet

工具安装

首先,我们需要使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
git clone https://github.com/knight0x07/ImpulsiveDLLHijack.git

接下来,在Visual Studio中导入ImpulsiveDLLHijack项目源码,然后点击"Project" --> "Manage NuGet packages" --> 浏览工具包并安装 "PeNet" -> https://www.nuget.org/packages/PeNet/

然后构建项目,此时项目的bin目录中就会出现ImpulsiveDLLHijack.exe文件了。

DLL路经确认

首先,我们需要使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
git clone https://github.com/knight0x07/ImpulsiveDLLHijack.git

接下来,根据目标系统架构构建x86或x64版本。

将x86编译结果重命名为maldll32.dll,将x64编译结果重命名为maldll64.dll。

最后,将编译生成的路径确认DLL(maldll32 & maldll64)拷贝至ImpulsiveDLLHijack.exe目录下,然后执行ImpulsiveDLLHijack.exe即可。

工具使用

工具使用样例

目标可执行程序:OneDrive.exe

操作阶段:DLL劫持路径发现

操作阶段:DLL劫持利用

DLL劫持成功:

DLL劫持失败:

DLL没有以入口点进行加载,手动分析后即可成功实现DLL劫持:

操作阶段:最终结果和日志记录

日志文件路径:C:\DLLLogs\output_logs.txt

项目地址

https://github.com/knight0x07/ImpulsiveDLLHijack

参考资料

https://arxiv.org/abs/2108.10422

https://docs.microsoft.com/en-us/sysinternals/downloads/procmon

https://www.nuget.org/packages/PeNet/?

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-12-14,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于ImpulsiveDLLHijack
  • 工具机制
  • 工具要求
  • 工具安装
    • DLL路经确认
    • 工具使用
    • 工具使用样例
      • 操作阶段:DLL劫持路径发现
        • 操作阶段:DLL劫持利用
          • 操作阶段:最终结果和日志记录
          • 项目地址
          • 参考资料
          • https://arxiv.org/abs/2108.10422
          • https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
          • https://www.nuget.org/packages/PeNet/?
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
          http://www.vxiaotou.com