Marvin Attack, en tidsbaserad RSA-cracking-attack

Marvin Attack

Marvin är återkomsten av en 25 år gammal sårbarhet som tillåter RSA-signering och dekrypteringsoperationer

Under ESORICS 2023 (European Symposium on Computer Security Research) som hölls den 25-29 september i Nederländerna, en säkerhetsforskare som jobbar för Red Hat, presenterade "Marvin Attack", en attackteknik vilket gör att originaldata kan bestämmas genom att mäta fördröjningar under operationer dekryptering baserad på RSA-algoritmen.

Marvin Attack, Det är en variant av Bleichenbacher-metoden, som föreslogs 1998, och fortsätter utvecklingen av ROBOT- och New CAT-attackerna som publicerades 2017 och 2019.

Marvin-attacken är återkomsten av en 25 år gammal sårbarhet som gör att RSA-signerings- och dekrypteringsoperationer kan utföras som en angripare med förmågan att endast observera tiden för dekrypteringsoperationen som utförs med den privata nyckeln.

1998 upptäckte Daniel Bleichenbacher att felmeddelanden från SSL-servrar för fel i PKCS #1 v1.5-utfyllnad möjliggjorde en adaptivt vald chiffertextattack; Denna attack bryter fullständigt konfidentialiteten för TLS när den används med RSA-kryptering. 2018 visade Hanno Böck, Juraj Somorovsky och Craig Young 19 år senare att många internetservrar fortfarande var sårbara för små variationer av den ursprungliga attacken.

I grund och botten nämns det att essensen av metoden är att en angripare, baserat på olika serverreaktioner och olika utförandetider, kan separera korrekta och felaktiga orakelblock Tillagd med standarden PKCS #1 v1.5 för att justera krypterad data längs blockgränsen. Genom att manipulera information om utfyllnadsblockens korrekthet kan en angripare använda brute force för att återskapa en lämplig chiffertext.

I det här fallet återställer attacken inte den privata nyckeln direkt, utan dekrypterar bara texten. kryptering eller generera ett falskt signerat meddelande. För att genomföra en framgångsrik attack är det nödvändigt att skicka en mycket stor volym testmeddelanden som ska dekrypteras.

Använda en attack mot servrar TLS använder kryptering baserat på RSA-nycklar tillåter angriparen att passivt lagra uppfångad trafik och sedan dekryptera den. För servrar som stöder PFS blir det mycket svårare att utföra en attack och framgången beror på hur snabbt attacken utförs.

Dessutom, metoden möjliggör generering av en fiktiv digital signatur som verifierar innehållet i TLS 1.2 ServerKeyExchange-meddelanden eller TLS 1.3 CertificateVerify-meddelanden som överförs i nyckelutbytessteget, som kan användas för att utföra MITM-attacker för att fånga upp TLS-anslutningen mellan klienten och servern.

Det nämns det skillnaden mellan metoden Marvin reduceras till en Förbättrad teknik för att separera korrekta och felaktiga inkrementella data, filtrera falska positiva resultat, bestämma beräkningsfördröjningar mer exakt och använda ytterligare tredjepartskanaler under mätningen.

I praktiken tillåter den föreslagna metoden att dekryptera trafik eller generera digitala signaturer utan att känna till den privata RSA-nyckeln. För att testa attackens tillämplighet publicerades ett speciellt skript för att kontrollera TLS-servrar och verktyg för att identifiera problem i bibliotek.

Problemet påverkar flera protokollimplementeringar som använder RSA och PKCS. Även om moderna kryptografiska bibliotek innehåller visst skydd mot attacker baserat på Bleichenbacher-metoden, studie visade att bibliotek har öppna läckkanaler och ger inte en konstant bearbetningstid för korrekt och felaktigt ifyllda paket. Till exempel är Marvins implementering av GnuTLS-attacken inte knuten till kod som direkt utför RSA-relaterade beräkningar, utan använder snarare olika körtider för kod som avgör om ett visst felmeddelande ska visas.

Författaren till studien tror också att den klass av sårbarheter som beaktas inte är begränsad till RSA och kan påverka många andra kryptografiska algoritmer som är beroende av standardbibliotek för heltalsberäkningar.

För att bekräfta möjligheten att utföra Marvin-attacken i praktiken demonstrerade forskaren metodens tillämpbarhet på applikationer baserade på biblioteken M2Crypto och pyca/kryptografi, där några timmar räckte för att äventyra krypteringen genom att utföra ett experiment på en genomsnittlig bärbar dator.

Slutligen, om du är intresserad av att kunna veta mer om det, kan du konsultera detaljerna i följande länk.


Lägg till som prioriterad källa i Google