
Tailscale SSH handed out root to anyone connecting as the username '-i'
Tailscale disclosed (TS-2026-009) that its SSH server passed usernames straight to Linux getent as arguments, so logging in as '-i' parsed to --no-idn, dumped the full passwd file, and opened an interactive root session — bypassing autogroup:nonroot ACLs. The fix is in Tailscale 1.98.9, every prior version is affected, and it is a textbook argument-injection bug: any user-controlled string that reaches a CLI needs a leading-dash guard, the same class a developer can audit for in their own argv handling today.
Source: tailscale.com ↗
if a user connected with the username -i this would have been interpreted as --no-idn and getent would have printed the entire passwd file contents starting with the root user, causing Tailscale to open an interactive root session
Why this matters
- → Argument injection bypasses SSH ACLs, grants root access to restricted users
- → Textbook CLI parsing bug—same vulnerability class developers can audit today
- → Affects all Tailscale versions before 1.98.9; fix is dead-simple: reject leading dashes