OpenSSH-servers kunnen privé-encryptiesleutels stelen

Servers voor beveiligde verbindingen kunnen door een configuratiefout de privésleutels van gebruikers stelen. Patches zijn in allerijl uitgebracht, want exploitcode is ook al beschikbaar.

De eigenlijke fout schuilt in OpenSSH-clientsoftware waarmee eindgebruikers beveiligde verbindingen kunnen leggen met OpenSSH-servers. Een niet-gedocumenteerde functie in de client moet na verbroken verbindingen automatisch weer de beveiligde connectie herstellen, met behulp van de privésleutel van eindgebruikers. Deze zogeheten roaming-functie bevat twee kwetsbaarheden die neerkomen op een gevaarlijk beveiligingsgat.

Standaard onveilig

Voor het bedoelde gebruik moet een server deze functie wel ondersteunen, wat bij OpenSSH-servers niet het geval is. De bijbehorende servercode is tot op heden namelijk niet in productie genomen. Toch staat roaming standaard aan in de OpenSSH-clientsoftware, schrijft securitybedrijf Qualys dat de kwetsbaarheden heeft ontdekt.

Een malafide OpenSSH-server kan hierdoor de privésleutels van eindgebruikers buitmaken. Zo’n sleutelstelende server kan een systeem van kwaadwillenden zijn, maar kan ook een vertrouwde OpenSSH-server zijn. Die is dan door aanvallers gecompromitteerd om encryptiesleutels te oogsten uit het geheugen van de computers van nietsvermoedende eindgebruikers. Deze privésleutels doen ook dienst voor beveiligde inlog op andere systemen.

Uitschakelen

Naast bovenstaande sleutellekkende kwetsbaarheid bevat de OpenSSH-clientsoftware ook een geheugencorruptie-bug. Deze buffer overflow is ook aanwezig in de standaard configuratie maar valt niet per sé te misbruiken doordat daarvoor twee opties vereist zijn die standaard niet aan staan. “Het is onwaarschijnlijk dat de buffer overflow in de praktijk enige impact zal hebben, maar het is een interessant geval”, concludeert Qualys.

Het lekken van de eerder aangemaakte privésleutels voor de beveiligde verbindingen van eindgebruikers is wel zeer ernstig. Het dichten van dit gat is relatief eenvoudig: het volstaat om de ongedocumenteerde functie uit te schakelen door ‘UseRoaming no’ toe te voegen aan het algemene configuratiebestand van de software, legt Qualys uit. De gister uitgebrachte nieuwe versie 7.1p2 van OpenSSH heeft roaming van zichzelf al uitgeschakeld. Versies 5.4 (uitgekomen in maart 2010) tot en met 7.1 zijn wel kwetsbaar.

In de praktijk al uitgevoerd?

Met het fixen van de roaming-functie is het gevaar echter niet geweken, waarschuwen de ontdekkers. “Dit informatielek is mogelijk al misbruik door geavanceerde aanvallers en belangrijke sites en interessante gebruikers moeten misschien hun SSH-sleutels opnieuw aanmaken”, adviseert Qualys. Het gat is immers al vijf jaar aanwezig in de OpenSSH-client.

Naast de officiële OpenSSH-client zelf hebben ook andere OpenSSH-gebruikende programma’s patches gekregen, zoals de client voor Linux-distributie Ubuntu. Haast is geboden met het dichten van dit gat aangezien er nu ook exploitcode is geopenbaard om de (mis)bruikbaarheid van de kwetsbaarheid aan te tonen. Deze code is hiermee beschikbaar voor elke hacker en cracker.

Deel dit artikel
Voeg toe aan favorieten