Collect both packages
Keep the version you already reviewed and obtain the update. If the extension is installed, use the browser's extension page to find the version number, then download the matching CRX or unpacked package. For Firefox, download the XPI. Store both files together so the comparison is reproducible.
A version diff is only meaningful when the two packages are the actual builds you are comparing. Mixing a store build with a developer ZIP can create false differences in minification, build flags or bundled dependencies.
- Record the version number and release date for both packages
- Prefer the same distribution channel for both builds
- Keep the original files until the review is complete
Related pages:unpack a CRX without installingFirefox XPI analyzer
Diff the manifest first
The manifest is the fastest place to spot a capability change. Compare permissions, optional_permissions, host_permissions and content_scripts.matches. A new all_urls pattern or a new cookies permission is more consequential than a renamed action popup.
Also check externally_connectable, web_accessible_resources and the content security policy. These fields control who can talk to the extension and what resources pages can reach.
| Field | What a change can mean |
|---|---|
| permissions | New browser API access |
| host_permissions | Broader website access |
| content_scripts.matches | Code injected into more pages |
| externally_connectable | New web page communication |
| web_accessible_resources | More resources exposed to pages |
Related pages:what does all_urls meancontent script matches
Review code and domain changes
After the manifest, compare code findings and external domains. New remote script references, credential access, clipboard reads or raw IP endpoints deserve a closer look. A new analytics domain may be expected; an unexplained endpoint on a login page is harder to justify.
Static analysis can flag bundled library code that the publisher did not write. Read the surrounding file and line before treating a finding as evidence of intent.
Related pages:how to audit an extensioncheck extension domains