win2k下隐藏进程

易语言隐藏进程-易语言 易语言隐藏进程 立即下载

win2k下隐藏进程
 【关键词】:win2k下隐藏进程 

 录入:曾进 来源:huiyun.net 时间:2004-2-20 18:44:42 点击:62次

WINDOWS操作系统下,当我们无法结束或者不知道怎样结束一个程序的时候,或者是懒得去找“退出”按钮的时候,通常会按“CTRL+ALT+DEL”呼出任务管理器,找到想结束的程序,点一下“结束任务”就了事了,呵呵,虽然有点粗鲁,但大多数情况下都很有效,不是吗?

设想一下,如果有这么一种软件,它所要做的工作就是对某个使用者在某台电脑上的活动作一定的限制,而又不能被使用者通过“结束任务”这种方式轻易地解除限制,那该怎么做?无非有这么三种方法:1.屏蔽“CTRL+ALT+DEL”这个热键的组合;2.让程序不出现在任务管理器的列表之中;3.让任务管理器无法杀掉这个任务。对于第一种方法,这样未免也太残酷了,用惯了“结束任务”这种方法的人会很不习惯的;对于第二种方法,在WINDOWS 9X下可以很轻易地使用注册服务进程的方法实现,但是对于WINDOWS NT架构的操作系统没有这个方法了,进程很难藏身,虽然仍然可以实现隐藏,但实现机制较为复杂;对于第三种方法,实现起来比较简单,我的作品:IPGate 网址过滤器 就是采用的这种方式防杀的,接下来我就来介绍这种方法。

任务管理器的“结束任务”实际上就是强制终止进程,它所使用的杀手锏是一个叫做TerminateProcess()的Win32 API函数,我们来看看它的定义:

BOOL TerminateProcess(
HANDLE hProcess; // 将被结束进程的句柄
UINT uExitCode; // 指定进程的退出码
);

看到这里,是不是觉得不必往下看都知道接下来要做什么:Hook TerminateProcess()函数,每次TerminateProcess()被调用的时候先判断企图结束的进程是否是我的进程,如果是的话就简单地返回一个错误码就可以了。真的是这么简单吗?先提出一个问题,如何根据hProcess判断它是否是我的进程的句柄?答案是:在我的进程当中先获得我的进程的句柄,然后通过进程间通讯机制传递给钩子函数,与hProcess进行比较不就行了?错!因为句柄是一个进程相关的值,不同进程中得到的我的进程的句柄的值在进程间进行比较是无意义的。

怎么办?我们来考察一下我的hProcess它是如何得到的。一个进程只有它的进程ID是独一无二的,操作系统通过进程ID来标识一个进程,当某个程序要对这个进程进行访问的话,它首先得用OpenProcess这个函数并传入要访问的进程ID来获得进程的句柄,来看看它的参数:

HANDLE OpenProcess(
DWORD dwDesiredAccess, // 希望获得的访问权限
BOOL bInheritHandle, // 指明是否希望所获得的句柄可以继承
DWORD dwProcessId // 要访问的进程ID
);

脉络渐渐显现:在调用TerminateProcess()之前,必先调用OpenProcess(),而OpenProcess()的参数表中的dwProcessId是在系统范围内唯一确定的。得出结论:要Hook的函数不是TerminateProcess()而是OpenProcess(),在每次调用OpenProcess()的时候,我们先检查dwProcessId是否为我的进程的ID(利用进程间通讯机制),如果是的话就简单地返回一个错误码就可以了,任务管理器拿不到我的进程的句柄,它如何结束我的进程呢?

至此,疑团全部揭开了。由Hook TerminateProcess()到Hook OpenProcess()的这个过程,体现了一个逆向思维的思想。其实我当初钻进了TerminateProcess()的死胡同里半天出也不来,但最终还是蹦出了灵感的火花,注意力转移到了OpenProcess()上面,实现了进程防杀。喜悦之余,将这心得体会拿出来与大家分享。
易语言-易语言驱动隐藏进程 易语言驱动隐藏进程源码 立即下载

相关推荐

易语言 win7 64位隐藏进程模块,保护进程模块

易语言隐藏进程模块支持WIn7 64位,保护进程 ,防破解,防注入,防Ce,WPE

易语言隐藏进程

易语言隐藏进程源码,隐藏进程,进程隐藏,提升进程权限D,取进程EProcess,十六文本至长整数,读物理内存,写物理内存,取特殊目录,获取特别文件夹位置_,从列表id取路径_,NtSystemDebugControl,ZwQuerySystemInformation

易语言隐藏进程模块源码.rar

易语言隐藏进程模块源码.rar

易语言隐藏进程模块

易语言隐藏进程模块源码 系统结构:隐藏进程,用保护型打开进程,提升进程权限,写物理内存,读物理内存,取进程EProcess,十六文本至长整数,取字节集指针_,NtSystemDebugControl,取自进程ID,关闭系

易语言如何防止进程被终止或者如何隐藏进程

如何防止进程被终止或者如何隐藏进程 例如:当打开我的软件后,任务管理器将无法结束该软件! 不管用什么方法,任务管理器结束不了我的程序就行!或者我的软件进程不在任务管理器中显示 禁止任务管理器就别说了。。不要 终止进程 (“taskmgr.exe”) 易语言学习的朋友可以加群311120457一起学习.交流。 .版本 2 .子程序 隐藏进程, 逻辑型, 公开, 成功返...

weixin_csdn0009的博客 9644

易语言编程-x64驱动强制隐藏DLL模块技术(过第三方dll检测)

这个功能呢可以让易语言隐藏64位进程里任何dll模块,包括自己注入的dll也可以隐藏,而且是驱动级别隐藏。所以很大写DLL方式辅助的一注入DLL到游戏就被发现检测,提示第三方DLL程序,关闭后再进行游戏。并且隐藏后,任何驱动工具(包括CE工具)都无法查看枚举被隐藏的DLL文件以及找不到DLL内存区域,就算是有保护的游戏比如 dxf ,用这个功能也一样可以隐藏进程中任意DLL模块不被发现。.参数 模块句柄, 长整数型, , 要隐藏的dll或exe模块句柄。第三方DLL检测,是很多游戏都会做的,

hzw320的博客 2707

WinNT & Win2K下实现进程的完全隐藏

WinNT & Win2K下实现进程的完全隐藏作者:AntGhazi 主页:antghazi.yeah.net     面对众多的计算机高手,考虑许久,终于还是决定出来献丑一下,文章内尽量使用最简洁易懂的词汇及例子来介绍,希望能够对一些初学与进阶者有所帮助。    关于进程隐藏,98下的例子数不胜数。WinNT/Win2K下的隐藏方法,西祠的高手shotgun在去年的6月就已经在网上发布出实例《

回家念经(kv300)--编程之禅 1421

易语言隐藏进程模块源码(1).rar

易语言隐藏进程模块源码(1).rar

易语言隐藏所有进程模块

易语言隐藏所有进程模块源码,隐藏所有进程模块,加入日志,子程序_PEB获取Kernel32基址,子程序_获取模块地址,子程序_读内存地址,子程序_写内存地址

WINNT & WIN2K下实现进程的完全隐藏——宿主程序

面对众多的计算机高手,考虑许久,终于还是决定出来献丑一下,文章内尽量使用最简洁易懂的词汇及例子来介绍,希望能够对一些初学与进阶者有所帮助。 关于进程隐藏,98下的例子数不胜数。WinNT/Win2K下的隐藏方法,西祠的高手shotgun在去年的6月就已经在网上发布出实例《揭开木马的神秘面纱》 ,我也多次拜读他的文章,对他的计算机水平及热心帮助朋友的作风十分敬佩。这里也可算是对shotgun的文

独旅天涯 715
上一篇: 取系统信息
下一篇: Win2000下进程隐藏的一种方案
超然楼
博客等级 码龄24年 24粉丝 31原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值