Marvin yra 25 metų senumo pažeidžiamumo grąžinimas, leidžiantis atlikti RSA pasirašymo ir iššifravimo operacijas
Rugsėjo 25–29 d. Nyderlanduose vykusioje Europos kompiuterių saugumo tyrimų simpoziume „ESORICS 2023 “ „Red Hat“ dirbantis saugumo tyrėjas pristatė „Marvin Attack“ – atakos techniką , leidžiančią nustatyti originalius duomenis, matuojant iššifravimo operacijų vėlavimus, pagrįstus RSA algoritmu.
„Marvin Attack“ yra 1998 m. pasiūlyto Bleichenbacherio metodo variacija ir tęsia 2017 ir 2019 m. paskelbtų ROBOT ir New CAT atakų plėtrą.
Marvin ataka yra 25 metų senumo pažeidžiamumo grąžinimas, leidžiantis RSA pasirašymo ir iššifravimo operacijas atlikti kaip užpuolikas, turintis galimybę stebėti tik iššifravimo operacijos, atliekamos naudojant privatų raktą, laiką.
1998 m. Danielis Bleichenbacheris atrado, kad SSL serverių pateikiami klaidų pranešimai dėl PKCS #1 v1.5 užpildymo klaidų įgalino adaptyviai pasirinktą šifruoto teksto ataką; Ši ataka visiškai pažeidžia TLS konfidencialumą, kai naudojama su RSA šifravimu. 2018 m. Hanno Böckas, Juraj Somorovsky ir Craig Young po 19 metų parodė, kad daugelis interneto serverių vis dar buvo pažeidžiami dėl nedidelių pradinės atakos variantų.
Iš esmės, šis metodas apima užpuoliką, kuris, remdamasis skirtingomis serverio reakcijomis ir vykdymo laiku, gali atskirti teisingus ir neteisingus „Oracle“ blokus, pridėtus naudojant PKCS #1 v1.5 standartą, kad sulygiuotų užšifruotus duomenis pagal blokų ribą. Manipuliuodamas informacija apie papildymo blokų tikslumą, užpuolikas gali naudoti grubią jėgą, kad atkurtų galiojantį šifruotą tekstą.
Šiuo atveju ataka tiesiogiai neatkuria privataus rakto; ji leidžia tik iššifruoti šifruotą tekstą arba sugeneruoti suklastotą pasirašytą pranešimą. Norint sėkmingai įvykdyti ataką, iššifravimui reikia išsiųsti labai didelį kiekį bandomųjų pranešimų.
Ataka prieš TLS serverius, kurie naudoja RSA šifravimą, leidžia užpuolikui pasyviai saugoti perimtą srautą ir jį iššifruoti . Serveriams, kurie palaiko PFS, ataką atlikti tampa daug sunkiau, o sėkmė priklauso nuo to, kaip greitai ataka įvykdoma.
Be to, metodas leidžia generuoti fiktyvų skaitmeninį parašą , kuris patikrina „ServerKeyExchange“ pranešimų TLS 1.2 arba „CertificateVerify“ pranešimų TLS 1.3 turinį, perduodamą raktų mainų etape, ir kuris gali būti naudojamas MITM atakoms atlikti, siekiant perimti TLS ryšį tarp kliento ir serverio.
Minimas, kad skirtumas tarp Marvino metodo slypi patobulintoje teisingų ir neteisingų papildomų duomenų atskyrimo , klaidingai teigiamų rezultatų filtravimo, tikslesnio skaičiavimo vėlavimų nustatymo ir papildomų trečiųjų šalių kanalų naudojimo matavimo metu technologijose.
Praktiškai siūlomas metodas leidžia iššifruoti srautą arba generuoti skaitmeninius parašus nežinant privataus RSA rakto. Atakos pritaikomumui išbandyti buvo paskelbtas specialus TLS serverių tikrinimo scenarijus ir bibliotekose esančioms problemoms identifikuoti skirti įrankiai.
Ši problema paveikia keletą protokolų įgyvendinimų, kurie naudoja RSA ir PKCS . Nors šiuolaikinės kriptografinės bibliotekos tam tikra prasme apsaugo nuo atakų, pagrįstų Bleichenbacherio metodu, tyrimas atskleidė, kad šios bibliotekos turi atvirus nutekėjimo kanalus ir neužtikrina nuoseklaus apdorojimo laiko paketams su teisingu ir neteisingu užpildymu. Pavyzdžiui, Marvino „GnuTLS“ atakos įgyvendinimas nėra susietas su kodu, kuris tiesiogiai atlieka su RSA susijusius skaičiavimus, o naudoja skirtingą vykdymo laiką kodui, kuris nusprendžia, ar rodyti konkretų klaidos pranešimą.
Tyrimo autorius taip pat mano, kad nagrinėjamų pažeidžiamumų klasė neapsiriboja RSA ir gali turėti įtakos daugeliui kitų kriptografinių algoritmų, kurie priklauso nuo standartinių bibliotekų sveikųjų skaičių skaičiavimams.
Siekdamas patvirtinti galimybę praktiškai įvykdyti Marvin ataką, tyrėjas pademonstravo metodo pritaikymą programoms, pagrįstoms M2Crypto ir pyca/kriptografijos bibliotekomis, kuriose pakako kelių valandų, kad būtų pažeistas šifravimas, atlikdamas eksperimentą su vidutinis nešiojamas kompiuteris.
Galiausiai, jei norite sužinoti daugiau, išsamią informaciją galite rasti šioje nuorodoje.