Key Reinstallation Attack ( KRACK - Key Reinstallation Attack ) on uusintahyökkäys mihin tahansa Wi - Fi - verkkoon WPA2 - salauksella .
Belgialaiset tutkijat Mathy Vanhoef ja Frank Piessens löysivät sen ensimmäisen kerran vuonna 2016. [1] Tutkimuksen tulokset julkaistiin lokakuussa 2017. Tämän hyökkäyksen avulla hyökkääjä voi "kuunnella" dataa ja joissain tapauksissa jopa "väärentää" asiakkaan ja tukiaseman välillä välitettyjä tietoja.
Kaikki suojatut Wi-Fi-verkot käyttävät 4- suuntaista kättelyä [ salausavaimen luomiseen . Hyökkääjä pakottaa uhrin nollaamaan jo käytetyn salausavaimen 4-suuntaisen kättelyn kolmannessa vaiheessa.
Koska WPA2-protokollassa käytetään AES-CCMP-virtasalausta, uudelleenavainnointi heikentää salausta huomattavasti. Siten hyökkääjä voi suorittaa kryptohyökkäyksen, selvittää avaimen ja "johdottaa" asiakkaan ja tukiaseman välillä vaihdetut tiedot. Linux - järjestelmissä[ mitä? ] ja Android 6.0 hyökkäyksen seurauksena nolla-avain nollattiin, mikä helpotti huomattavasti laitteen hakkerointia.
Kun uusi asiakas muodostaa yhteyden Wi-Fi-verkkoon, jaettu salausavain neuvotellaan neljässä vaiheessa (4-vaiheinen "kättely"). Sovittua avainta käytetään sitten kaikkien "normaalien" datapakettien salaamiseen. Koska yksittäiset viestit voivat kuitenkin kadota, liityntäpiste ( English Access Point, AP ) voi lähettää uudelleen kolmannen vaiheen viestejä, kunnes se vastaanottaa kuittauksen vastaanottamisesta. Tämän seurauksena asiakas voi saada tämän viestin useita kertoja. Joka kerta kun asiakas vastaanottaa tällaisen viestin, se asettaa olemassa olevan salausavaimen ja nollaa laskurit ( englanniksi replay counters ). Tutkijat pystyivät todistamaan käytännössä, että hyökkääjä pystyy pakottamaan uhrin nollaamaan laskurit lähettämällä 3. vaiheen viestin uudelleen neljännen vaiheen "kättelyn" aikana.
Salausavaimen uudelleenkäytön ansiosta on mahdollista hyökätä salausprotokollaa vastaan : toistaa paketteja, purkaa salaus ja jopa väärentää niiden sisältöä [2] . Tämä menetelmä soveltuu hyökkäämään ryhmäavaimen, nopean peruspalvelujoukon (BSS) siirtymän, vertaisavaimen, tunneloidun suoran linkin asennuksen (TDLS) vertaisavaimen (TPK) tai langattoman verkon hallinnan (WNM) lepotilan [3] protokollien kanssa .
Tietyissä olosuhteissa hyökkääjä ei voi vain "kuunnella" Wi-Fi-liikennettä, vaan myös suorittaa useita välimieshyökkäyksiä: siepata TCP - istuntoja, lisätä tietoja HTTP-istuntoihin, toistaa osoite tai lähettää paketteja, ja suorittaa muita hyökkäyksiä, kuten huijausta [3] .
Hyökkääjät voivat kuunnella verkkoliikennettä ja varastaa salasanoja, HTTP-evästeitä ja muuta vastaavaa. Hyökkääjät saavat myös mahdollisuuden purkaa TCP SYN -pakettien salaus , mikä mahdollistaa pakettilaskurin asettamisen ja TCP-istunnon varastamisen. WPA2:n käytöstä huolimatta hyökkääjällä on siis mahdollisuus suorittaa välimieshyökkäys, ja se voi myös lisätä haitallisia moduuleja HTTP-tietoihin. Hyökkääjä voi esimerkiksi ruiskuttaa haittaohjelmia HTTP-tietoihin, jotka uhri saa katsomistaan verkkosivustoista. [neljä]
KRACK-hyökkäyksen seuraukset ovat erityisen vaarallisia, jos Wi-Fi-verkko käyttää WPA-TKIP- tai GCMP-salausprotokollia AES-CCMP:n sijaan. On huomattava, että GCMP-protokolla on WiGig (IEEE 802.11ad) -standardin perusta, jonka pitäisi yleistyä lähivuosina. [neljä]
Taulukko näyttää hyökkääjän toimet KRACK-hyökkäyksen seurauksena suhteessa asiakkaaseen ja tukiasemaan (AP) riippuen käytetystä tiedon salausprotokollasta (nuolet näyttävät ohjeet tietopakettien lähettämiseen):
pöytäkirja | Toistaa | Salauksen purku | väärennös |
---|---|---|---|
TKIP | AP → asiakas | asiakas → AP | asiakas → AP |
CCMP | AP → asiakas | asiakas → AP | - |
GCMP | AP → asiakas | asiakas → AP | asiakas ↔ AP |
Hyökkäys on erityisen tuhoisa wpa_supplicantin versioille 2.4 ja 2.5, Wi-Fi-asiakkaalle, jota käytettiin joissakin Linux-käyttöjärjestelmissä haavoittuvuuden havaitsemisen aikaan . Tämä asiakas asensi tyhjäavaimen oikean avaimen uudelleenasennuksen sijaan. Tämä haavoittuvuus johtui 802.11-standardin virheestä, joka implisiittisesti määräsi tyhjentämään muistin salausavaimesta heti sen asennuksen jälkeen. Koska Android käyttää muokattua wpa_supplicant, Android 6.0 ja Android Wear 2.0 sisältävät myös tämän haavoittuvuuden. Tämän seurauksena tämä hyökkäys vaikuttaa 31,2 prosenttiin Android-laitteista. [5]
Taulukko näyttää KRACK-hyökkäyksen vaikutuksen erityyppisiin Wi-Fi-asiakkaisiin. Toinen sarake sisältää tietoja siitä, salliiko asiakastoteutus kolmannen vaiheen viestin uudelleenlähettämisen 4-suuntaisessa kättelyssä.
Toteutus | Re.Msg3 | 4 tapaa |
---|---|---|
OS X 10.9.5 | Joo | haavoittuvainen |
macOS Sierra 10.12 | Joo | haavoittuvainen |
iOS 10.3.1 | Ei | ei haavoittuvainen |
wpa_supplicant v2.3 | Joo | haavoittuvainen |
wpa_supplicant v2.4-5 | Joo | haavoittuvainen |
wpa_supplicant v2.6 | Joo | haavoittuvainen |
Android 6.0.1 | Joo | haavoittuvainen |
OpenBSD 6.1 (rommi) | Joo | ei haavoittuvainen |
OpenBSD 6.1 (iwn) | Joo | haavoittuvainen |
Windows 7 | Ei | ei haavoittuvainen |
Windows 10 | Ei | ei haavoittuvainen |
MediaTek | Joo | haavoittuvainen |
Käyttäjiä kehotetaan käyttämään VPN :ää ja vierailemaan vain HTTPS-protokollaa käyttävillä sivustoilla . On kuitenkin huomattava, että VPN-yhdyskäytävillä on myös täysi pääsy asiakasverkkoliikenteeseen ja joissain kokoonpanoissa HTTPS-palvelimet voivat olla alttiina erilaisille hyökkäyksille (esimerkiksi ns. English Downgrade Attacks , jonka seurauksena käyttäjät joutuvat vaihtamaan suojaamattomaan yhteyteen HTTP-protokollan kautta). [6]
Taulukko sisältää korjauksia eri laitteille, jotka poistavat KRACK-hyökkäyksen mahdollisuuden. Esimerkiksi Wi-Fi-asiakkaassa wpa_supplicant 2.6 salausavain asetetaan vain kerran: kolmannen vaiheen viestin ensimmäisen vastaanoton jälkeen tukiasemalta. [2]
Linux-perheen käyttöjärjestelmille julkaistiin korjaustiedostoja vuonna 2017. [7]
OS | Versio | Korjaa |
---|---|---|
Android | Kaikki | Suojaustaso 6.11.2017 [8] |
Chrome-käyttöjärjestelmä | Kaikki | 62.0.3202.74 [9] |
iOS | iOS 11 | iOS 11.1 [10] iPhonelle >=7, iOS 11.2 [11] kaikille iOS-laitteille, joissa on iOS 11. Tämä ei vaikuttanut iOS 11:tä vanhempiin versioihin. |
macOS High Sierra | 10.13 | 10.13.1 [12] |
macOS Sierra | 10.12 | Tietoturvapäivitys 2017-001 [12] |
Windows | 7 | KB4041681 ja KB4041678 [13] |
Windows | 8.1 | KB4041693 ja KB4041687 [13] |
Windows | kymmenen | KB4042895 [13] |
Windows Server | 2016 | KB4041691 [13] |