sshole (CVE-2026-123158): OpenSSH-sårbarheden, der rammer Alpine Linux, og hvordan du løser den
Af Eoin Villarin, 2026-11-07
- En OpenSSH-svaghed kaldet sshole tillader angribere at logge ind på adgangskodefrie konti på Alpine Linux og andre musl-baserede systemer, og den udnyttes allerede. Hvem er berørt, hvordan man tjekker dine servere og hvordan man løser det.
Er jeg påvirket af sshole OpenSSH-flawen?
Du er i risiko, hvis en server kører OpenSSH ældre end 10.6p2 på et musl-baseret system som Alpine Linux uden PAM, tillader SSH-adgangskodelogin og har et konto, hvis adgangskodefelt kun er et asterisk næste til en anden konto med en reel adgangskodehash. Debian, Ubuntu, Fedora og opsætninger, der bruger PAM, er ikke påvirket.
Vigtigste punkter
- CVE-2026-123158, kaldet sshole, tillader angribere at logge ind på adgangskodeløse konti på musl-baserede Linux ved at sende en for stor adgangskode.
- Alpine Linuxs standard openssh-server-pakke er påvirket, mens glibc-systemer som Ubuntu og opsætninger, der bruger PAM, ikke er.
- Angribere udnyttede det mindre end ni timer efter, det blev offentliggjort, og fik root på en honeypot.
- Fixen er OpenSSH 10.6p2 eller Alpine's rettede pakke til din gren, efterfulgt af en sshd-genstart.
- Hvis du ikke kan opdatere endnu, sæt PasswordAuthentication nej og brug SSH-nøgler.
En nyopdaget OpenSSH-flaw kaldet sshole, sporet som CVE-2026-123158, tillader angribere at logge ind på visse Linux-konti, der ikke er beregnet til at acceptere adgangskoder overhovedet. Den påvirker OpenSSH på musl-baserede systemer som Alpine Linux, den blev løst den 5. november 2026, og angribere begyndte at bruge den mindre end ni timer efter, den blev offentliggjort. Hvis du kører Alpine-servere, Alpine-baserede Docker-bilder med SSH eller små enheder på OpenWrt, skal du tjekke dem i dag.
Hvad er sshole OpenSSH-flawen?
På musl-baserede systemer returnerer C-bibliotekets crypt()-funktion en enkelt asterisk (*) når det mislykkes at hash en adgangskode, for eksempel når adgangskoden er længere end dens 256-byte-grænse. Mange Linux-systemer bruger også en enkelt * i adgangskodefeltet til at betyde "denne konto har ingen adgangskode." OpenSSH sammenlignede de to, så *, og behandlede det som en match. At sende en for stor adgangskode var nok til at logge ind på en konto uden adgangskode.
Adfærden går tilbage til en ændring i 2016 i OpenSSH's adgangskodehåndtering. Sikkerhedsforsker Özgün Kültekin fandt det ved hjælp af AI-agenter, der kørte omkring 17.600 autentificeringstest. CVE'en bærer en CVSS 3.1-score på 8.1, som er vurderet som Høj, og fixen skibede i OpenSSH 10.6p2.
Er jeg påvirket?
En server er i risiko, når alle disse er sande:
- Det kører OpenSSH ældre end 10.6p2 på et musl-baseret system, såsom Alpine Linux, OpenWrt, Buildroot eller Yocto.
- sshd bruger ikke PAM. Dette er standarden for Alpines openssh-server-pakke.
- SSH-adgangskodelogin er aktiveret, hvilket er OpenSSH-standardindstillingen.
- Mindst én konto har kun * i adgangskodefeltet, såsom en nøgle-only-bruger, næste til en anden konto med en reel adgangskodehash.
Alpines officielle AWS- og Azure-skybilled fra 3.18.11 til 3.24.3 er et alvorligt tilfælde: de inkluderer en standard alpine-bruger uden adgangskode og adgangskodeløs doas, hvilket betyder, at en vellykket login kan blive root.
Ikke påvirket: glibc-baserede systemer som Debian, Ubuntu og Fedora, opsætninger, der tjekker adgangskoder gennem PAM, Dropbear og OpenBSD. Konti med en reel adgangskodehash kan ikke omgås på denne måde.
Hvordan kontrollerer du dine servere
Kør disse som root på hver Alpine-server eller container, der kører sshd:
- Tjek SSH-indstillingerne:
sshd -T | grep -i -E 'passwordauthentication|usepam'. Hvis adgangskodeautentificering er slået fra eller PAM er aktiveret, kan denne fejl ikke bruges. - Kontroller den installerede pakke:
apk list --installed | grep openssh, og sammenlign det med de faste versioner nedenfor. - Liste konti uden adgangskode:
awk -F: '$2=="*" {print $1}' /etc/shadow. - Læs efter logins til disse konti:
grep "Accepted password" /var/log/messages. En adgangskode-login til en konto med * i adgangskodefeltet betyder, at serveren sandsynligvis blev angrebet.
Hvordan fikser du CVE-2026-123158 på Alpine Linux
Alpine leverede patchede pakker til hver gren fra 3.16 til edge på samme dag som offentliggørelsen. Opdater og genstart sshd, fordi installation af opdateringen ikke genstarter den kørende proces:
apk upgrade -U -a og derefter rc-service sshd restart
| Alpine gren | Fast åbnet ssh-version |
|---|---|
| kant | 10.6_p2-r0 |
| 3.24 | 10.3_p1-r2 |
| 3.23 | 10.2_p1-r1 |
| 3.22 | 10.0_p1-r11 |
| 3.21 | 9.9_p2-r1 |
| 3.20 | 9.7_p1-r6 |
| 3.19 | 9.6_p1-r3 |
| 3.18 | 9.3_p2-r4 |
| 3.17 | 9.1_p1-r7 |
| 3.16 | 9.0_p1-r6 |
For Docker, genbyg hver billede, der indeholder openssh fra et nyt basisbillede og redeploy det. Bemærk, at nogle SSH-bilder på Docker Hub, såsom linuxserver's openssh-server, slår adgangskodelogin fra som standard, men bliver eksponeret, når PASSWORD_ACCESS=true er indstillet.
Alpine-udgivelser ældre end 3.16 får ingen fast pakke. Opgrader dem til en understøttet udgivelse eller brug det midlertidige løsning nedenfor.
Snedig løsning: slå SSH-adgangskodelogin fra
Hvis du ikke kan opdatere lige nu, sæt PasswordAuthentication no i /etc/ssh/sshd_config, genstart sshd og kør sshd -T-tjek igen. Sørg for, at din SSH-nøglelogin fungerer, før du gør dette, ellers kan du låse dig selv ude. Kun-nøgle SSH er en god standard for enhver server i hvert fald.
Hvad skal du gøre, hvis du tror, du blev ramt
- Gennemgå doas-brug, nyligt oprettede brugere og hver authorized_keys-fil.
- Tjek for ukendte processer, cron-jobber og udgående forbindelser.
- Hvis du ikke kan udelukke en kompromittering, behandler du serveren som kompromitteret: genbyg den fra et rent billede og roter hver adgangskode, nøgle og token, den holdt.
- Download ikke proof-of-concept exploits fra GitHub til at teste dine servere. Forskere advarer om, at nogle er uverificerede og kan indeholde malware.
At holde servere opdateret er en stor del af vedligeholdelse af hjemmeside Jeg gør det for klienter. Hvis du vil have hjælp til at kontrollere din hosting, Docker-opstilling eller SSH-konfiguration, kontakt mig.
Ofte stillede spørgsmål
Er Ubuntu eller Debian påvirket af sshole?
Nej. Debian, Ubuntu, Fedora og andre glibc-baserede systemer er ikke påvirket, og heller ikke opsætninger, der bruger PAM til adgangskodekontroller.
Beskytter nøgle-only SSH mig?
Ja. Med PasswordAuthentication sat til nej, accepterer serveren ikke adgangskoder, så sårbarheden kan ikke udnyttes.
Bliver CVE-2026-123158 udnyttet?
Ja. Trusselsintelligensfirmaet Previdian så det første forsøg mindre end ni timer efter CVE blev offentliggjort, og en angriber fik root på en af dets honeypots, der kører Alpine Linux.
Hvilken OpenSSH-version løser det?
OpenSSH 10.6p2. På Alpine skal du installere den rettede openssh-pakke til din gren og genstarte sshd.
Er Docker-containere påvirket?
Containere baseret på Alpine, der kører sshd med aktiveret adgangskodelogin, kan være påvirket. Genbyg dem fra et opdateret basisbillede og redeploy.
Har jeg brug for at genstarte efter opdatering?
Ja. Den kørende sshd beholder den sårbare kode i hukommelsen, indtil du genstarter tjenesten.