Mikä on SHAttered? SHA-1 törmäyshyökkäykset, selitetty

Mar 1, 2025
Yksityisyys ja turvallisuus

Vuoden 2016 ensimmäisenä päivänä Mozilla lopetti tuen heikkenevälle SHA-1-nimiselle suojaustekniikalle Firefox-selaimessa. Melkein välittömästi he kumoivat päätöksensä, koska se rajoittaisi pääsyä joillekin vanhemmille verkkosivustoille. Mutta helmikuussa 2017 heidän pelkonsa toteutuivat lopulta: tutkijat rikkoivat SHA-1: n luomalla ensimmäinen reaalimaailman törmäyshyökkäys . Tässä kaikki mitä se tarkoittaa.

Mikä on SHA-1?

SHA-1: n SHA tarkoittaa Suojattu hajautusalgoritmi , ja yksinkertaisesti sanottuna, voit ajatella sitä eräänlaisena matemaattisena ongelmana tai menetelmänä sekoittaa siihen asetetut tiedot . Yhdysvaltojen NSA on kehittänyt sen keskeisen osan monista tekniikoista, joita käytetään tärkeiden Internet-lähetysten salaamiseen. Yleiset salausmenetelmät SSL ja TLS, joista olet ehkä kuullut, voivat käyttää SHA-1: n mukaista hash-toimintoa luodaksesi selaimen työkalupalkissa näkyvät allekirjoitetut varmenteet.

Emme mene syvälle minkään SHA-toiminnon matematiikkaan ja tietojenkäsittelyyn, mutta tässä on perusajatus. "Hajautus" on yksilöllinen koodi, joka perustuu minkä tahansa tiedon syöttöön . Jopa pieni, satunnainen merkkijono, joka syötetään hash-toimintoon, kuten SHA-1, palauttaa pitkän, asetetun merkkimäärän, mikä tekee (mahdollisesti) mahdottomaksi palauttaa merkkijonon takaisin alkuperäisiin tietoihin. Näin salasanojen tallennus toimii yleensä. Kun luot salasanan, palvelin hajauttaa ja tallentaa salasanan syötteen. Palatessasi, kun kirjoitat salasanasi, se hajautetaan uudelleen. Jos se vastaa alkuperäistä tiivistettä, syötteen voidaan olettaa olevan sama, ja sinulle myönnetään pääsy tietoihisi.

Hash-toiminnot ovat hyödyllisiä ensisijaisesti siksi, että niiden avulla on helppo selvittää, onko syöttö, esimerkiksi tiedosto tai salasana, muuttunut. Kun syöttötiedot ovat salaisia, kuten salasana, hashia on melkein mahdotonta palauttaa ja palauttaa alkuperäiset tiedot (tunnetaan myös nimellä "avain"). Tämä eroaa hieman salauksesta, jonka tarkoitus on salata tietoja myöhemmin purettavan salauksen purkamiseksi , käyttäen salauksia ja salaisia ​​avaimia. Hajautusten tarkoituksena on yksinkertaisesti varmistaa tietojen eheys - varmistaa, että kaikki on sama. Git, avoimen lähdekoodin versionhallinta- ja jakeluohjelmisto, käyttää SHA-1-hajautuksia juuri tästä syystä .

Se on paljon teknistä tietoa, mutta yksinkertaisesti sanottuna: hash ei ole sama asia kuin salaus sitä käytetään tunnistamaan, onko tiedosto muuttunut .

Kuinka tämä tekniikka vaikuttaa minuun?

Oletetaan, että sinun täytyy käydä verkkosivustolla yksityisesti. Pankkisi, sähköpostiosoitteesi ja jopa Facebook-tilisi - kaikki käyttävät salausta pitämään lähettämäsi tiedot yksityisinä. Ammattimainen verkkosivusto tarjoaa salauksen hankkimalla sertifikaatin luotetulta viranomaiselta - kolmannelta osapuolelta, jonka on luotettu varmistamaan, että salaus on tasolla, yksityinen verkkosivuston ja käyttäjän välillä eikä mikään muu osapuoli vakoile sitä. Tämä suhde kolmatta osapuolta kutsutaan Varmenneviranomaiset tai ETTÄ , on ratkaisevan tärkeää, koska kuka tahansa käyttäjä voi luoda itse allekirjoitetun varmenteen - voit jopa tee se itse koneella, jossa on Linux Opensl: n kanssa . Symantec ja Digicert ovat esimerkiksi kaksi laajalti tunnettua CA-yritystä.

Käydään läpi teoreettinen skenaario: How-To Geek haluaa pitää kirjautuneen käyttäjän istuntoihin yksityisenä salauksella, joten se vetää Symantecin kaltaista CA: ta Todistuksen allekirjoituspyyntö tai CSR . Ne luovat a julkinen avain ja yksityinen avain Internetin kautta lähetettyjen tietojen salaamiseen ja salauksen purkamiseen. CSR-pyyntö lähettää julkisen avaimen Symantecille yhdessä verkkosivustoa koskevien tietojen kanssa. Symantec tarkistaa avaimen tietueestaan ​​varmistaakseen, että kaikki osapuolet eivät muutu tietoja, koska pienet muutokset tiedoissa tekevät hajautuksen radikaalisti erilaiseksi.

