musl crypt sentinel clash puts Alpine sshd auth at risk
What happened
A November 7 report on the Hacker News front page says musl libc's crypt function has returned the string "*" for overlong passwords since 2012. That return value collides with the old Unix convention of "*" marking a locked account, creating an sshd authentication risk on musl systems without PAM. Using the official Alpine AWS image as an example, the report says an unauthenticated user can get a shell, possibly as root. The author notes this is not a memory-safety bug, and discusses how C's type system cannot enforce NULL return checks and how Rust community norms forbid such in-band sentinel values. No fix or deployment update is given.
Written by AI from the coverage · updated 4 hours ago
Coverage
Follow the reports to see the story from different sides.
- Hacker News front page*sshole, or when are we going to get rid of C?
musl libc 的 crypt 函数自 2012 年起对过长密码返回字符串 "*",与 Unix 上 "*" 表示锁定账户的旧约定冲突,在无 PAM 的 musl 系统(如官方 Alpine AWS 镜像)上让未认证用户获得可能是 root 的 shell。作者指出这不是内存安全漏洞,C 类型系统无法强制检查 NULL 返回值,而 Rust 社区规范不允许这种 in-band 哨兵值。
Heat over time
Heat now 9·Comparable peak 10(Nov 7 08:00)·Comparable change over 24 hours –
The trend only compares accounts observed without gaps, so its range may be smaller than the current heat. Hover or tap the chart for each hour; the left and right arrow keys step through it.