A francia Állami Informatikai és Automatizálási Kutatóintézet (INRIA) és a Nanyang Technological University (Szingapúr) kutatói bemutatták a támadási módszert (), amelyet az SHA-1 algoritmus első gyakorlati megvalósításaként mutatnak be, amelyet hamis PGP és GnuPG digitális aláírások létrehozására lehet használni. A kutatók úgy vélik, hogy mostantól minden gyakorlati támadás az MD5 ellen alkalmazható az SHA-1-re is, bár eddig még mindig jelentős erőforrásokat igényelnek a megvalósításhoz.
A módszer alapja , amely lehetővé teszi, hogy két tetszőleges adathalmazon kiegészítéseket találjanak, amelyek hozzáadása után ütközéseket eredményeznek, így a SHA-1 alkalmazásával az eredmény ugyanazt a hash-t fogja létrehozni. Más szóval, két meglévő dokumentumhoz két kiegészítést lehet kiszámítani, és ha az egyiket az első dokumentumhoz kapcsolják, a másikat pedig a másodikhoz — a SHA-1 hash eredményei az ezekhez a fájlokhoz megegyeznek.
Az új módszer eltér a korábban javasolt hasonló technikáktól az ütközéskeresés hatékonyságának növelésével és a PGP elleni támadás gyakorlati alkalmazásának bemutatásával. Különösen a kutatók képesek voltak előkészíteni két különböző méretű nyilvános PGP kulcsot (RSA-8192 és RSA-6144), amelyek különböző felhasználói azonosítókkal rendelkeztek és SHA-1 ütközést okozó tanúsítványokkal voltak ellátva. tartalmazta az áldozat azonosítóját, míg a tartalmazta a támadó nevét és képét. Ezzel a közölt ütközés révén az azonosító kulcsot tartalmazó tanúsítvány, amely a támadó kulcsát és képét tartalmazta, ugyanazt a SHA-1 hash-t adta, mint az áldozati tanúsítvány, amely a kulcsot és az áldozat nevét tartalmazta.
A támadó kérheti digitális aláírását a saját kulcsához és képéhez egy harmadik fél által működtetett hitelesítési központtól, majd átvitelheti a digitális aláírást az áldozat kulcsára. A digitális aláírás érvényben marad az ütközés és a támadó kulcsának a hitelesítési központ által történő jóváhagyása miatt, ami lehetővé teszi a támadó számára, hogy ellenőrzése alá vonja az áldozat nevét viselő kulcsot (mivel a SHA-1 hash mindkét kulcs esetében megegyezik). Végül a támadó álcázhatja magát az áldozatként, és bármilyen dokumentumot aláírhat az ő nevében.
A támadás továbbra is elég drága, de már teljesen megfizethető a titkosszolgálatok és nagyvállalatok számára. Az egyszerű ütközéskeresés költsége egy olcsóbb NVIDIA GTX 970 GPU használatával 11 ezer dollár volt, míg az adott prefixszel történő ütközéskeresés 45 ezer dollárba került (összehasonlításképpen, 2012-ben az SHA-1 ütközéskeresés költségét 2 millió dollárra becsülték, míg 2015-ben 700 ezer dollárra). A PGP gyakorlati támadásához két hónapnyi számításra volt szükség, 900 NVIDIA GTX 1060 GPU bevonásával, amelyek bérlése 75 ezer dollárba került a kutatóknak.
A kutatók által javasolt ütközés-észlelési módszer körülbelül 10-szer hatékonyabb a korábbi eredményekhez képest — az ütközés számítási nehézségi szintjét 261,2 operációra sikerült csökkenteni, ahelyett, hogy 264,7 lett volna, az adott prefixszel való ütközés esetén pedig 263,4 operációra, ahelyett, hogy 267,1 lett volna. A kutatók javasolják, hogy minél hamarabb térjenek át az SHA-1 használatáról az SHA-256 vagy SHA-3 használatára, mivel előrejelzéseik szerint 2025-re a támadás költsége 10 ezer dollárra csökken.
A GnuPG fejlesztőit október 1-jén értesítették a problémáról (CVE-2019-14855), és november 25-én a GnuPG 2.2.18 kiadásában lépéseket tettek a problémás tanúsítványok blokkolására — az összes digitális azonosító SHA-1 aláírást, amelyet a múlt év január 19. után készítettek, most érvénytelennek tekintik. A CAcert, a PGP kulcsok számára legfontosabb hitelesítő központok egyike tervezi, hogy biztonságosabb hash-funkciók használatára tér át a kulcsok tanúsításánál. Az OpenSSL fejlesztői a támadási módszerről szerzett információk alapján úgy döntöttek, hogy letiltják az SHA-1-et a javasolt alapértelmezett biztonsági szint első szintjén (az SHA-1 nem lesz használható tanúsítványok és digitális aláírások folyamatában a kapcsolódások egyesítésénél).
Forrás: opennet.ru
