Në PuTTY, klienti për protokollin SSH i përdorur gjerësisht në platformën Windows, është zbuluar një cenueshmëri e rrezikshme (CVE-2024-31497) që lejon rikrijimin e çelësit privat të përdoruesit, të gjeneruar me algoritmin ECDSA dhe kurbën eliptike NIST P-521 (ecdsa-sha2-nistp521). Për të nxjerrë çelësin privat, mjafton të analizohen rreth 60 nënshkrime dixhitale të krijuara me çelësin e prekur.
CenueshmĂ«ria shfaqet duke filluar nga versioni PuTTY 0.68 dhe prek gjithashtu produkte qĂ« pĂ«rfshijnĂ« versione tĂ« cenueshme tĂ« PuTTY, si p.sh. FileZilla (3.24.1 â 3.66.5), WinSCP (5.9.5 â 6.3.2), TortoiseGit (2.4.0.2 â 2.15.0) dhe TortoiseSVN (1.10.0 â 1.14.6). Problemi Ă«shtĂ« rregulluar nĂ« pĂ«rditĂ«simet PuTTY 0.81, FileZilla 3.67.0, WinSCP 6.3.3 dhe TortoiseGit 2.15.0.1. Pas instalimit tĂ« pĂ«rditĂ«simit, pĂ«rdoruesve u rekomandohet tĂ« gjenerojnĂ« çelĂ«sa tĂ« rinj dhe tĂ« fshijnĂ« çelĂ«sat e vjetĂ«r publikĂ« nga skedarĂ«t authorized_keys.
Cenueshmëria u shkaktua nga pakujdesia e zhvilluesve, të cilët për gjenerimin e një çelësi 521-bit përdorën një nonce të bazuar në një sekuencë të rastësishme 512-bit, me shumë gjasë duke supozuar se entropia prej 512 bitësh ishte e mjaftueshme dhe se 9 bitët e mbetur nuk kishin rëndësi thelbësore. Si rezultat, në të gjithë çelësat privatë të krijuar në PuTTY me algoritmin ecdsa-sha2-nistp521, 9 bitët e parë të nonce gjithmonë merrnin vlera zero.
Për ECDSA dhe DSA, cilësia e gjeneratorit të numrave pseudorastësorë dhe mbulimi i plotë me të dhëna të rastësishme i parametrit të përdorur në llogaritjen e modulit kanë rëndësi vendimtare, sepse përcaktimi qoftë edhe i disa biteve me informacion mbi nonce mjafton për të kryer një sulm me rikuperim të njëpasnjëshëm të të gjithë çelësit privat. Për rikuperimin me sukses të çelësit mjafton të disponohet çelësi publik dhe të analizohen disa dhjetëra nënshkrime dixhitale të gjeneruara me çelësin e prekur për të dhëna të njohura nga sulmuesi. Sulmi reduktohet në zgjidhjen e problemit HNP (Hidden Number Problem).
Nënshkrimet dixhitale të nevojshme mund të merren, për shembull, kur përdoruesi lidhet me serverin SSH të sulmuesit ose me një server Git që përdor SSH si transport. Nënshkrimet e nevojshme për sulmin mund të zbulohen edhe nëse çelësi është përdorur për të nënshkruar të dhëna arbitrare, për shembull git commit-e, gjatë përdorimit të agjentit SSH Pageant për të ridrejtuar trafikun te hosti i zhvilluesit. Marrja e të dhënave të nevojshme për rikuperimin e çelësit gjatë një sulmi MITM përjashtohet, pasi nënshkrimet në SSH nuk transmetohen në formë të hapur.
Vihet nĂ« dukje se njĂ« pĂ«rdorim i ngjashĂ«m i vektorĂ«ve jo tĂ« plotĂ« tĂ« inicializimit Ă«shtĂ« pĂ«rdorur nĂ« PuTTY edhe pĂ«r lloje tĂ« tjera tĂ« kurbave eliptike, por pĂ«r algoritme tĂ« ndryshme nga ECDSA P-521, rrjedhjet e informacionit qĂ« kanĂ« ndodhur nuk mjaftojnĂ« pĂ«r tĂ« realizuar njĂ« sulm funksional pĂ«r rikuperimin e çelĂ«sit. ĂelĂ«sat ECDSA me madhĂ«si tĂ« tjera dhe çelĂ«sat Ed25519 nuk preken nga ky sulm.
Burimi: opennet.ru
