Veelgebruikte PuTTY SSH-client kwetsbaar bevonden voor sleutelherstelaanval

De beheerders van de PuTTY Secure Shell (SSH) en Telnet-client waarschuwen gebruikers voor een kritieke kwetsbaarheid die versies van 0.68 tot en met 0.80 beïnvloedt en die kunnen worden misbruikt om volledig herstel van de privésleutels van NIST P-521 (ecdsa-sha2-nistp521) te bereiken.

Aan de fout is de CVE-identificatie toegewezen CVE-2024-31497met de ontdekking toegeschreven aan onderzoekers Fabian Bäumer en Marcus Brinkmann van de Ruhr Universiteit Bochum.

“Het effect van de kwetsbaarheid is het compromitteren van de privésleutel”, aldus het PuTTY-project in een advies.

“Een aanvaller die in het bezit is van enkele tientallen ondertekende berichten en de publieke sleutel heeft voldoende informatie om de private sleutel te herstellen en vervolgens handtekeningen te vervalsen alsof ze van jou zijn, waardoor ze (bijvoorbeeld) kunnen inloggen op elke server die je gebruikt. sleutel voor.”

Cyberbeveiliging

Om de handtekeningen te verkrijgen zal een aanvaller echter de server moeten compromitteren waarvoor de sleutel wordt gebruikt om zich te authenticeren.

In een bericht op de mailinglijst Open Source Software Security (oss-sec) beschreef Bäumer dat de fout voortkwam uit het genereren van bevooroordeelde cryptografische nonces van de ECDSA, die het herstel van de privésleutel mogelijk zouden kunnen maken.

“De eerste 9 bits van elke ECDSA-nonce zijn nul”, legt Bäumer uit. “Dit maakt volledig geheim sleutelherstel mogelijk in ongeveer 60 handtekeningen door gebruik te maken van de modernste technieken.”

“Deze handtekeningen kunnen worden verzameld door een kwaadaardige server (man-in-the-middle-aanvallen zijn niet mogelijk omdat clients hun handtekening niet in het openbaar verzenden) of vanuit een andere bron, bijvoorbeeld ondertekende git-commits via doorgestuurde agenten.”

Naast dat het PuTTY beïnvloedt, heeft het ook gevolgen voor andere producten die een kwetsbare versie van de software bevatten:

  • FileZilla (3.24.1 – 3.66.5)
  • WinSCP (5.9.5 – 6.3.2)
  • TortoiseGit (2.4.0.2 – 2.15.0)
  • SchildpadSVN (1.10.0 – 1.14.6)
Cyberbeveiliging

Na verantwoorde openbaarmaking is het probleem verholpen in PuTTY 0.81, FileZilla 3.67.0, WinSCP 6.3.3 en TortoiseGit 2.15.0.1. Gebruikers van TortoiseSVN wordt aanbevolen om Plink van de nieuwste PuTTY 0.81-release te gebruiken bij toegang tot een SVN-repository via SSH totdat er een patch beschikbaar komt.

Concreet is dit probleem opgelost door over te schakelen op de RFC 6979-techniek voor alle DSA- en ECDSA-sleuteltypen, waarbij de eerdere methode voor het afleiden van de nonce werd verlaten met behulp van een deterministische benadering die, hoewel de behoefte aan een bron van willekeurige willekeur van hoge kwaliteit werd vermeden, vatbaar was tot bevooroordeelde nonces bij gebruik van P-521.

Bovendien moeten ECDSA NIST-P521-sleutels die met een van de kwetsbare componenten worden gebruikt, als gecompromitteerd worden beschouwd en bijgevolg worden ingetrokken door ze te verwijderen uit de geautoriseerde_sleutelbestanden en hun equivalenten op andere SSH-servers.

Thijs Van der Does