Skip to content

Security: chrisdeweese/oddpod

Security

SECURITY.md

Security policy

Reporting a vulnerability

Report privately via GitHub Security Advisories rather than a public issue. Expect a reply within a week.

Threat model

Oddpod runs unattended in your login session with no network access and no elevated privileges — see "Security model" in the README for the full surface.

Untrusted input reaches the process in exactly one place: Bluetooth device names, which come from system_profiler and are interpolated into the AppleScript passed to osascript. They are escaped with json.dumps, whose output is a valid AppleScript string literal. A device name is attacker-controlled only by someone who can already pair a device with your Mac.

Scope

In scope: anything that lets a non-root local process or a paired Bluetooth device cause Oddpod to execute unintended code, write outside ~/.oddpod.json, or escalate privileges.

Out of scope: missed or spurious notifications. Detection is heuristic by design — see "Known limits" in the README.

There aren't any published security advisories