Security
How we keep the extension safe to run in your browser.
Consensus sits inside your browser with access to page content and your API key, so it has to earn that trust. Below is every check we ran against known extension attack classes, and what actually came back.
12 checks run — 7 fixed — 4 verified clean — 1 mitigated by design.
Don't take our word for it. Every check below is backed by an automated test that runs against the real extension source, not just a status page. Read the tests on GitHub — clone the repo and run npm test yourself if you want to verify it firsthand.
Fixed — identified during audit, resolved in code
- Cross-context messaging (postMessage). Sender origin is now validated before a message from the page is trusted.
- Background script sender verification. Analysis requests and storage writes are only accepted from the extension itself.
- Output escaping in rendered UI. Links, provider names, model names, and video metadata are escaped before being written into the page.
- URL parameter encoding. API keys and model names are safely encoded when built into outbound request URLs.
- API abuse / rate limiting. Repeated paid LLM calls against the same content are now blocked.
- Synthetic UI event spoofing. A fake, script-dispatched click on the badge can no longer trigger a real, paid analysis.
- Video ID / cache-key validation. Malformed or spoofed video IDs are validated before being used as cache or rate-limit keys.
Verified clean — audited, no issue found
- Host permissions scope. The extension doesn't ask for more site access than it needs.
- Dangerous DOM sinks. No unsafe rendering patterns — innerHTML, eval, dynamic script construction — applied to untrusted input.
- Credential storage & transmission. Your API key never goes anywhere besides directly to your chosen provider. One caveat: Gemini's API only accepts the key as a URL parameter, not a header, so it can end up in places a URL gets logged that an OpenAI or Anthropic key never would.
- Script injection targets. Dynamic script injection only ever targets the extension's own known files.
Mitigated by design — handled structurally, not a code fix
- LLM prompt injection resilience. Video titles and comments are written by whoever's watching, including people trying to game the system. That text can't do more than skew a rating.
These checks run against known browser-extension attack classes: OWASP's Browser Extension Vulnerabilities Cheat Sheet, Chrome's official MV3 security guidance, and disclosed real-world extension exploits.