如何屏蔽 dll 注入?

2021-03-28 18:40:36 +08:00
 lander
如题,软件开发小白。在排查一些软件兼容性问题,使用 Process Monitor 等工具发现我们的软件被第三方软件的 dll 注入了,请教除了直接卸载这个三方软件,还有无简单的方法临时屏蔽这些三方软件 dll 注入?
1687 次点击
所在节点    问与答
4 条回复
ysc3839
2021-03-28 18:49:28 +08:00
没什么简单办法,真要搞的话就是游戏反作弊那套技术了。
Mithril
2021-03-28 18:51:31 +08:00
自我保护向来都是成本问题,其次才是技术问题。主要还是看你想花多大成本去做这个东西了。
从最简单的用个守护线程,检测到第三方的文件名或者签名直接自爆。到复杂的你自己实现个类似主动防御的功能。只看你们打算下多大决心去搞了。
当然我个人觉得最好的办法就是收集好证据,直接起诉对方一锅端就完了。
3dwelcome
2021-03-28 21:26:25 +08:00
注入分系统级和普通级别。如果你这个软件是系统全局注入(比如杀毒软件),那么几乎每个启动的 EXE,都会被此软件监控。
而且一般不能强制卸载,DLL 注入总会修改你一些代码,达到监控目的。强制卸载正常程序也会报错。
你要说最简单屏蔽的方法,我能想到的也只有注册一个傀儡后台服务,来绕过监控了。
BeautifulSoap
2021-03-28 21:42:29 +08:00
这第三方的定义就非常模糊,软件启动后涉及到的各种 dll 非常多非常复杂,包括系统,驱动之类的。而且各种输入法也都会往软件里注 dll 呢,这样客户装个搜狗、QQ 、手心 etc 。。。到头来实际上就成了一个是搞 dll 黑名单和还是白名单呢的问题

至于方法,也无非是随时监测线程数量是否异常,监测进程关联的 dll 之类的,你没法阻止 dll 注入,只能事后监测。因为阻止 dll 注入是杀毒软件或反作弊器的工作了,难度不低

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/765922

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX