browser

package
v1.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

Package browser models the impact of a malicious Chromium browser extension (CursedChrome-style browser proxy, infostealer, sideloaded MV3 extension). It answers two questions a responder cares about:

  • Which installed extension has the reach to do it? (capability): the manifest permission union — cookies + broad host access + request interception / script injection / proxy — plus whether it was sideloaded (unsigned, not content-verified).
  • What would it reach? (blast radius): the live SaaS/IdP sessions present in the browser's cookie store.

It never decrypts cookie VALUES (Chromium wraps them with an OS keychain / App- Bound key — infeasible offline), so the session inventory is metadata only: which domains have a live auth session, grouped by blast radius. That is the honest signal — an extension bypasses the keychain in-browser; geiger's job is to say what is reachable, not to steal it.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Scan

func Scan(o Options) []module.Note

Scan discovers local Chrome/Edge profiles and returns a Note per risky extension plus, under Intrusive, a session-inventory Note per profile.

Types

type Options

type Options struct {
	Live      bool   // permit the network Web Store liveness check on store extensions
	Intrusive bool   // read the Cookies DB metadata (the sensitive session inventory)
	All       bool   // list every extension, incl. narrow/benign ones (inventory)
	Proxy     string // route the --live Web Store check through this proxy (http/https/socks5)
	Home      string // override home dir (tests); defaults to os.UserHomeDir
	GOOS      string // override runtime.GOOS (tests)
}

Options configures a scan. Home and GOOS are injectable for tests.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL