Een al tien jaar oude kwetsbaarheid in OpenSSH maakt het aanvallers mogelijk om ongeautoriseerde toegang te krijgen tot bepaalde Linux-omgevingen, zonder het password te kennen. Hoewel de kwetsbaarheid vooral Alpine Linux treft, kunnen andere distributies ook kwetsbaar zijn. Inmiddels zijn security-updates uitgebracht.
De kwetsbaarheid is *sshole gedoopt. Het lek is het gevolg van een onverwachte interactie tussen OpenSSH en musl. Dit is een lichtgewicht C-bibliotheek die door Alpine Linux wordt gebruikt. Ars Technica meldt dat aanvallers de kwetsbaarheid kunnen misbruiken door een ongebruikelijk lang password in te voeren bij een poging in te loggen op SSH.
De aanval lukt als OpenSSH draait zonder Pluggable Authentication Modules (PAM). Dit is een framework dat wordt gebruikt om authenticatie te regelen of af te handelen. Password-authenticatie moet ingeschakeld zijn en het systeem moet zowel een account hebben dat geconfigureerd is om passwordlogins af te wijzen als een ander actief account met een geldige SHA-256- of SHA-512-passwordhash.
Onder die condities kan een aanvaller toegang tot het beschermde account krijgen door een password in te geven van meer dan 256 karakters. Het probleem treedt op omdat musl een asterisk (*) geeft als password hashing mislukt. OpenSSH kan dit resultaat ten onrechte als een overeenkomst beschouwen met de asterisk die in het passwordveld van het account is opgeslagen.
Alpine Linux-beheerders waarschuwen dat exploitatie van de fout met slechts een verbinding kan plaatsvinden, zonder meerdere login-pogingen.
Zorgen om embedded systemen
De kwetsbaarheid baart zorgen omdat Alpine Linux veel wordt gebruikt in containers, routers, industriële controllers en andere embedded systemen. Veel van deze devices zijn niet eenvoudig te updaten, waardoor ze over een lange periode kwetsbaar kunnen blijven.
Beveiligingsonderzoekers van Check Point bevestigen dat een aanvaller rechten kan verkrijgen als het kwetsbare account sudo- of doas-toestemmingen heeft. Alpine Linux cloud images gebruikt op AWS en Azure beschikken over configuraties die mogelijk aanvallers in staat stelt om root access te verkrijgen.
De kwetsbaarheid treft echter niet elke Linux-installatie. Systemen die glibc gebruiken, inclusief standaard Debian, Ubuntu en Fedora zijn in dit geval niet kwetsbaar. OpenSSH-installaties die PAM gebruiken zijn ook niet kwetsbaar.
Nood-updates uitgebracht
OpenSSH verhelpt de kwetsbaarheid in versie 10.6p2, die op 5 november is vrijgegeven. Alpine Linux gaf ook updates voor getroffen versies.
Beheerders wordt geadviseerd de patches direct te installeren en de SSH-service opnieuw op te starten. Indien direct updaten niet mogelijk is, dan is het uitschakelen van SSH password-authenticatie een tijdelijke oplossing.
Security teams moeten ook de authenticatielogs controleren op succesvolle password logins tot accounts die deze toeging hadden moeten weigeren.
Het exacte aantal kwetsbare systemen is niet bekend. Andere Linux-distributies die musl en OpenSSH gebruiken kunnen ook getroffen zijn, hoewel een kwetsbaarheid afhangt van specifieke authenticatie-settings.