The 9-year-old musl crypt() bug that let disabled openssh accounts take any long password

cramforce · x · 2026-11-05

A deep-dive from sshhole.com explains a problem in openssh on musl libc (Alpine, OpenWrt, buildroot, yocto, many Docker images) since 2016: accounts that should never accept a password (root, key-only deploy users, LDAP users, default Alpine cloud users) accept any password longer than 256 characters. The piece traces the history from Bill Joy's 1980 placeholder in /etc/passwd, through /etc/shadow salted hashing, to the POSIX rule that crypt() returns NULL on failure — and musl's 2012 change to return a single character instead, which programs never expect.

Related event: OpenSSH flaw on musl-based Linux lets any 256+ character password unlock key-only accounts(7 posts)→

Original post →

More from Safety

Safety channel →