Suspicious 80% firefox 1 installs Download

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

Evidence

Extension declares proxy authority manifest.json · lines 1–23
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
Uses browser.* namespace core APIs options.js · lines 1–10
1:43bled";
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
Invokes zero-argument function at module scope options.js · lines 19–27
19:57ignments are retained but not used.";
20 } catch (error) {
21 status.textContent = `Error: ${error.message}`;
22 } finally {
23 proxiesEnabledCheckbox.disabled = false;
24 }
25});
26
27restoreSettings();
Reads DOM text content popup.js · lines 55–58
55:33er.storage.local.get("pendingProxyFileName");
56 proxyFileStatus.textContent = proxyState.pendingProxyFileName
57 ? `Ready to assign: ${proxyState.pendingProxyFileName}`
58 : "No proxy CSV imported.";
SOCKS5 protocol reference popup.js · lines 212–233
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

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.