2017-07-19 61 views
1

我在想什么有办法在JavaScript中,检查该网站加载完全安全的,并且它没有修改用户的网站(例如,通过恶意插件)如何检查网页加载安全

我发现,往往这样的恶意插件正在打破SSL通过增加广告或其他恶意脚本,所以我想知道我怎么能检测到混合内容,如显示此图像警告: mixed content example (在从https://www.ssl2buy.com/wiki/fix-mixed-content-nonsecure-items-error-on-ssl-secure-site拍摄的图像)

我发现了以下问题,但我相信这些问题不能完全回答我的问题问题:

我的问题是如何检测,如果网站是不安全加载(或在用户端修改),即使使用的协议是https://

备注:我知道这样的脚本可以通过添加恶意脚本/广告/等的插件轻松删除,但是我宁愿有额外的安全层。

+0

我不确定这是可能的。这超出了JavaScript的功能。 –

+0

我明白了,这是我在问这个问题时所期待的。但是我会在这里留下问题,以防有人发现这个问题的一些天才解决方案。 – vakus

+0

SSL没有损坏,页面由多个请求组成,并且不是全部都是SSL。仔细阅读信息。 – zaph

回答

1

我在想什么有办法在JavaScript中检查 网站加载完全安全

那么假设一个恶意插件能够操纵你的DOM的内容我相信你不能。

然而,你可以检查页面是否是加载完全加密

这样做的一种方法是检查协议A)当前URL和B)DOM中的所有href和src属性。 但是,这不能证明您的网页已经完全安全加载。它只能确认您网站上的所有加载内容都已加密,但攻击者可以(并且实际上)获得TLS/SSL证书(例如使用letsencrypt),并仅使用HTTPS分发其恶意代码。 此外,你将不得不检查你的DOM的iFrames哪些可能也能够执行恶意代码。

你可以这样做,可能唯一解决的问题是要检查所有的HREF & SRC如上所述和还比较它们的白名单。

最后,正如您已经提到的,您的脚本可以很容易地被恶意插件拦截。因此,我不相信这样的脚本是值得的。