Skip to content

Security: smith-chris/inkshell

Security

SECURITY.md

Security policy

inkshell is an alpha, experimental project for a rooted (Developer Mode) reMarkable Paper Pro. It runs as an injected extension inside the tablet's xochitl process and can drive an SSH shell and a headless browser on a paired Mac. Please read the "Read this first" and "Safety / risk" sections of the README before installing.

Reporting a vulnerability

Please do not open a public issue for a security vulnerability.

Report it privately through GitHub's private vulnerability reporting: the repository's Security tab → Report a vulnerability. If that isn't available to you, open a normal issue that only asks for a private contact channel — do not include exploit details, credentials, or reproduction steps in a public issue.

When you report, please include:

  • the affected component (terminal, remapper, structured-browser daemon, Chromium engine, or the CLI);
  • the tablet OS version (inkshell doctor prints it) and how you installed (prebuilt vs --from-source);
  • what an attacker can do, and a minimal reproduction if you have one.

There is no bug-bounty program — this is a personal open-source project. I'll acknowledge reports as soon as I can and credit you in the fix unless you'd rather stay anonymous.

Scope & threat model

Context for what counts as a vulnerability here:

  • The tablet must already be in Developer Mode (user-enabled root). Issues that merely require Developer Mode to exist are not themselves vulnerabilities — that is the documented prerequisite.
  • The structured-browser daemon binds to localhost on the Mac and is reached over an SSH tunnel; it is not meant to be exposed to the network. A report that it is reachable off-host, or can be turned into an open proxy / SSRF vector, is in scope.
  • The CLI installs an SSH key and stores device config under ~/.config/inkshell. Key-handling or credential-exposure bugs are in scope.
  • The remapper is a local evdev intercept; privilege escalation beyond the keyboard device it grabs is in scope.

Out of scope: anything that requires the physical access you would already need to enable Developer Mode, and the inherent risk of running an experimental extension inside xochitl (documented in the README).

There aren't any published security advisories