//直接上功能代码:

//定义函数,通过进程PID操作隐藏
NTSTATUS HideProcess(ULONG pid)
{//定义存放EPROCESS地址变量
ULONG64 L_pEPROCESS = 0;
//定义临时判断使用存放其他进程PID变量
ULONG L_pid = 0;
//获取自身EPROCESS结构
L_pEPROCESS = (ULONG64)PsGetCurrentProcess();
}

//获取进程链表偏移以及pid偏移
EPROCESS结构记录地址:https://blog.csdn.net/qq_41963135/article/details/121626905
//通过查看上方地址中的Win10下的EPROCESS结构记录可以发现+0x2e8是进程pid,+0x2f0是链表结构。
//开始写代码:

//定义两个链表结构体指针并赋值
PLIST_ENTRY L_headList =  (PLIST_ENTRY)(L_pEPROCESS+0x2f0);//得到头部
PLIST_ENTRY L_nextList = headList->Flink;//指向下一个链表结构//循环获取其他链表结构while (L_nextList  != L_headList){//结构减去相对偏移得到EPROCESS地址L_pEPROCESS = ((ULONG64)L_nextList - 0x2f0);//加上相对偏移得到进程pid地址并取出L_pid = *((ULONG*)(L_pEPROCESS + 0x2e8));//判断是否为要隐藏的进程pidif(L_pid == pid)//如果是就开始断链操作{//下一个的头部 = 头部L_nextList->Flink->Blink = L_nextList->Blink;//下一个的尾部 = 尾部L_nextList->Blink->Flink = L_nextList->Flink;//******此处省略关闭被隐藏进程时可能造成蓝屏的处理代码,留给学习思考的人去思考为什么关闭时会造成蓝屏,不知道的不确定是什么代码可以猜测性的评论打出,积极探讨,给我开代码的动力。[斜眼笑]//处理完毕成功返回return STATUS_SUCCESS;}//如果不是我们要操作的pid继续获取下一个结构L_nextList = L_nextList->Flink;}//如果没有我们要操作的pid当然就失败了return STATUS_ACCESS_DENIED;
}

Win10内核驱动断链式隐藏指定进程相关推荐

  1. 通过驱动断链来隐藏驱动

    隐藏指定驱动 尝试隐藏这个驱动 #include <ntifs.h>typedef struct _KLDR_DATA_TABLE_ENTRY {LIST_ENTRY InLoadOrde ...

  2. Win10内核驱动强制签名,必须要有 EV代码签名证书

    2016年7月,微软在MSDN宣布从Windows 10的1607版本开始,强制要求所有新的Win10 内核驱动程序,必须获得Windows硬件开发者中心仪表盘门户的数字签名才能在系统中运行.这项政策 ...

  3. Win10内核驱动强制签名,申请沃通 EV代码签名证书

    为什么80%的码农都做不了架构师?>>>    2016年7月,微软在MSDN宣布从Windows 10的1607版本开始,强制要求所有新的Win10 内核驱动程序,必须获得Wind ...

  4. 内核下断链隐藏进程(兼容多版本Windows系统,非硬编码)

    前言 在Windows内核下,我们可以通过获取EPROCESS结构来隐藏进程,EPROCESS是微软未公开的结构体,其本质上就是双向链表的一个节点,通过修改该双向链表即可达到隐藏进程的目的.但EPRO ...

  5. 内核驱动隐藏自身【断链】

    内核驱动加载断链式隐藏自身 //创建一个驱动对象数据结构 typedef struct _KLDR_DATA_TABLE_ENTRY {LIST_ENTRY64 InLoadOrderLinks;// ...

  6. (53)进程结构体EPROCESS,擦除 DebugPort 实现反调试,ActiveProcessLinks 断链实现进程隐藏

    一.进程的作用 进程最重要的作用是提供了CR3,10-10-12分页下CR3指向页目录表,2-9-9-12分页下CR3指向页目录指针表. 每个进程有一个或多个线程.本质上,没有进程切换,只有线程切换. ...

  7. _EPROCESS断链 —— 实现进程内核隐藏

    我们可以利用 _EPROCESS 结构体中的 ActiveProcessLinks 双向链表遍历进系统中的进程,并将特定进程从该双向链表中移除,以达到隐藏特定进程的目的. _EPROCESS _EPR ...

  8. 驱动开发:断链隐藏驱动程序自身

    与断链隐藏进程功能类似,关于断链进程隐藏可参考<驱动开发:DKOM 实现进程隐藏>这一篇文章,断链隐藏驱动自身则用于隐藏自身SYS驱动文件,当驱动加载后那么使用ARK工具扫描将看不到自身驱 ...

  9. 驱动编程:注册表回调,进程回调,文件回调,进程隐藏断链,窗口保护

    #include "struct.h"#define debug_pott_offset 0x298 //#define debug_pott_offset 0x1f0DWORD ...

最新文章

  1. 使用姿势估计进行跌倒检测
  2. linux wm虚拟机网络,复制多台虚拟机及简单的网络配置
  3. visual studio 添加链接文件
  4. python编程小案例_用Python3编程写第一个小案例!-Go语言中文社区
  5. lodash 根据某个字段排序处理
  6. 每天看一片代码系列(三):codepen上一个音乐播放器的实现
  7. react中创建一个组件_如何使用React和MomentJS创建一个Countdown组件
  8. 数据挖掘之数理统计与常见分布与假设检验
  9. 无法向会话状态服务器发出回话状态请求
  10. Python 如何在csv中定位非数字和字母的符号
  11. java计算机毕业设计宠物店管理系统设计与实现MyBatis+系统+LW文档+源码+调试部署
  12. Java NIO?看这一篇就够了!
  13. linux bond服务是什么,linux 查看bond
  14. VirtualBox安装增强工具时:Unable to install guest additions: unknown filesystem type 'iso9660'
  15. 深圳java程序员培训班哪里最好,深圳java程序员培训学费(学习Java要不要报班)
  16. js数组、数组嵌套根据某个字段排序(eachart图标双击事件、vue双击)
  17. 文旅灯光秀互动应用有什么优势
  18. 中国运动传感器陀螺仪行业市场供需与战略研究报告
  19. UR 机器人HMI 交互界面开发记录
  20. 制作大白菜装系统U盘以及重装系统

热门文章

  1. elasticsearch数据迁移备份还原
  2. ZZNUOJ_C语言1010:求圆的周长和面积(完整代码)
  3. gaps的安装__kali
  4. 【PyTorch实战】图像描述——让神经网络看图讲故事
  5. 电信1X网络收到第三方来电,对方主动挂断后,来电界面不消失的原因
  6. Ministory—Walden
  7. 词云修改样式——python
  8. C# Settings.Settings文件保存在哪里
  9. “票卡分析专用工具”功能介绍
  10. 【python笔记002】:字符串、正则表达式和爬虫基本库urllib、requests操作