如何将Perfidies(浏览器插件漏洞扫描程序)集成到我的网站中?

goo*_*ate 31 javascript browser security asp.net-mvc plugins

Perfidies/PlugindirMozilla插件漏洞数据库的客户端.我认为这个版本的变体在这个网站上用于面向最终用户.

我想将使用旧版Java,Silverlight,Flash等的任何浏览器重定向到"隔离"页面,要求他们在允许登录之前升级浏览器.

  • 为实现这一目标,我需要做出哪些技术改变?

  • 我必须了解Perfidies特定的javascript对象是什么?

  • 我应该做出任何部署问题或修改吗?

......

aKz*_*enT 1

您应该为您的问题提供更多背景信息。我会尽力帮助你,但会建议一种方法来做到这一点。

您提到您想要禁止用户登录,所以我认为最好的方法是将验证代码作为 javascript 包含在登录页面中。请记住,由于脚本是在客户端上执行的,因此无法保证它会真正执行,并且专家用户可以通过禁用脚本等方式规避您的“保护”。但如果您位于 Intranet 中并且通常信任您的用户,那么这应该不是什么大问题。

要了解如何使用 Perfidies,我建议您查看以下文件,您应该能够根据您的需要进行更改(未经测试!)。 https://github.com/ozten/Perfidies-of-the-Web/blob/master/plugincheck_ui.js

要调用的主要函数似乎是Pfs.findPluginInfos(Pfs.UI.navInfo, browserPlugins, incrementalCallbackFn, finishedCallbackFn). 在其中incrementalCallbackFn你可以获得所有易受攻击的插件。如果存在,您可以将浏览器重定向到您的页面。

请参阅参考页面以了解如何填写其他函数参数。

关于部署,我会允许某种方式跳过此验证,因为在某些情况下您总是希望允许特殊访问。如果你的老板需要 5 分钟内的报告,你不想告诉他必须先更新他的 java 版本,只是因为昨天有一个更新可能还没有被利用。

因此,也许会向尝试访问该页面的用户显示一个大红色警告,但如果他们选择的话,请给他们一种忽略警告的方法......