【发布时间】:2020-03-16 03:21:30
【问题描述】:
我正在尝试创建用于绕过服务器身份验证的扩展,将其安装在 Firefox 浏览器上并在创建驱动程序时传递 .xpi 文件,以便在登录时调用它并绕过服务器身份验证。 在 Firefox 上安装 .xpi 文件时遇到错误。 错误:“无法安装此插件,因为它似乎已损坏”
步骤 1.创建manifest.json文件(代码如下)
{
“name”: “Webrequest API”,
“version”: “1.0”,
“description”: “Extension to handle Authentication window”,
“permissions”: [
“webRequest”,
“webRequestBlocking”,
“”
],
“background”: {
“scripts”: [“webrequest.js”]
},
“manifest_version”: 2
}
-
创建 webrequest.js 文件。下面提到的代码。
var 目标 = “https://sso.viacomcloud.com/”;
var myCredentials = { username: “getestone”, password: “V*******” } var pendingRequests = []; // A request has completed. // We can stop worrying about it. function completed(requestDetails) { console.log(“completed: ” + requestDetails.requestId); var index = pendingRequests.indexOf(requestDetails.requestId); if (index > -1) { pendingRequests.splice(index, 1); } } function provideCredentialsSync(requestDetails) { // If we have seen this request before, then // assume our credentials were bad, and give up. if (pendingRequests.indexOf(requestDetails.requestId) != -1) { console.log(“bad credentials for: ” + requestDetails.requestId); return {cancel:true}; } pendingRequests.push(requestDetails.requestId); console.log(“providing credentials for: ” + requestDetails.requestId); return {authCredentials: myCredentials}; } browser.webRequest.onAuthRequired.addListener( provideCredentialsSync, {urls: [target]}, [“blocking”] ); browser.webRequest.onCompleted.addListener( completed, {urls: [target]} ); 使用 7-zip 文件管理器创建了一个 zip 文件并将该 zip 文件重命名为 Ext.xpi
在 firefox(版本 70)上打开 about:config 并将 xpiextensionsignrequired 更改为“False”
在 Firefox 上打开 about:addons。选择“从文件安装扩展”。选择上面第 4 步中创建的 Ext.xpi。
我收到以下错误:“无法安装此插件,因为它似乎已损坏。”而不是在 Firefox 浏览器上获得安装选项。
请帮忙 @SubjectiveReality
【问题讨论】:
-
通过服务器认证可以实现非常简单的方法。使用 Firefox 配置文件管理器创建新的浏览器配置文件。使用这个新配置文件启动 Firefox。转到该页面,手动进行服务器身份验证并保存您的凭据。使用来自stackoverflow.com/questions/58609201/… 的代码使用现有浏览器配置文件和保存的凭据加载您的测试。这样,您甚至可以通过导入的证书文件进行证书身份验证,并在 Firefox 选项中设置“始终使用一个证书”。
-
你能给出正确的 manifest.json 和 webreques.js 文件吗?
标签: javascript authentication firefox firefox-addon add-on