Skip to content

游侠安全网

关注网络与数据安全

Primary Menu
  • 业界
  • 安全
  • 网络
  • 办公
  • 厂商
  • 培训
  • 应用
  • 影音
  • 数码
  • 文摘
  • 猎头
  • 程序
  • 站长
  • 系统
  • 随笔
  • 安全

十大进程注入(一) DLL远程线程劫持注入技术解析

杭州美创科技 2019年9月23日 1 minute read
进程注入是一种广泛应用于恶意软件或无文件攻击中的躲避检测的技术。其需要在另一个进程的地址空间内运行特制代码,进程注入改善了不可见性、同时一些技术也实现了持久化。

而所谓的DLL注入是诸多进程注入方法中最常用的技术。恶意软件将恶意的动态链接库的路径写入另一个进程的虚拟地址空间内,通过在目标进程中创建远程线程来确保远程进程加载它。而因为DLL本身是由感染后的进程加载的同时PE文件也并没有对系统进行过多的敏感操作,所以这种技术具有相当强的一种隐蔽性。

01

注入原理

关键函数:CreateRemoteThread()

利用Windows远程线程机制,需要在本地进程中通过CreateRemoteThread函数在其他进程中开启并运行一个线程。因此,把LoadLibrary 函数作为 CreateRemoteThread开启的线程函数,把要加载的DLL路径作为线程函数的参数即可。

为了使远程进程执行LoadLibrary函数加载DLL文件,却面临着两个棘手的问题:

如何向远程进程传递需要加载的DLL路径?  ------①

如何获得远程进程中LoadLibrary函数的地址?----②

为了解决这些问题,我们在后面会一一给出解决方案

02

注入过程

为了解决问题①,我们可以通过Windows API函数把路径写入远程进程中,主要包括:OpenProcess(),VirtualAllowEx(),WriteProcessMemory(),VirtualFreeEx()等把DLL路径加载到远程进程中。具体流程如下

1、获取目标进程句柄

使用OpenProcess()函数打开远程进程的句柄。

2、在目标进程分配内存空间

使用VirtualAllowEx()函数在目标进程中分配足够的内存空间,用于保存要加载DLL的路径。

3、写入DLL路径至目标进程

使用WriteProcessMemory()函数把需要加载的DLL路径写入到远程进程分配的内存空间。

4、获取LoadLibraryW地址

为了解决问题②,我们需要明确Kernel32.dll是系统基本库,且Windows系统中,所有进程加载Kernel32.dll模块基址是固定且一致的,所以只需获取本地进程中LoadLibrary地址。同理LoadLibraryW函数位于kernel32.dll中,并且系统核心DLL会加载到固定地址,所以系统中所有进程的LoadLibraryW函数地址是相通的。用GetProcAddress函数获取本地进程LoadLibraryW地址即可。

5、在目标进程中运行远程线程

用 CreateRemoteThread 函数在远程进程中创建一个线程,让新线程调用正确的LoadLibrary函数并在参数中传入第2步分配的内存地址。这时,DLL已经被注入到远程进程的地址空间中,DLL的DllMain函数会收到DLL_PROCESS_ATTACH 通知并且可以执行我们想要执行的代码。当DllMain返回的时候,远程线程会从LoadLibraryW/A调用返回到BaseThreadStart函数。BaseThreadStart函数然后调用ExitThread,使远程线程终止。

03

防御方法

  1. 加固本身程序,遍历路径下的dll文件,确定MD5和数字签名安全后再进行后续加载。
  2. 安装木马查杀工具,实时监控远程线程调用情况
  3. 查看是否有不明端口开放以及对端口通信进行监控。
  4. 拦截自身LoadLibraryExW函数,防止远程线程在自身程序加载DLL
Tags: 劫持注入 杭州美创科技

Post navigation

Previous: 天翼智能生态博览会 | 美创科技多维度展现产品实力​
Next: 《在线交互安全应用指南》 | 瑞数信息联合安全牛重磅发布!

相关资讯

20260530155614841775
  • 安全
  • 随笔

写了一款记录U盘插拔、文件操作,并给操作人拍照的软件

网路游侠 2026年5月30日
20260522010426896595
  • 安全

网络安全检查清单(2026版)|等保合规自查必备Checklist

网路游侠 2026年5月22日
20260514085426351450
  • 安全

16 个公开 CVE 撕开汽车安全盲区:开源小组件,也能变成大风险

网路游侠 2026年5月14日

最近更新

  • 法国政府加密通讯平台 Tchap 遭黑客入侵,官方宣称加密聊天记录未泄露
  • 告别繁琐代码!WordPress 网站添加统计代码的终极解决方案
  • 写了一款记录U盘插拔、文件操作,并给操作人拍照的软件
  • 快速入门FreeFileSync:免费开源,数据同步备份神器
  • 免费日志审计软件 GreenLogAudit 发布 v1.0.5
  • 网络安全检查清单(2026版)|等保合规自查必备Checklist
  • 什么是 nDPI?开源深度包检测引擎 nDPI 全面解析
  • Windows日志采集工具:从NXLog到Winlogbeat,国产免费客户端只有WinLogAgent
  • 强迫症狂喜:WinLogAgent 1.0.3 升级:目录只有1个exe啦!
  • WinLogAgent 1.0.3 发布:可能是这个星球上“违反广告法般漂亮”的 Windows 日志采集客户端,永久免费!

可能错过

20260610043908045002
  • 业界

法国政府加密通讯平台 Tchap 遭黑客入侵,官方宣称加密聊天记录未泄露

网路游侠 2026年6月10日
20260609180436920351
  • 站长

告别繁琐代码!WordPress 网站添加统计代码的终极解决方案

网路游侠 2026年6月10日
20260530155614841775
  • 安全
  • 随笔

写了一款记录U盘插拔、文件操作,并给操作人拍照的软件

网路游侠 2026年5月30日
快速入门FreeFileSync:免费开源,数据同步备份神器
  • 应用

快速入门FreeFileSync:免费开源,数据同步备份神器

网路游侠 2026年5月29日
  • 业界
  • 安全
  • 网络
  • 办公
  • 厂商
  • 培训
  • 应用
  • 影音
  • 数码
  • 文摘
  • 猎头
  • 程序
  • 站长
  • 系统
  • 随笔
陕ICP备11003551号-2 Copyright YouXia.ORG(游侠安全网)© All rights reserved. | MoreNews by AF themes.