Multi-Account Container Helper 1.4.1
Excessive permissions, new package
“Import proxy lists, automate creation of containers, and manage Firefox Multi Account Containers with direct proxy routing.”
Extension can proxy all browser trafficArchive contains Mozilla COSE digest manifest
SHA-256430e348def9adb91c3ad40f4fd48e8f35ec77f93d0ad1e8dbaef7c2a4f6a770b
Evidence
1{
2 "manifest_version": 2,
3 "name": "Multi-Account Container Helper",
4 "version": "1.4.1",
5 "description": "Creates and manages Firefox Multi-Account Containers.",
6 "icons": {
7 "48": "icon48.png",
8 "96": "icon96.png"
9 },
10 "permissions": [
11 "contextualIdentities",
12 "cookies",
13 "proxy",
14 "storage",
⋯9 lines
1:43… bled";
2const proxiesEnabledCheckbox = document.getElementById("proxies-enabled");
3const status = document.getElementById("status");
4
5async function restoreSettings() {
6 const stored = await browser.storage.local.get(proxyFeatureSettingKey);
7 proxiesEnabledCheckbox.checked = stored[proxyFeatureSettingKey] === true;
8}
9
10proxiesEnabledCheck …
19:57… ignments are retained but not used.";
20 } catch (error) {
21 status.textContent = `Error: ${error.message}`;
22 } finally {
23 proxiesEnabledCheckbox.disabled = false;
24 }
25});
26
27restoreSettings();
55:33… er.storage.local.get("pendingProxyFileName");
56 proxyFileStatus.textContent = proxyState.pendingProxyFileName
57 ? `Ready to assign: ${proxyState.pendingProxyFileName}`
58 : "No proxy CSV imported."; …
212:38… & result.tested > 1
213 ? "WARNING: every proxy reported the same exit IP. Firefox may be reusing one authenticated " +
214 "connection across containers because they share the same proxy host and port. Try SOCKS5 " +
215 "if your provider supports it, or ask for a distinct host/port per session.\n"
216 : "") +
217 result.results
218 .map(row =>
219 `${row.group} (${row.host}:${row.port}): ${row.ok ? `OK - ${row.reportedIp || "IP not read"}` : `FAILED - ${row.reason}`}`
220 )
221 .join("\n"),
222 },
223];
224
225function createActionStatus(button) {
226 const card = button.closest(".card");
227 let message = card.querySelector(".action-status");
228 if (!message) {
229 message = document.createElement("div");
230 message.className = "action-status";
231 message.setAttribute("role", "status");
232 message.setAttribute("aria-live", "polite");
233 message.id = `${card.querySelector("h2").id}-status`; …
Showing the top 5 files — 4 more files (29 regions) not shown.
No evidence locations were recorded for this file. Raw result