Tõlkijalt ja TL;DR
TL;DR:
Tundub, et VoLTE on tegelikult veelgi halvemini kaitstud kui esimesed Wi-Fi kliendid WEP-iga. See on puhtalt arhitektuurne viga, mis võimaldab pisut tükeldada liiklust ja taastada võtme. Rünnak on võimalik, kui olla kõneleja läheduses ja tal on sageli kõnesid.
Aitäh suunamise eest ja TL;DR
Uurijad on loonud rakenduse, et määrata, kas teie operaator on haavatav, lisainfot . Jagage kommentaarides oma tulemusi, minu piirkonnas on MegaFonil VoLTE välja lülitatud.
Autori kohta
Matthew Green.
Olen krüptograaf ja Johns Hopkinsi ülikooli professor. Olen töötanud välja ja analüüsinud krüptograafilisi süsteeme, mida kasutatakse traadita võrkudes, maksesüsteemides ja digitaalsete sisusäilitamise platvormides. Oma teadustöös uurin erinevaid viise, kuidas kasutada krüptograafiat kasutajate privaatsuse taseme tõstmiseks.
Mitu aega ma pole kirjutanud postitust formaadis , ja see mind häirib. Mitte seetõttu, et rünnakud puuduksid, vaid ennekõike seetõttu, et pole olnud rünnakut midagi piisavalt laialdaselt kasutatavat, et mind loomingulise kriisi üles tõsta.
Aga täna sattusin ma nimega ReVoLTE protokollide vastu, mille purunemine teeb mind eriti rõõmsaks, nimelt, mobiilsidevõrkude (häält üle) LTE protokollide vastu. Mind erutab just nende protokollide ja selle uue rünnaku üle, kuna on haruldane näha, et tegelikke protokolle ja mobiilsidevõrkude rakendusi rünnatakse. Enamasti seepärast, et need standardid on välja töötatud umbses ruumis ja vormistatud 12000-lehegiseks dokumentideks, mida mitte iga uurija ei suuda läbi töötada. Veel enam, nende rünnakute rakendamine sunnib uurijaid kasutama keerulisi raadioprotokolle.
Seega võivad tõsised krüptograafilised haavatavused levida üle kogu maailma ja neid võivad kasutada vaid valitsused, enne kui mõni uurija neile tähelepanu pöörab. Kuid aeg-ajalt on erandeid, ja tänane rünnak on üks neist.
Autorid : David Rupprecht, Katharina Kohls, Thorsten Holz ja Christina Pöpper Ruhri ülikoolist Bochumist ja Abu Dhabi New Yorgi ülikoolist. See on suurepärane rünnak hääle protokollis võtme uuendamisele, mida te tõenäoliselt juba kasutate (kui oletada, et olete vanem põlvkond, kes ikka veel helistab mobiiltelefonide kaudu).
Alustuseks - lühike ajalooline ülevaade.
Mis on LTE ja VoLTE?
Meie tänapäevaste mobiilside standardite alus pandi Euroopas 80ndatel aastatel standardiga (Globaalne mobiilside süsteem). GSM oli esimene peamine digitaalsete mobiiltelefonide standard, mis tutvustas mitmeid revolutsioonilisi funktsioone, näiteks kasutuselevõtu telefonikõnede kaitsmiseks. Varane GSM oli peamiselt mõeldud häälekõnede jaoks, kuigi tasu eest võis .
Kuna mobiilside andmeedastuse tähtsus suurenes, töötati välja Long Term Evolution (LTE) standardid selle sidetüübi lihtsustamiseks. LTE põhineb vanemate standardite rühmal nagu GSM, ja ja eesmärk on suurendada andmeedastuskiirus. Selles valdkonnas on palju brändimist ja kuid TL;DR on see, et LTE on andmeedastus süsteem, mis toimib sillana vanade paketiedastussüsteemide ja tulevaste mobiilside tehnoloogiate vahel. .
Muidugi räägib ajalugu meile, et kui piisavalt (IP) ribalaiust on saadaval, hakkavad sellised mõisted nagu "hääl" ja "andmed" segunema. Sama kehtib ka kaasaegsete mobiilprotokollide kohta. Selle ülemineku sujuvamaks muutmiseks määratlevad LTE standardid (VoLTE), mis on IP-standard häälekõnede edastamiseks otse LTE süsteemi andmeedastusplaanis, möödudes täielikult mobiilside võrgust kommuteeritavast osast. Nagu tavapäraste võib VoLTE kõne teenustada mobiilsideoperaator ja ühendada see tavapärasesse telefonivõrku. Või (mis muutub üha levinumaks) neid otse päris ühele mobiiliteenuse kliendilt teisele, isegi erinevate teenusepakkujate vahel.
Nagu tavaline VoIP, põhineb VoLTE kahel populaarse IP-põhise protokollil: seansi algatamise protokollil ( – SIP), mis loob kõne, ja reaalajas edastamise protokollil (, mida peaks nimetama RTTP, kuid mis tegelikult on RTP), mis töötleb hääldata. VoLTE lisab ka täiendavaid ribalaiuse optimeerimisi, näiteks pealkirjade tihendamine.
Noh, mis seos sel on krüpteerimisega?
LTE-l, nagu ka , on standardne krüptograafiliste protokollide kogum pakettide krüpteerimiseks nende edastamise ajal õhus. Need on peamiselt kavandatud teie andmete kaitsmiseks nende liikumise ajal telefoni (mida nimetatakse 'kasutaja varustuseks' ehk UE) ja mobiilitornide vahel (või igal pool, kus teie teenusepakkuja otsustab ühenduse lõpetada). See toimub, kuna mobiiliteenuse pakkujad käsitlevad välist kuulatamisseadet vaenlastena. Loomulikult.
(Siiski, kuna VoLTE ühendused võivad toimuda otse erinevate teenusepakkujate klientide vahel, tähendab see, et VoLTE protokollil on mõned täiendavad ja mitte kohustuslikud krüpteerimisprotokollid, mis võivad toimuda kõrgematel võrgu tasanditel. See ei puuduta praegust artiklit, välja arvatud see, et need võivad kõik rikkuda. Räägime neist järgmisena lühidalt).
Ajalooliselt oli GSM-is krüpteerimisel : halvad , protokollid, kus ainult telefon autentis end torni juures (see tähendab, et ründaja sai end esitada tornina, tekitades ) ja nii edasi. LTE parandas paljusid ilmseid vigu, säilitades samas suure osa varasemast struktuurist.
Alustame krüpteerimisest. Oletades, et võtme loomine on juba toimunud — ja me räägime sellest natuke hiljem — siis iga andmepakett krüpteeritakse voogude krüpteerimisrežiimi abil mingi krüpti nimega „EEA“ (mis praktikas võib olla realiseeritud selliste asjade nagu AES abil). Sisuliselt on siin krüpteerimise mehhanism , nagu allpool näidatud:

