【逆向】Windows 系统调用流程 + SSDT/ShadowSSDT/ETW/VT Hook + 内核 / 用户层区别

一、Windows 系统调用完整执行流程

  1. 用户态API(如ReadProcessMemory)调用ntdll.dll里的Native API
  2. Native API 将系统调用号 存入EAX/RAX,参数入栈/寄存器
  3. 执行sysenter/syscall指令,从用户态切到内核态
  4. 内核找到MSR寄存器指向的系统调用入口KiSystemCall64
  5. 校验参数、线程模式、栈,进入系统调用分发
  6. SSDT得到内核函数地址,调用对应内核服务
  7. 执行完将结果返回EAX/RAX,通过sysexit/sysret切回用户态
  8. 逐层返回,完成系统调用

二、四种系统调用Hook实现原理

1. SSDT Hook(系统服务描述表)

  • 作用:Hook普通原生系统调用(进程/线程/内存/文件)
  • 原理:修改SSDT表中函数地址,指向自己的过滤函数
  • 适用:x86时代主流;x64受KVA Shadow/PG保护,极难稳定

2. ShadowSSDT Hook(影子系统服务表)

  • 作用:HookWin32k GUI系统调用(窗口、消息、渲染)
  • 原理:结构与SSDT类似,专门处理GUI相关系统调用
  • 限制:仅GUI线程使用,同样受内核保护

3. ETW Hook(事件追踪)

  • 作用:非侵入式监控系统调用,不修改内核代码/表
  • 原理:系统调用进入/离开时会触发ETW事件,注册回调捕获
  • 优点:稳定、不被PatchGuard杀、兼容性极强
  • 缺点:只能监控,无法阻断/修改参数

4. VT Hook(虚拟化Hook)

  • 作用:最高权限、底层拦截,可穿透绝大多数防护
  • 原理:利用CPU虚拟化,将系统置于VMX非根模式
  • syscall触发VM-Exit,由VMM拦截处理
  • 优点:可Hook任意指令/函数,无法被常规手段检测
  • 缺点:开发复杂、依赖CPU虚拟化支持

三、内核态 Hook vs 用户态 Hook

用户态 Hook

  • 位置:IAT、Inline、内存、DLL注入
  • 范围:仅限当前进程
  • 权限:低,易被反调试、保护进程拦截
  • 实现:简单、稳定、开发快
  • 场景:普通逆向、游戏辅助、应用层安全

内核态 Hook

  • 位置:SSDT、内核函数、Minifilter、驱动回调
  • 范围:全局,所有进程
  • 权限:高,可监控/拦截系统级行为
  • 风险:易触发PatchGuard/蓝屏,受KVA Shadow保护
  • 场景:安全软件、反作弊、DMA配套、系统监控

四、总结

系统调用:用户态→sysenter→内核→查SSDT→执行内核函数→返回。SSDT/ShadowSSDT是修改系统调用表;ETW是无侵入监控;VT是虚拟化底层拦截。用户态只管单进程、简单安全;内核态全局生效、权限高但风险大、受PG/KVA限制。

相关推荐
扬帆破浪1 小时前
免费开源AI软件.桌面单机版,可移动的AI知识库,察元 AI桌面版:公司只允许装签名应用 给察元AI打企业内部分发包
人工智能·windows·电脑·知识图谱
布朗克1681 小时前
Claude Code 2026中文教程指南入门:Mac/Windows安装配置全攻略
windows·macos·claude·code
it's all you1 小时前
Windows 10 安装 Docker Desktop 完整教程(含常见问题排查)
windows·docker·容器
扬帆破浪2 小时前
免费开源AI软件.桌面单机版,可移动的AI知识库,察元 AI桌面版:装一台到家用台式 把工作笔记本的对话历史迁过去
人工智能·windows·电脑·知识图谱
最幸伏的人2 小时前
PyCharm无限创建Python进程故障总结
windows·python·pycharm
www.022 小时前
(二)windows下CLIProxyAPI:手动添加ChatGPT账号(个人记录)
人工智能·windows·chatgpt·算力·token·反代·cliproxyapi
Byron Loong17 小时前
【调试】Dump 文件分析的完整流程
windows
Geoking.19 小时前
VSCode 安装 Claude Code 插件 + ccswitch 配置 DeepSeek API 完整教程(Windows 新手向)
ide·windows·vscode
潘达斯奈基~20 小时前
Windows 下 Claude Code使用 Agent Teams 配置教程
windows