进程权限与OpenProcess

今天写了一个DLL,通过OpenProcess获取一个进程的句柄,可是OpenProcess总是返回0。但这个段代码不写在DLL中,而是嵌入使用这段代码的调用代码时,却可以正常工作,让我很郁闷。

查了半天发现,貌似是需要给进程提权,有更高的权限时,OpenProcess才能正常使用,我试了试,果然可以。

这里是给程序提权代码的地址和大家分享下:

标题:三个给进程提权的方法   地址:http://bbs.chinapyg.com/viewthread.php?tid=55381

我使用了第一个方法,其他两种方法没有试验

因为我的DLL中写了类,分成了好几个文件,就不贴源代码了~~~

### 回答1: Delphi 是一种应用程序开发环境,可以用于开发 Windows 平台的程序。在 Delphi 中,有一个函数叫做 OpenProcess(),可以用来打开一个已知的进程,以便进行操作。但是,在某些情况下,程序可能会被杀毒软件或系统安全软件误判为恶意程序,从而被关闭或禁用。因此,为了防止这种情况发生,需要对 OpenProcess() 进行处理。 一种常用的做法是使用隐藏驱动程序,通过驱动程序操作,使进程无法被杀死。具体而言,就是在 Delphi 中调用驱动程序的接口,利用驱动程序的操作能力来完成进程的操作。该方法需要驱动程序具有管理员权限并且安装到系统目录下,否则无法执行。 另一种方法是通过代理程序来进行进程操作。代理程序的作用是代理 Delphi 程序进行进程操作,因此可以防止系统安全软件或杀毒软件对 Delphi 程序的干扰。具体实现方法是对需要操作的进程进行内存地址偏移,并将偏移后的地址传递给代理程序进行操作。代理程序要在系统启动时启动,并以管理员权限运行。 总之,为了保证 Delphi 程序正常运行,需要对进程防杀技术进行深入的研究和应用。同时,需要注意遵守相关法律法规,防止在使用该技术时违反相关规定。 ### 回答2: Delphi是一种常用的开发语言,可以用于开发Windows平台上的程序,包括进程管理方面,其中包括进程防杀的技术。 在Delphi中,通过使用openprocess()方法可以获取到一个指定的进程句柄,该句柄可以用于访问和控制该进程中的资源和数据。然而,该方法也为恶意程序提供了可乘之机,使得它们可以通过获取并关闭进程句柄来绕过杀毒软件等安全监控程序的控制,并在后台进行潜伏和恶意操作。 针对上述问题,可以通过以下几种方式来增强Delphi进程防杀的效果: 1. 使用特权级别高的进程权限 在使用openprocess()方法时,可以通过设置相应的访问权限,获取特权级别高的进程句柄来提高进程防杀的效果。这样便可以避免恶意程序通过低权限进程句柄来操纵系统进程的情况发生。 2. 密钥加密和动态域名解析的技术 在进程防杀方面,可以采用密钥加密和动态域名解析的技术来增强程序的安全性,增加恶意程序绕过的难度。 3. 监控并直接关闭恶意进程 同时,可以采用监控进程的方式来检测恶意进程,在检测到后直接关闭该进程,从而有效地遏制其恶意行为。 总之,Delphi进程防杀在开发防御恶意程序的应用程序过程中,必须要仔细考虑不同场景下的安全问题,结合不同的技术手段和方法来增强进程的安全性,以防止不法分子的入侵和恶意操作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值