CRXaminer - Deep Dive Into Chrome Extensions (Plus Tool)
Where
Talks
HOPE_16
Duration
51 min
Explains how Chrome extensions are built and why their permissions are risky, then demos a scanner that rates them.
Summary
The talk opens with why Chrome extensions matter to security teams. Extensions can see and act on every site a user visits, so a single bad one can read cookies or rewrite pages. The speaker walks through real cases: a dark-mode add-on with broad access, a coupon extension that swapped affiliate codes, and a data-loss-prevention extension whose publisher was phished, letting attackers steal business account cookies. He also describes a popular extension bought and redirected without users being notified.
He then explains the file format, a CRX3 that is essentially a zip archive, and the manifest.json that declares granted permissions and target sites. He describes CRXaminer, a Ruby on Rails web app that downloads an extension by its ID, runs rule-based checks, and asks an LLM to adjust the rating using publisher context. Comparing before and after, most critical results moved to high, though severity labels remain hard to make meaningful.
A live demo follows, and the audience discusses cost, prompt design, and whether Chrome's permission model should be more granular. Similar risks were raised for VS Code and Docker Desktop extensions. The takeaway is to scrutinize requested permissions and consider isolating risky extensions in a separate browser profile.
Related talks
Talks·28 min
Matias Huhta
Shows how static analysis of JavaScript syntax trees can recover API endpoints and their arguments from minified frontend code.
Talks·30 min
Petr Pucil · Mikhail Yakshin
Shows how a declarative format language turns binary file and protocol descriptions into parsers across many languages.
Talks·51 min
Jeff Williams
Explains how instrumenting running web applications can block whole classes of vulnerabilities without changing their code.


