CN103106085A - 一种基于智能化远程线程注入技术方法 - Google Patents
一种基于智能化远程线程注入技术方法 Download PDFInfo
- Publication number
- CN103106085A CN103106085A CN 201110369394 CN201110369394A CN103106085A CN 103106085 A CN103106085 A CN 103106085A CN 201110369394 CN201110369394 CN 201110369394 CN 201110369394 A CN201110369394 A CN 201110369394A CN 103106085 A CN103106085 A CN 103106085A
- Authority
- CN
- China
- Prior art keywords
- dll
- remote thread
- function
- remote
- thread injection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
一种基于智能化远程线程注入技术方法:监控系统要求具有实时性和隐藏性,远程线程注入技术能实现在Windows系统下进程的隐藏。将监控程序编译成动态链接库文件,采用远程线程注入技术注入到系统进程运行,能有效地提高监控系统的安全性能。本方法分析了基于远程线程注入的监控系统的关键技术和实现方法,通过设置定时器的方法解决了系统实时性需求,通过给出的远程线程注入技术解决了隐藏性需求。最后分析采用两级监控和应对安全检测技术来提高监控系统的安全性。
Description
技术领域
本发明涉及一种基于智能化远程线程注入技术方法。这种方法是主要用在远程线程注入的监控系统实现的关键技术和实现方法,分析了在DLL中定时监控功能的实现,提出采用两级监控的方法来提高监控系统的功能。
背景技术
监控系统必须要保证系统的正常运行,并最大程度地减少系统资源负担,同时要防止被用户结束,较为有效的方法就是把进程隐藏。进程隐藏的实现机制包括修改动态链接库、应用程序的接口挂钩、远程线程注入等方式。远程线程注入技术是指在指定远程进程中创建线程,通过注入到指定进程的内存地址空间。通过远程线程注入技术将所需的线程代码注入的目标进程中运行,不创建独立的进程,很难被发现,但常规的远程线程注入技术难以避过安全检测技术的检测。远程线程注入被广泛的运用到电脑病毒传播中,然而也由于其不易被使用者删除的特点可以协助管理人员安装监控、计费等系统管理程序而不被使用者破坏,达到安全管理的目的。
发明内容
针对以上的不足,本发明的目的是提出一种基于智能化远程线程注入技术方法,实现在Windows系统下进程的隐藏,将监控程序编译成动态链接库文件,采用远程线程注入技术注入到系统进程运行,能有效地提高监控系统的安全性能。
每一DLL必须有一个人口点,DllMain函数是DLL模块的默认入口点。DllMain负责初始化和结束工作。DLLMain函数在将DLL模块加载到进程时、DLL模块与进程分离时被调用。Delphi语言中,DLL入口由DLLProc传入。
在DLL文件中编写一个线程执行体函数ThreadProc实现监控的功能,比如监控某个程序是否在运行,如果没有则重新启动这个程序。定时功能可调用API函数SetTimer实现,比用组件精度高。在DLL注入到目标进程后,将监控程序创建一个线程,启动过程如图2所示。创建和结束线程分别用到CreateThread函数和TerminateThread函数。
CreateThread的函数定义:
其中lpStartAddress,lpParameter,lpThreadId三个参数是必须的。lpStartAddress参数指向的是线程执行体ThreadProc的开始地址;lpParameter指针类型,线程的传入参数,给线程执行体ThreadProc传递数据;lpThreadId返回创建线程ID,这是控制线程必须的。
实现监控功能的DLL文件的主要代码如下:
具体实施方式
远程线程注入技术的主要步骤如下:
(1)调整权限,使程序可以访问其他进程的内存空间(EnableDebugPriv)。
(2)得到远程进程的HANDLE(OpenProcess)。
(3)在远程进程中为要注入的数据分配内存(VirtualAllocEx)。
(4)将注入DLL复制到本进程,实现函数DLL装载过程(MapInjectFile)。
(5)把DLL资源复制到分配的内存中(WriteProcessMemory)。
(6)用CreateRemoteThread启动远程的线程 。
Claims (2)
1.一种基于智能化远程线程注入技术方法:远程线程注入是通过CreateRemoteThread函数建立一个远程线程,调用LoadLibrary函数来加载指定的DLL。
在Windows系统下,每个进程都拥有自己的地址空间,各个进程之间都是相互独立的。需要在远程进程的内存空间里申请一块内存空间,写入需要注入的DLL的路径。需要用到的API函数有:
(1)OpenProcess():打开目标进程,得到目标进程的操作权限。
(2)VirtualAllocEx():用于在目标进程内存空间中申请内存空间以写入DLL的文件名。
(3)WriteProcessMemory():往申请到的空间中写入DLL的文件名。
2.根据权利要求1的远程线程注入技术方法,其特征是每一线程DLL必须有一个人口点,DllMain函数是DLL模块的默认入口点。DllMain负责初始化和结束工作。DLLMain函数在将DLL模块加载到进程时、DLL模块与进程分离时被调用。Delphi语言中,DLL入口由DLLProc传入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110369394 CN103106085A (zh) | 2011-11-15 | 2011-11-15 | 一种基于智能化远程线程注入技术方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110369394 CN103106085A (zh) | 2011-11-15 | 2011-11-15 | 一种基于智能化远程线程注入技术方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103106085A true CN103106085A (zh) | 2013-05-15 |
Family
ID=48313970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110369394 Pending CN103106085A (zh) | 2011-11-15 | 2011-11-15 | 一种基于智能化远程线程注入技术方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103106085A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014206295A1 (en) * | 2013-06-25 | 2014-12-31 | Tencent Technology (Shenzhen) Company Limited | Method, device and computer-readable storage medium for monitoring uninstallation event in operation platform |
CN106201633A (zh) * | 2016-07-29 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 一种注入dll文件的方法及装置 |
CN106371899A (zh) * | 2015-07-22 | 2017-02-01 | 无锡天脉聚源传媒科技有限公司 | 一种线程参数的处理方法及装置 |
CN106708556A (zh) * | 2016-07-19 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 数据显示方法及装置 |
CN109726067A (zh) * | 2017-10-30 | 2019-05-07 | 腾讯科技(深圳)有限公司 | 一种进程监控方法以及客户端设备 |
-
2011
- 2011-11-15 CN CN 201110369394 patent/CN103106085A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014206295A1 (en) * | 2013-06-25 | 2014-12-31 | Tencent Technology (Shenzhen) Company Limited | Method, device and computer-readable storage medium for monitoring uninstallation event in operation platform |
CN106371899A (zh) * | 2015-07-22 | 2017-02-01 | 无锡天脉聚源传媒科技有限公司 | 一种线程参数的处理方法及装置 |
CN106708556A (zh) * | 2016-07-19 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 数据显示方法及装置 |
CN106201633A (zh) * | 2016-07-29 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 一种注入dll文件的方法及装置 |
CN109726067A (zh) * | 2017-10-30 | 2019-05-07 | 腾讯科技(深圳)有限公司 | 一种进程监控方法以及客户端设备 |
CN109726067B (zh) * | 2017-10-30 | 2021-08-24 | 腾讯科技(深圳)有限公司 | 一种进程监控方法以及客户端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102841795A (zh) | 一种远程线程注入技术方法 | |
CN103106085A (zh) | 一种基于智能化远程线程注入技术方法 | |
Mohan et al. | Real-time systems security through scheduler constraints | |
CN106155727B (zh) | 一种应用程序的更新方法、装置及终端 | |
WO2012088109A3 (en) | Providing a security boundary | |
DE202015009286U1 (de) | Kurzlebige Anwendungen | |
WO2008051842A3 (en) | Methods and systems for accessing remote user files associated with local resources | |
CN104683573B (zh) | 关机闹钟的实现方法和移动终端 | |
KR20120095758A (ko) | 가상 머신 스케줄 시점 조절 장치 및 방법 | |
CN103581187A (zh) | 访问权限的控制方法及控制系统 | |
CN103870749A (zh) | 一种实现虚拟机系统的安全监控系统及方法 | |
RU2015145292A (ru) | Управление доступом во время выполнения к интерфейсам прикладного программирования | |
CN102880817A (zh) | 计算机软件产品运行保护方法 | |
Gao et al. | E-android: A new energy profiling tool for smartphones | |
WO2009069321A1 (ja) | セキュリティ管理プログラム、セキュリティ管理方法および携帯端末装置 | |
US20090228861A1 (en) | Method and System for Improved Tool Interaction with a Target | |
US20160277505A1 (en) | Method and Device for Controlling Intelligent Terminal | |
Lanotte et al. | Runtime enforcement for control system security | |
CN108021807B (zh) | Linux容器的细粒度沙盒策略执行方法 | |
CN105975333A (zh) | 应用程序运行控制的方法及装置 | |
CN105844152A (zh) | 一种基于SELinux系统的Linux内核加固方法及硬件平台 | |
US9135461B1 (en) | Heterogeneous virtual machines sharing a security model | |
RU2019138370A (ru) | Система и способ управления доступом в электронных блоках управления транспортными средствами | |
CN107368498A (zh) | 优化MySQL悲观锁的锁等待超时时间的方法及装置 | |
CN105335212A (zh) | 一种基于分布式实施的云计算强制访问控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130515 |