Hva er SHAttered? SHA-1 Kollisjonsangrep, forklart

Mar 1, 2025
Personvern og sikkerhet

Den første dagen i 2016 avsluttet Mozilla støtten til en svekkende sikkerhetsteknologi kalt SHA-1 i Firefox-nettleseren. Nesten umiddelbart omvendte de sin beslutning, da det ville kutte tilgangen til noen eldre nettsteder. Men i februar 2017 ble frykten deres endelig oppfylt: forskere brøt SHA-1 ved å lage det første kollisjonsangrepet fra den virkelige verden . Her er hva alt dette betyr.

Hva er SHA-1?

SHA i SHA-1 står for Sikker hasjalgoritme , og rett og slett, du kan tenke på det som et slags matematisk problem eller metode som krypterer dataene som legges i den . Utviklet av USAs NSA, er det en kjernekomponent i mange teknologier som brukes til å kryptere viktige overføringer på internett. Vanlige krypteringsmetoder SSL og TLS, som du kanskje har hørt om, kan bruke en hash-funksjon som SHA-1 for å lage de signerte sertifikatene du ser i nettleserens verktøylinje.

Vi vil ikke gå dypt inn i matematikk og informatikk i noen av SHA-funksjonene, men her er grunnideen. En "hash" er en unik kode basert på inndata av data . Selv liten, tilfeldig bokstavstreng som legges inn i en hash-funksjon som SHA-1, vil returnere et langt, angitt antall tegn, noe som gjør det (potensielt) umulig å tilbakestille tegnstrengen til de opprinnelige dataene. Slik fungerer passordlagring vanligvis. Når du oppretter et passord, blir passordinngangen hash og lagret av serveren. Når du kommer tilbake, når du skriver inn passordet ditt, blir det hashet igjen. Hvis den samsvarer med den opprinnelige hashen, kan inngangen antas å være den samme, og du får tilgang til dataene dine.

Hash-funksjoner er nyttige først og fremst fordi de gjør det enkelt å fortelle om inngangen, for eksempel en fil eller et passord, har endret seg. Når inndataene er hemmelige, som et passord, er hashen nesten umulig å reversere og gjenopprette originaldataene (også kjent som "nøkkelen"). Dette er litt forskjellig fra "kryptering", hvis formål er å kryptere data med det formål å avkode dem senere , ved hjelp av krypter og hemmelige nøkler. Hashes er bare ment for å sikre dataintegritet - for å sikre at alt er det samme. Git, programvaren for versjonskontroll og distribusjon for åpen kildekode, bruker SHA-1 hashes av nettopp denne grunnen .

Det er mye teknisk informasjon, men for å si det enkelt: en hash er ikke det samme som kryptering, siden den brukes til å identifisere om en fil har endret seg .

Hvordan påvirker denne teknologien meg?

La oss si at du må besøke et nettsted privat. Banken din, e-postadressen din, til og med Facebook-kontoen din - alle bruker kryptering for å holde dataene du sender dem private. Et profesjonelt nettsted vil gi kryptering ved å skaffe et sertifikat fra en klarert myndighet - en tredjepart, klarert for å sikre at krypteringen er på nivået, privat mellom nettstedet og brukeren, og ikke blir spionert av noen annen part. Dette forholdet til tredjepart, kalt Sertifikatmyndigheter , eller AT , er avgjørende, siden enhver bruker kan opprette et "selvsignert" sertifikat - du kan til og med gjør det selv på en maskin som kjører Linux med Openssl . Symantec og Digicert er for eksempel to velkjente CA-selskaper.

La oss gå gjennom et teoretisk scenario: How-To Geek ønsker å holde påloggede brukernes økter private med kryptering, så den begjærer en CA som Symantec med en Forespørsel om signering av sertifikat , eller CSR . De skaper en offentlig nøkkel og privat nøkkel for kryptering og dekryptering av data som sendes over internett. CSR-forespørselen sender den offentlige nøkkelen til Symantec sammen med informasjon om nettstedet. Symantec sjekker nøkkelen mot sin registrering for å verifisere at dataene er uendret av alle parter, fordi enhver liten endring i dataene gjør hasjen radikalt annerledes.

