Skip to main content

Cve/sshole

@swamp/cve/ssholev2026.11.05.2· AGPL-3.0-or-later· 1d agoBEHAVIORSREPORTSACCEPTED WARNINGS
01README

Reports whether a machine, container or image is vulnerable to **"*sshole"**, the OpenSSH musl libc password-authentication bypass fixed in OpenSSH 10.6p2 (2026-11-05). No CVE was assigned at disclosure.

On OpenSSH built against musl libc (Alpine, OpenWrt, buildroot, yocto), when password authentication is handled without PAM and is enabled, any account whose /etc/shadow field is exactly * — key-only users, LDAP users, a locked root, Alpine's default cloud user — accepts any password of 257 to 1024 characters. musl's crypt() returns "*" for a password over 256 bytes, which equals the stored "*", so the comparison succeeds. glibc hosts, and hosts that authenticate through PAM, are not affected.

Method

  • scan runs a read-only probe on the local machine, a running Docker container (dockerContainer), or a container started from an image (dockerImage) and reports a verdict: vulnerable, not-vulnerable, or unknown. It never logs in over SSH and never changes the target.

What it reports

The verdict, plus the facts behind it: libc, OpenSSH version and package release, effective UsePAM and whether sshd links PAM, effective PasswordAuthentication, and every * account with its uid and shell. A risk level (critical, high, medium, low, none, unknown), the reasons, what was not checked, and the fix. Enumerating * accounts needs root; without it a musl, non-PAM, password-auth target is unknown, never not-vulnerable.

02Behaviors1
@swamp/cve/ssholev2026.11.05.2sshole.ts
fn scan()
Report whether the local machine, a container or an image is vulnerable to the *sshole OpenSSH musl password bypass (read-only)

Resources

status(infinite)— Whether the target is vulnerable to the *sshole OpenSSH musl password bypass

Files

log(text/plain)— Scan execution log
03Reports1
@swamp/cve/sshole-reportmethod
sshole_report.ts

Reports whether each scanned target is vulnerable to *sshole (OpenSSH musl password bypass)

securityvulnerability
04Previous Versions1
2026.11.05.1AGPL-3.0-or-later
05Stats
A
100 / 100
Downloads
6
Archive size
40.8 KB
Verified by Swamp
  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types (deprecated)1/1earned
  • Dependencies pass trust audit2/2earned
  • Docs keep secrets in a vault1/1earned
  • Has description1/1earned
  • Platform support declared (or universal)2/2earned
  • License2/2earned
  • Verified public repository2/2earned

07Platforms
08Labels