Nämä julkiset avaimet ja digitaaliset varmenteet on allekirjoitettu hash-funktioilla, koska näiden toimintojen tulos on helppo nähdä. Julkinen avain ja varmenne, jolla on vahvistettu hash Symanteciltä (esimerkissämme), viranomainen, vakuuttaa How-To Geekin käyttäjälle, että avain on muuttumaton eikä sitä ole lähetetty keneltäkään haitalliselta.

Koska hashia on helppo seurata ja mahdotonta (jotkut sanovat "vaikeaksi") kääntää, oikea, vahvistettu hash-allekirjoitus tarkoittaa, että varmenteeseen ja yhteyteen voidaan luottaa ja tiedot voidaan sopia lähetettäväksi salattuina päästä päähän . Mutta entä jos hash ei ollut oikeastaan ​​ainutlaatuinen ?

Mikä on törmäyshyökkäys ja onko se mahdollista todellisessa maailmassa?

Olet ehkä kuullut "Syntymäpäiväongelma" matematiikassa , vaikka et ehkä tiennyt, mitä sitä kutsuttiin. Perusajatus on, että jos kokoat tarpeeksi suuren joukon ihmisiä, on melko suuri mahdollisuus, että kahdella tai useammalla ihmisellä on sama syntymäpäivä. Itse asiassa korkeampi kuin voit odottaa - tarpeeksi, että se tuntuu oudolta sattumalta. Alle 23 hengen ryhmässä on 50% mahdollisuus, että kaksi jakaa syntymäpäivänsä.

Tämä on luontainen heikkous kaikissa hajautuksissa, mukaan lukien SHA-1. Teoriassa SHA-funktion tulisi luoda yksilöllinen hajautusarvo kaikkiin siihen lisättyihin tietoihin, mutta hashien määrän kasvaessa on todennäköisempää, että eri tietoparit voivat luoda saman hajautusarvon. Joten voisi luoda epäluotettavan varmenteen, jonka hash on identtinen luotettavan varmenteen kanssa. Jos he saavat sinut asentamaan epäluotettavan varmenteen, se voisi peittää luotettavan ja levittää haitallista tietoa.

Vastaavien hashien löytämistä kahdesta tiedostosta kutsutaan a törmäyshyökkäys . Ainakin yhden laajamittaisen törmäyshyökkäyksen tiedetään jo tapahtuneen MD5-hajautuksissa. Mutta 27. helmikuuta 2017 Google ilmoitti SH muutettu , kaikkien aikojen ensimmäinen SHA-1: n törmäys. Google pystyi luomaan PDF-tiedoston, jolla oli sama SHA-1-hash kuin toisella PDF-tiedostolla, huolimatta siitä, että sillä oli erilainen sisältö.

SHAttered suoritettiin PDF-tiedostolle. PDF-tiedostot ovat suhteellisen löysä tiedostomuoto; paljon pieniä, bittitason muutoksia voidaan tehdä estämättä lukijoita avaamasta sitä tai aiheuttamatta näkyviä eroja. PDF-tiedostoja käytetään myös usein haittaohjelmien toimittamiseen. Vaikka SHAttered voisi toimia muun tyyppisissä tiedostoissa, kuten ISO-tiedostoissa, varmenteet määritetään tiukasti, mikä tekee tällaisesta hyökkäyksestä epätodennäköisen.

Joten kuinka helppo tämä hyökkäys on suorittaa? SHAttered perustui a menetelmä löysi Marc Stevens vuonna 2012, mikä vaati yli 2 ^ 60,3 (9,223 kvintiljoonaa) SHA-1-operaatiota - hämmästyttävän määrän. Tämä menetelmä on kuitenkin edelleen 100 000 kertaa vähemmän operaatioita kuin mitä vaaditaan saman tuloksen saavuttamiseksi raakalla voimalla. Google havaitsi, että kun 110 huippuluokan näytönohjainta työskentelee samanaikaisesti, törmäyksen aikaansaaminen kestää noin vuoden. Tämän laskenta-ajan vuokraaminen Amazon AWS: lta maksaa noin 110 000 dollaria. Muista, että kun tietokoneosien hinnat laskevat ja saat enemmän virtaa vähemmän, SHAtteredin kaltaiset hyökkäykset ovat helpommin irrotettavissa.

110 000 dollaria saattaa tuntua paljon, mutta se on joillekin organisaatioille kohtuuhintaisuus - mikä tarkoittaa, että tosielämän kyberviljat voivat väärentää digitaalisia asiakirjojen allekirjoituksia, häiritä varmuuskopiointi- ja versionhallintajärjestelmiä, kuten Git ja SVN, tai tehdä haitallisesta Linux ISO: sta laillisen.

