有没有办法检测最终用户系统上的恶意软件是否正在修改HTML DOM?我有一个受HTTPS保护的网站,最近遇到了支持电话,用户在我的网站上看到了广告。我的网站上没有广告,我们最终在最终用户的系统上运行了反病毒扫描,该系统发现并清除了许多感染,之后广告消失了。遗憾的是,我无法提供任何代码示例,因为我甚至不知道从哪里开始。
答案 0 :(得分:2)
可以使用MutationObserver
检测DOM修改(由所有主要供应商支持)。
但是,可能很难检测哪些修改是恶意的,哪些修改不是。
或许需要考虑一下:根据恶意软件的工作原理,您可以阻止script
标记的插入(或至少执行)。这可能会阻止天真的恶意软件,但这是一场猫捉老鼠游戏。
答案 1 :(得分:0)
当涉及到它时,你无法控制你无法控制的计算机上发生的事情。足够先进的恶意软件会检测到您检测到它的企图,并会对您的结果产生影响。
它说,有一些技巧可以用来试图让攻击者更难。
编写自己的代码,知道你知道你的dom应该是什么样子。攻击者将阻止您的代码运行。
更新代码,以便每隔很多秒与应用程序服务器进行交互。攻击者将复制此段代码并停止运行原始检查。
更新代码以执行需要最少已知时间的复杂操作。攻击者将回复上述内容
将您的检查代码与您的业务逻辑混合在一起,并对所有内容进行模糊处理。攻击者可以创建自己的UI,与您的服务器交互并显示而不是您的ui
现在,仅仅因为你在战斗的失败方面,这并不意味着它是无用的。这真的取决于谁可能会攻击您的服务器,以及他们想要与您进行军备竞赛的资源数量与您想要花费多少资源对抗