Põhi VoLTE pakettide krüpteerimise algoritm (allikas: ). EEA – krüpteer, «COUNT» – 32-bitine loenduri väärtus, «BEARER» — unikaalne sessiooni identifikaator, mis eristab VoLTE ja tavalist interneti liiklust. «DIRECTION» näitab liikluse suunda – kas UE-st baasjaama või vastupidi.
Kuna krüpteerimise algoritmi (EEA) võib teostada tugevate krüptode nagu AES abil, on ebatõenäoline, et krüpte endale otse rünnaku alla satub, nagu see . Siiski on selge, et isegi tugeva krüptoga on see krüpteerimisskeem suurepärane viis endale jalga tulistada.
Konkreetsemalt: LTE standardis kasutatakse (autentimata) voogkrüptot režiimis, mis on äärmiselt haavatav, kui loendur – ja muud sisendid, nagu «bearer» ja «direction» – on kunagi uuesti kasutusele võetud. Kaasaegses keeles kasutatakse selle mõiste kohta terminit „nonce'i uuesti kasutamise rünnak”, kuid potentsiaalsed riskid ei ole midagi uut. Need on tuntud ja vanad, ulatudes glam-metalli ja isegi diskoni aegadesse.

Nonce'i uuesti kasutamise rünnak CTR-režiimis eksisteeris juba siis, kui Poison said tuntuks
Õigusemõistmiseks tuleb märkida, et LTE standardites öeldakse: «Ärge kasutage neid loendureid uuesti, palun.» Kuid LTE standardid hõlmavad umbes 7000 lehte ja see on igaühe jaoks nagu paluda lastel mitte mängida püssiga. Nad teevad seda paratamatult ja juhtuvad jubedad asjad. Antud juhul on laetud relvaks voogkriptovõtme uuesti kasutamise rünnak, kus kaks erinevat konfidentsiaalset sõnumit XOR-itakse samade võtmevoo baitidega. On teada, et see .
Mis on ReVoLTE?
ReVoLTE rünnak demonstreerib, et praktikas kasutatakse seda väga haavatavat krüpteerimisstruktuuri reaalses varustuses valesti. Konkreetsemalt analüüsivad autorid reaalseid VoLTE kõnesid, mis on tehtud kaubanduslikku varustust kasutades, ja näitavad, et nad võivad kasutada seda, mida nimetatakse „võtmeuuenduse rünnakuks”. (Selle probleemi leidmises on suur osa (Raza & Lu), kes esimesena viitasid võimalikele haavatavustele. Kuid ReVoLTE uurimistöö muudab selle praktiliseks rünnakuks).
Luba, et ma tutvustan sulle rünnaku sisu lühidalt, kuigi sa peaksid vaatama ka .
Ükskõik, kui LTE loob andmeedastuse ühenduse, muutub hääle edastamise ülesanne LTE üle küsimuseks, kuidas häälpakette suunata selle ühenduse kaudu koos teie teiste andmevoogudega. Teisisõnu, VoLTE on kontseptsioon, mis eksisteerib ainult [OSI mudel – nt.]. See ei ole täiesti õige.
Tegelikult tutvustab LTE kanaltase mõistet 'bearer'. Bearer on eraldi seansi identifikaatorid, mis jagavad erinevaid tüüpe pakettide andmeliiklusest. Tavaline internetiandmeliiklus (teie Twitter ja Snapchat) läbib ühe beareri. VoIP signalisatsioon SIP läbib teise, samas kui häälte andmepaketid töödeldakse kolmandas. Ma ei saa LTE raadiokanalite mehhanismidest ja võrgu suunamisest liiga hästi aru, kuid arvan, et see on nii, sest LTE võrgud soovivad tagada QoS (teenuse kvaliteedi) mehhanismide toimimise, et erinevad andmevood töödeldaks erineva prioriteediga: see tähendab, et teie madalama kvaliteediga TCP-ühendused Facebookiga võivad olla madalama prioriteediga kui teie reaalajas häälkõned.
See ei ole põhimõtteliselt probleem, kuid sellel on järgmised tagajärjed. LTE krüpteerimisvõtmed luuakse eraldi iga kord, kui luuakse uus 'bearer'. Põhimõtteliselt peaks see toimuma uuesti iga kord, kui teete uue telefonikõne. See tähendab, et iga kõne jaoks kasutatakse erinevat krüpteerimisvõtit, mis välistab võimaluse kasutada sama võtit kahe erineva helikõne pakettide krüpteerimiseks. Tõepoolest, LTE standard ütleb midagi sellist nagu 'te peate kasutama erinevaid võtmeid iga kord, kui loote uue beareri uue telefonikõne töötlemiseks'. Kuid see ei tähenda, et see tegelikult nii on.
Tegelikult, reaalsetes rakendustes kasutavad kaks erinevat kõnet, mis toimuvad vahetult ajas, sama võtit — hoolimata sellest, et nende vahel konfigureeritakse uusi (nimetusega) bearer. Ainus praktiline muutus, mis nende kõnede vahel toimub, on see, et krüptimise loend läheb nulli. Kirjanduses nimetatakse seda mõnikord . Väärib märkimist, et sisuliselt on see teostusviga, kuigi sel juhul tundub, et riskid tulenevad suures osas standardist endast.
Praktiliselt viib see rünnak võtmevoo korduvkasutamiseni, kus ründaja võib saada krüpteeritud pakette $inline$C_1 = M_1 oplus KS$inline$ ja $inline$C_2 = M_2 oplus KS$inline$, mis võimaldab arvutada $inline$C_1 oplus C_2 = M_1 oplus M_2$inline$. Veelgi parem, kui ründaja teab ühte $inline$M_1$inline$ või $inline$M_2$inline$, siis võib ta koheselt taastada teise. See annab talle tugeva stiimuli õppida tundma ühte kahest krüpteerimata komponendist.
See viib meid täieliku ja kõige tõhusama rünnaku stsenaariumi juurde. Kujutame ette ründajat, kes suudab kinni püüda raadiosignaale sihtmärgiks oleva telefoni ja mobiilitornide vahel ning kellel on kuidagi 'õnn' salvestada kaks erinevat kõnet, kus teine toimub kohe pärast esimest. Kujutage nüüd ette, et ta suudab kuidagi ära arvata ühe kõne krüpteerimata sisu. Sellise õnneliku juhuse korral suudab meie ründaja täielikult dekrüpteerida esimese kõne, kasutades lihtsat XOR-i kahe pakettide komplekti vahel.
Muidugi ei ole õnn siin mitte midagi. Kuna telefonid on mõeldud kõnede vastuvõtmiseks, suudab ründaja, kes saab esimest kõnet nuhkida, algatada teise kõne just siis, kui esimene lõpeb. See teine kõne, kui sama krüptimisvõtit kasutatakse koos nullitud loendiga, võimaldab taastada krüpteerimata andmeid. Veelgi enam, kuna meie ründaja kontrollib tegelikult andmeid teise kõne ajal, suudab ta taastada esimese kõne sisu — tänu mitmetele spetsiifiliselt rakendatud detailidele, mis mängivad tema kasuks.
Siin on rünnaku üldkava, võetud :

Rünnaku ülevaade . See skeem eeldab, et toimub kaks erinevat kõnet, kasutades ühte ja sama võtme. Ründaja kontrollib passiivset nuhklikku (vasakul ülal), samuti teist telefoni, mille kaudu ta saab teha teise kõne ohvritele.
Kas rünnak tõesti töötab?
Ühelt poolt on see tõesti peamine küsimus artikli kohta ReVoLTE. Teoreetiliselt on kõik ülaltoodud ideed suurepärased, kuid jätavad palju küsimusi. Sellised nagu:
- Kas (akadeemilised uurijad) saavad tõeliselt VoLTE ühendust pealt kuulata?
- Kas tõeliselt LTE süsteemid uuendavad võtmeid?
- Kas sa saad tegelikult algatada teise kõne piisavalt kiiresti ja usaldusväärselt, et telefon ja edastusjaam saaksid võtme uuesti kasutada?
- Isegi kui süsteemid uuendavad võtmeid, kas sa saad tõeliselt teada teise kõne krüpteerimata sisu - arvestades, et sellised asjad nagu koodekid ja uuesti kodeerimine võivad täielikult muuta (bitipõhise) sisu sellest teisest kõnest, isegi kui sul on juurdepääs „bitidele“, mis pärinevad sinu ründava telefoni kaudu?
Mõnedele nendele küsimustele vastab ReVoLTE töö positiivselt. Autorid kasutavad kommertslikelt programmitöötlemisel põhinevat raadiosignaali nuhkliku nimega VoLTE kõne pealt kuulamiseks allavoolu poolt. (Ma arvan, et selle tarkvara omandamine ja umbkaudne arusaamine selle toimimisest on kurnanud vaeseid üliõpilasi – mis on tüüpiline taolistes akadeemilistes uuringutes).
Uurijad leidsid, et võtme uuesti kasutamiseks peab teine kõne toimuma piisavalt kiiresti pärast esimest lõpetamist, kuid mitte liiga – umbes kümne sekundi jooksul katsetatavate operaatorite puhul. Õnneks ei oma tähtsust, kas kasutaja vastab kõnele selle aja jooksul – „kõne“, st SIP-ühendus panevad operaatori kasutama sama võtme uuesti.
Seega keerlevad paljuski kõige hullemad probleemid ümber probleemi (4) – saada bitid krüpteerimata sisu kõnest, mille algatas ründaja. See juhtub sellepärast, et teie sisuga võib palju juhtuda, kui see liigub ründaja telefonist ohvri telefonini mobiilivõrgu kaudu. Näiteks sellised hädad nagu kodeeritud helivoogude taas kodeerimine, mis jätab heli samaks, kuid muudab täielikult selle binaarset esitust. LTE-võrkudes kasutatakse ka RTP-peade kompresseerimist, mis võib oluliselt muuta suures osas RTP-paketti.
Lõpuks peavad ründaja saadetud paketid olema enam-vähem ühel joonel originaleta telefonikõnega saadetud pakettidega. See võib olla probleemiks, kuna vaikus telefonikõne ajal viib lühemate sõnumite (nn mugavushääl) tekkimiseni, mis võivad originaalse kõnega halvasti kokku sobida.
on seda väärt lugeda üksikasjalikult. Selles käsitletakse paljusid ülaltoodud probleeme – eriti avastasid autorid, et mõned kodekid ei ole taaskodeeritud ning et ligikaudu 89% sihtkõne binaarsest esitust on võimalik taastada. See kehtib vähemalt kahte Euroopa operaatorit, keda testiti.
See on üllatavalt kõrge edusüsteem ja, ausalt öeldes, palju kõrgem, kui ma ootasin, kui alustasin selle dokumendi koostamist.
Nii mida me saame selle probleemi lahendamiseks ette võtta?
Küsimusele on kiire ja selge vastus: kuna haavatavuse olemus on ründes, mis rakendab (uuesti installeerimist) võtit, lihtsalt lahendab selle probleemi. Veenduge, et iga telefonikõne jaoks saadakse uus võti, ja ärge kunagi laske pakettide loenduril loendurit tagasi nulli tõsta sama võtmega. Probleem on lahendatud!
Võib-olla mitte. Selleks oleks vaja moderniseerida suurt hulka riistvara ja ausalt öeldes, ei ole selline lahendus iseenesest eriti usaldusväärne. Oleks tore, kui standardid suudaksid leida turvalisema viisi oma krüptooperatsioonide rakendamiseks, mis ei oleks vaikimisi katastroofiliselt haavatav selliste võtmete ümberkasutamise probleemide suhtes.
Üks võimalik variant on . See võib osutuda liiga kalliks mõnele kaasaegsele riistvarale, kuid see on kindlasti suund, millele projekteerijad peaksid tulevikus mõtlema, eriti arvestades, et 5G standardid on peagi maailmas domineerimas.
See uus uuring tõstatab samuti üldise küsimuse, miks , millest paljud kasutavad väga sarnaseid konstruktsioone ja protokolle. Kui leiate, et sama võtme ütsedamine mitmetes laialdaselt levinud protokollides, nagu WPA2, on probleem, siis kas ei tundu, et võib-olla on aeg muuta teie spetsifikatsioonid ja testimispraktikad usaldusväärsemaks? Lõpuks on aeg lõpetada standardite rakendajate käsitlemine mõtleva partnerina, kes on tähelepanelik teie hoiatustele. Kohtlege neid nagu (mitte kavandatud) vastaseid, kes paratamatult keskenduvad seda valesti rakendama.
Või alternatiivina võiksime teha seda, mida üha rohkem järgivad sellised ettevõtted nagu Facebook ja Apple: viia krüpteeritud häälkõned kõrgemale OSI võrgu paketi tasemele, usaldumata mobiilitootjate riistvarale. Me võime isegi edendada otsest krüpteerimist häälkõnedes, nagu WhatsApp teeb Signaliga ja FaceTime'iga, eeldades, et USA valitsus lihtsalt loobub . Siis (välja arvatud mõned metaandmed) kaoksid paljud neist probleemidest lihtsalt. See lahendus on eriti asjakohane maailmas, kus .
Või saame lihtsalt teha seda, mida on juba teinud meie lapsed: võtta ja lõpetada nende tüütu häälkõnele vastamine.
Allikas: habr.com