Onneksi on olemassa lieventäviä tekijöitä, jotka estävät tällaisia ​​hyökkäyksiä. SHA-1: tä käytetään enää harvoin digitaalisiin allekirjoituksiin. Varmentajat eivät enää tarjoa SHA-1: llä allekirjoitettuja varmenteita, ja sekä Chrome että Firefox ovat hylänneet niiden tuen. Linux-jakelut julkaisevat yleensä useammin kuin kerran vuodessa, joten hyökkääjän on epäkäytännöllistä luoda haitallinen versio ja luoda sitten yksi pehmuste, jolla on sama SHA-1-hash.

Toisaalta joitain SHAttered-pohjaisia ​​hyökkäyksiä tapahtuu jo todellisessa maailmassa. SVN-versionhallintajärjestelmä käyttää SHA-1: tä tiedostojen erottamiseen. Kahden samanlaisen SHA-1-tiivisteen sisältävän PDF-tiedoston lataaminen SVN-arkistoon aiheuttaa sen korruptoitumaan .

Kuinka voin suojata itseäni SHA-1-hyökkäyksiltä?

Tyypillisen käyttäjän ei tarvitse tehdä paljon. Jos käytät tarkistussummia tiedostojen vertaamiseen, käytä SHA-2 (SHA-256) tai SHA-3 eikä SHA-1 tai MD5. Samoin, jos olet kehittäjä, muista käyttää nykyaikaisempia hajautusalgoritmeja, kuten SHA-2, SHA-3 tai bcrypt. Jos olet huolissasi siitä, että SHAtteredia on käytetty kahden erillisen tiedoston antamiseen samalle hashille, Google on julkaissut työkalun SHMuutettu sivusto joka voi tarkistaa sinulle.

Kuvahyvitykset: Lego Firefox , Paljon Hashia , Älä vahingoita verkkokirjailijaa tuntematon, Google .

.entry-sisältö .entry-alatunniste

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


Yksityisyys ja turvallisuus - Suosituimmat artikkelit

Mitä tietoja varas voi saada varastetusta puhelimesta tai kannettavasta tietokoneesta?

Yksityisyys ja turvallisuus Jul 20, 2025

SÄHKÖISETTÖTÖN SISÄLTÖ Laitteiston menettäminen on tarpeeksi huono, mutta mitä tapahtuu henkilötiedoillesi? Voisiko puhelimella, tabletilla tai kannettavalla tietokoneell..


Kuinka lopettaa sulatus ja Spectre-korjaukset hidastavat tietokonetta

Yksityisyys ja turvallisuus Jan 17, 2025

Meltdownin ja Spectren Windows-korjaukset hidastaa tietokonettasi. Uudemmassa tietokoneessa, jossa on Windows 10, et todennäköisesti huomaa. Mutta tietokoneella, jossa..


Kuinka kauan Microsoft tukee Windows-versiota tietoturvapäivityksillä?

Yksityisyys ja turvallisuus May 23, 2025

Viime WannaCry ransomware -hyökkäys osoittaa automaattiset tietoturvapäivitykset . Riippumatta siitä, kuinka varovainen olet, haittaohjelma voi hy�..


Miksi jokaisella tietokoneesi käyttäjällä pitäisi olla oma käyttäjätili

Yksityisyys ja turvallisuus Nov 16, 2024

Useita käyttäjätilejä oli kerran epäkäytännöllistä käyttää Windowsissa, mutta ne eivät ole enää. Jos tietokonetta käyttää useita ihmisiä - etenkin lapset tai vier..


Miksi Applen HomeKit vaatii kaikki uudet Smarthome-laitteistot?

Yksityisyys ja turvallisuus Sep 21, 2025

SÄHKÖISETTÖTÖN SISÄLTÖ Applen HomeKit-kotiautomaatiojärjestelmä on herättänyt suurta kiinnostusta ja yhtä paljon tarra-shokkia siitä, että se vaatii investointeja uut..


IPhonen löytäminen Apple Watchin tai iCloudin avulla

Yksityisyys ja turvallisuus Dec 22, 2024

SÄHKÖISETTÖTÖN SISÄLTÖ Menetkö usein väärään iPhoneen? Jos sinulla on Apple Watch, puhelimesi löytäminen on helppoa ping-ominaisuuden avulla, mikä säästää hämme..


Kuinka kutsua kaikki ystävät Facebook-tapahtumakutsuihin tai estää heidät

Yksityisyys ja turvallisuus May 6, 2025

Jos olet koskaan luonut Facebook-tapahtuman, tiedät, että voi olla vaikea kutsua enemmän kuin muutama ystävä kerrallaan. Onneksi on olemassa uusi tapa kutsua melkein kaikki yst..


Lisää automaattinen verkkosivustojen salaus Firefoxiin

Yksityisyys ja turvallisuus Jul 15, 2025

SÄHKÖISETTÖTÖN SISÄLTÖ Haluatko, että verkkosivustot avautuvat automaattisesti salattuina ja suojatuina? Ota käyttöön joukko verkkosivustoja ja mahdollisuus luoda omia salaussää..


Luokat