论坛首页 安全工具分享区 阅读主题

[已解决]如何阻止windows 应用的粘贴功能

287 浏览 3 回复
#1 楼主 2026-06-01 21:09:03
我的需求是,保护敏感进程里的数据,不让里边的内容被粘贴到外边去。对于传统的程序,可以通过hook GetClipBoardData函数去阻止,但这个办法对于win11的开始菜单、商店、设置中心等程序无效(可以在这些程序的编辑框里单击右键,点粘贴,获取到内容),这些程序好像都是所谓的“应用”,我查了一下,“应用”程序依赖WinRT,一个似乎独立于winapi的运行时。
hook托管类语言的代码好像是比较困难的,这方面暂时不去想。
据说剪贴板数据存在内核里的共享内存上,那么不管GetClipBoardData还是winRT里边的代码,它肯定都要访问这个共享内存,是用NtOpenSection函数访问的吗?剪贴板对应的内核对象叫什么名字呢?
我该怎么做才能达到自己的目的?请高手指点!3Q

传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!


最后于 2024-6-17 15:10
被神经蛙555编辑

,原因: 已经解决

---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-281255.htm
#2 2026-06-01 21:09:03
这个帖子应该发到“求助问答”那个版块去。版主方便的话转移一下。

最后于 2024-4-9 15:52
被神经蛙555编辑

,原因:
#3 2026-06-01 21:09:03
好久了,都忘了这个帖子了。
那我自己回复一下吧。最后还是用了hook getClipboardData等函数的方法,给被保护的进程设置了一个“私有的”剪贴板。所谓“私有”,无非是自己创建一些内存块,把句柄保存起来提供给与剪贴板有有关的函数。
#4 2026-06-01 21:09:03
神经蛙555


好久了,都忘了这个帖子了。
那我自己回复一下吧。最后还是用了hook getClipboardData等函数的方法,给被保护的进程设置了一个“私有的”剪贴板。所谓“私有”,无非是自己创建一些内存块, ...

所以说还是有效的是吗

请登录后参与讨论

立即登录 注册账号