Disse offentlige nøklene og digitale sertifikatene er signert av hash-funksjoner, fordi resultatet av disse funksjonene er lett å se. En offentlig nøkkel og et sertifikat med en bekreftet hash fra Symantec (i vårt eksempel), en autoritet, forsikrer en bruker av How-To Geek om at nøkkelen er uendret, og ikke sendes fra noen ondsinnet.

Fordi hasjen er enkel å overvåke og umulig (noen vil si "vanskelig") å reversere, betyr den riktige, verifiserte hash-signaturen at sertifikatet og forbindelsen kan stole på, og data kan avtales å sendes kryptert fra ende til annen. . Men hva om hasjen var faktisk ikke unik ?

Hva er et kollisjonsangrep, og er det mulig i den virkelige verden?

Du har kanskje hørt om "Bursdagsproblem" i matematikk , selv om du kanskje ikke visste hva det ble kalt. Den grunnleggende ideen er at hvis du samler en stor nok gruppe mennesker, er sjansen ganske stor for at to eller flere mennesker vil ha samme bursdag. Høyere enn du forventer, faktisk - nok til at det virker som en merkelig tilfeldighet. I en gruppe så liten som 23 personer er det 50% sjanse for at to deler bursdag.

Dette er den iboende svakheten i alle hashes, inkludert SHA-1. Teoretisk sett bør SHA-funksjonen skape en unik hash for alle data som legges i den, men ettersom antall hashes vokser, blir det mer sannsynlig at forskjellige datapar kan lage den samme hash. Så man kan opprette et ikke-klarert sertifikat med en identisk hash til et klarert sertifikat. Hvis de fikk deg til å installere det ikke-klarerte sertifikatet, kan det skjule seg pålitelig og distribuere ondsinnede data.

Å finne samsvarende hashes i to filer kalles a kollisjonsangrep . Det er kjent at minst et storskala kollisjonsangrep allerede har skjedd for MD5-hashes. Men 27. februar 2017 kunngjorde Google Knust , den aller første laget kollisjonen for SHA-1. Google var i stand til å lage en PDF-fil som hadde samme SHA-1-hash som en annen PDF-fil, til tross for at den hadde annet innhold.

SHAttered ble utført på en PDF-fil. PDF-filer er et relativt løst filformat; mange små endringer på bitnivå kan gjøres uten å hindre leserne i å åpne den eller forårsake synlige forskjeller. PDF-filer brukes også ofte til å levere skadelig programvare. Mens SHAttered kunne jobbe med andre typer filer, som ISO-er, er sertifikater strengt spesifisert, noe som gjør et slikt angrep usannsynlig.

Så hvor enkelt er dette angrepet å utføre? SHAttered var basert på en metode oppdaget av Marc Stevens i 2012 som krevde over 2 ^ 60,3 (9,223 kvintillioner) SHA-1-operasjoner - et svimlende antall. Imidlertid er denne metoden fremdeles 100.000 ganger færre operasjoner enn det som ville være nødvendig for å oppnå det samme resultatet med brute force. Google fant ut at med 110 avanserte grafikkort som fungerer parallelt, vil det ta omtrent ett år å produsere en kollisjon. Å leie denne beregningstiden fra Amazon AWS vil koste rundt $ 110.000. Husk at når prisene faller på datamaskindeler, og du kan få mer strøm til mindre, blir angrep som SHAttered lettere å trekke i gang.

110 000 dollar kan virke som mye, men det er innenfor overkommelige priser for noen organisasjoner - noe som betyr at cybervillians i virkeligheten kan smi digitale dokumentsignaturer, forstyrre backup- og versjonskontrollsystemer som Git og SVN, eller få en ondsinnet Linux ISO til å virke legitim.

Heldigvis er det formildende faktorer som forhindrer slike angrep. SHA-1 brukes sjelden til digitale signaturer lenger. Sertifikatmyndigheter leverer ikke lenger sertifikater signert med SHA-1, og både Chrome og Firefox har sluppet støtte for dem. Linux-distribusjoner utgis vanligvis oftere enn en gang per år, noe som gjør det upraktisk for en angriper å lage en ondsinnet versjon og deretter generere en polstret for å ha samme SHA-1-hash.

På den annen side skjer noen angrep basert på SHAttered allerede i den virkelige verden. SVN-versjonskontrollsystemet bruker SHA-1 til å skille filer. Hvis du laster opp de to PDF-filene med identiske SHA-1-hashes til et SVN-arkiv, vil det føre til det å ødelegge .

