使用JS或PHP检测Firefox中启用的扩展

Detecting Extensions enabled in Firefox using JS or PHP

本文关键字:启用 扩展 Firefox 检测 JS PHP 使用      更新时间:2023-09-26

我们是否可以使用Javascript或PHP脚本找到firefox中启用和禁用的扩展?

如果扩展已启用,我需要提醒一条消息。

提前谢谢。

这取决于扩展。

有些扩展实际上会修改页面的html/dom,这样您就可以很容易地识别它们。

如InFormEnter:这个扩展创建img元素,您可以使用jquery:来识别这些元素

if ($("img.ife_marker").length > 0) alert("InformEnter installed!");

但只有少数人这样做,你只能猜测行为(或者分叉扩展来添加这样的东西)。

如果您有一个具有这种行为的扩展(您可以创建一个测试页面,并使用firebug在dom树中搜索添加/更改的元素),那么您可以编写一些javascript(如上面的示例),并使用JSON将信息发送回服务器。

一些扩展可能会对您发送的请求做出反应(比如修改头),然后您可以创建一个具有已知头的ajax请求并检查它。

理论上,我能想到的唯一原因是,在一个封闭的办公室环境中,你想检查是否需要安装特定的插件才能让你的应用程序正常工作。在这种情况下,我实际上会创建一个扩展的分叉,并使它将这样的标记附加到页面上。

编辑:既然你提到yslow:不,yslow不会对页面做任何事情。实际上,它只获取firefox中已经可用的信息,并在此基础上分析页面。它甚至不会创建任何额外的http请求,理论上你可以在上面获取。

我认为您可以测试以下脚本:

  • https://github.com/geedew/browser-detect
  • https://github.com/barisaydinoglu/Detectizr