TopSoftdeveloper/Bypass-SetWindowDisplayAffinity
GitHub: TopSoftdeveloper/Bypass-SetWindowDisplayAffinity
该工具演示了在 Windows 内核驱动层级绕过 SetWindowDisplayAffinity 窗口捕获保护的方法,无需 DLL 注入或用户模式 API Hook。
Stars: 130 | Forks: 12
# 内核级窗口捕获绕过(教育研究)
## 更高级的版本已在另一个仓库发布
无需使用驱动的解决方案已在 https://github.com/TopSoftdeveloper/SetWindowDisplayAffinity-Bypass 中发布
## 概述
现代 Windows 应用程序可能依赖 **`SetWindowDisplayAffinity`**(`WDA_MONITOR`,`WDA_EXCLUDEFROMCAPTURE`)来防止截屏和屏幕录制。
在**用户模式级别**,这些保护机制相对为人所熟知。
本项目演示了一种**内核模式方法**,使用**驱动级补丁**来绕过此类限制,并允许对受保护窗口进行屏幕捕获。
## 技术摘要
* 运行在 **内核 / 驱动级别**
* 在**用户模式 API 底层**绕过窗口捕获保护
* **不**依赖于:
* DLL 注入
* 用户模式 API Hook
* 演示了如何从内核空间中和显示亲和性强制执行机制
## 测试环境
| 组件 | 值 |
| ------------- | ------------------------ |
| 操作系统 | Windows 10 |
| 版本 | 22H2 |
| 内部版本号 | 19045 |
| 测试平台 | VMware(虚拟机) |
✔️ 在测试的虚拟化环境中功能完备且稳定。
## 关于真实硬件使用的说明
本项目是在**虚拟机内部**验证的。
对于**真实的 Windows 安装**,驱动加载和内核补丁需要额外的设置和保障措施。
开发者应参考以下项目以了解**驱动安装和内核 Hook 技术**:
🔗 **参考:**
[https://github.com/iPower/KasperskyHook](https://github.com/iPower/KasperskyHook)
该仓库提供了以下方面的指导:
* 正确的驱动加载
* 内核 Hook 基础设施
* 针对真实系统的兼容性考量
## 重要注意事项
* 内核级修改:
* 可能会触发 PatchGuard
* 可能需要测试签名模式
* 如果实施不当可能会导致系统不稳定
* 行为可能因以下因素而异:
* Windows 版本
* GPU 驱动
* 安全软件
本项目**不保证**在测试配置之外的环境中的兼容性。
## 免责声明
本仓库的发布**仅出于教育、研究和防御性安全分析的目的**。
作者:
* **不**鼓励绕过 DRM、隐私保护或安全机制
* 对滥用、系统损坏或法律后果**不承担**责任
* 强烈建议遵守所有适用的法律和软件条款
## 目标受众
* 逆向工程师
* Windows 内核研究员
* 安全专家
* 恶意软件分析师(防御性研究)
* 操作系统内部机制学习者
**不适用于最终用户或生产环境。**
## 联系与支持
如需研究讨论或支持:
* **Telegram**: [@somerwork](https://t.me/somerwork)
* **捐赠 (BTC)**:
`bc1q43u0n865fuxc4j2vgm4wp98xuuaawgkgq8yrf4`
标签:Linux, UML, Windows驱动开发, 内核层, 安全防御绕过, 屏幕录制, 底层安全研究, 绕过截屏保护