Hvordan kan jeg beskytte meg mot SHA-1-angrep?

Det er ikke mye for den typiske brukeren å gjøre. Hvis du bruker sjekksummer for å sammenligne filer, bør du bruke SHA-2 (SHA-256) eller SHA-3 i stedet for SHA-1 eller MD5. Hvis du er utvikler, må du også bruke mer moderne hashingalgoritmer som SHA-2, SHA-3 eller bcrypt. Hvis du er bekymret for at SHAttered har blitt brukt til å gi to forskjellige filer samme hash, har Google gitt ut et verktøy på SHAttered nettsted som kan sjekke for deg.

Bildekreditter: Lego Firefox , Mye hasj , Vær så snill, ikke skad nettforfatteren ukjent, Google .

.post-innhold .inngangs-bunntekst

What Is SHAttered? SHA-1 Collision Attacks, Explained

Shattered SHA-1 Exploit Explained

SHA-1 Shattered: Overview Of SHA-1, How And Why It Broke

Looking At SHA-1 Collision

USENIX Security '17 - Speeding Up Detection Of SHA-1 Collision Attacks...

SHA1 Collision - What's It All About?

SHAttered - SHA-1 - CS50 Live - S3E1

How We Created The First SHA-1 Collision And What It Means For Hash Security

Security Snippets: MD5, SHA-1 And SHA-2

SHAttered - SHA1 Busted: Demo Of The Files Used For The Collision Attack

How We Created The First SHA-1 Collision And What It Means For Hash Security - Defcon 25

USENIX Security '20 - SHA-1 Is A Shambles: First Chosen-Prefix Collision On SHA-1 And Application


Personvern og sikkerhet - Mest populære artikler

Hvordan aktivere eller deaktivere en Windows 10-brukerkonto

Personvern og sikkerhet Nov 26, 2024

Windows lar deg ha flere lokale brukerkontoer på samme enhet. Dette lar hver bruker ha sin egen lagringsplass, personlige skrivebord og tilpassede innstillinger. Noen gang..


Slik skjuler du sensitive varsler fra iPhone-låseskjermen

Personvern og sikkerhet Nov 8, 2024

UCACHED INNHOLD I iOS 11 gir iPhone deg mye mer kontroll over varsler. Du kan angi bestemte apper som "sensitive", slik at det skjuler innholdet i varslinger mens telefonen er lå..


Bør jeg la apper sende "bruksstatistikk" og "feilrapporter"?

Personvern og sikkerhet Mar 10, 2025

Mange programmer ønsker å sende bruksstatistikk, feillogger, krasjrapporter og annen diagnostikk til serverne sine. Noen deaktiverer disse alternativene, men burde du? ..


Hvorfor kan jeg ikke koble til LAN-spill på hjemmenettverket?

Personvern og sikkerhet Sep 29, 2025

LAN-spill er en tidskrevd tradisjon hvor du kan koble deg til folk direkte på ditt lokale nettverk og nyte lave ping-tider og moro for flerspiller, men hva om datamaskiner nekter �..


Slik bruker du Nest-termostaten som en bevegelsesdetektor

Personvern og sikkerhet Apr 7, 2025

UCACHED INNHOLD Selv om Nest-termostaten din åpenbart er ment for å justere temperaturen i hjemmet ditt, kan den trekke dobbelt funksjon og også fungere som en slags bevegelses..


Hva er en TPM, og hvorfor trenger Windows en for diskkryptering?

Personvern og sikkerhet Jul 11, 2025

BitLocker-diskkryptering krever vanligvis en TPM på Windows. Microsofts EFS-kryptering kan aldri bruke en TPM. Den nye "Enhetskryptering" -funksj..


Del apper, musikk og videoer med Apple Family Sharing på iPhone / iPad

Personvern og sikkerhet Mar 25, 2025

UCACHED INNHOLD Historisk sett var den eneste måten å dele app-, bok-, musikk- og videokjøp på tvers av iOS-enheter å logge på alle enheter med samme Apple-konto (en usikker..


Wi-Fi's WPA2-kryptering kan knekkes frakoblet: Slik gjør du det

Personvern og sikkerhet Jul 12, 2025

Når det gjelder å sikre Wi-Fi-nettverket ditt, Vi anbefaler alltid WPA2-PSK-kryptering . Det er den eneste virkelig effektive måten å begrense tilgangen til Wi-Fi..


Kategorier