Sebezhetőség a PuTTY-ban, amely lehetővé teszi a felhasználó zárt kulcsának visszaállítását

A PuTTY, az SSH protokollhoz készült népszerű kliens a Windows platformon, egy veszélyes sebezhetőséget (CVE-2024-31497) tárt fel, amely lehetővé teszi a felhasználó titkos kulcsának újragenerálását, amelyet az NIST P-521 elliptikus görbe ECDSA algoritmusával hoztak létre (ecdsa-sha2-nistp521). A titkos kulcs kitalálásához körülbelül 60 digitális aláírás elemezése elegendő, amelyeket a problémás kulcs generált.

A sebezhetőség a PuTTY 0.68 verziójától kezdve jelentkezik, és érinti azokat a termékeket is, amelyek sebezhető PuTTY verziókat tartalmaznak, például a FileZilla (3.24.1 – 3.66.5), a WinSCP (5.9.5 – 6.3.2), a TortoiseGit (2.4.0.2 – 2.15.0) és a TortoiseSVN (1.10.0 – 1.14.6). A problémát orvosolták a PuTTY 0.81, a FileZilla 3.67.0, a WinSCP 6.3.3 és a TortoiseGit 2.15.0.1 frissítéseiben. A frissítések telepítése után a felhasználóknak ajánlott új kulcsokat generálni és a régi nyilvános kulcsokat eltávolítani az authorized_keys fájlokból.

A sebezhetőséget a fejlesztők gondatlansága okozta, akik a 521-bites kulcs generálásához egy 512-bites véletlenszerű sorozaton alapuló inicializáló vektort (nonce) használtak, valószínűleg azt gondolták, hogy az 512 bit elegendő lesz, és a fennmaradó 9 bit nem jelentős. Ennek eredményeként az összes PuTTY-ban ECDSA algoritmus használatával készült titkos kulcs első 9 bitjei mindig nullás értéket vettek fel.

Az ECDSA és DSA esetében a pszeudo-véletlen számok generátorának minősége és a használt paraméter teljes véletlenszerűséggel való lefedettsége alapvető fontosságú, mivel még néhány bit információ a inicializáló vektorról elegendő ahhoz, hogy támadást végezzenek a titkos kulcs szekvenciális helyreállítása érdekében. A kulcs sikeres helyreállításához elegendő a nyilvános kulcs megléte és több tucat digitális aláírás elemzése, amelyeket a problémás kulcs generált a támadó számára ismert adatokkal. A támadás a HNP (Rejtett Szám Probléma) megoldására korlátozódik.

A szükséges digitális aláírások például akkor nyerhetők meg, amikor a felhasználó az támadó SSH-szerveréhez vagy egy Git-szerverhez csatlakozik, amely az SSH-t használja mint hordozót. A támadáshoz szükséges aláírásokat szintén meg lehet szerezni, ha a kulcsot véletlenszerű adatok, például git-commitekról való aláírásokhoz használták, amikor az SSH-ügynök, a Pageant, forgalmat irányít a fejlesztői hosztra. Az MITM-támadás során a szükséges adatok megszerzése a kulcs helyreállításához kizárt, mivel az SSH aláírásokat nem továbbítják nyílt formában.

Megjegyzendő, hogy hasonló módon használt teljesítetlen inicializáló vektorokat alkalmaztak a PuTTY-ban és más elliptikus görbék esetében is, de a nem ECDSA P-521 algoritmusokkal kapcsolatos adatainformációk szivárgása nem elegendő a működő kulcshelyreállító támadás végrehajtásához. Az más méretű ECDSA kulcsok és az Ed25519 kulcsok nem ki vannak téve támadásnak.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster