Tõlkijalt ja TL;DR
Lühikokkuvõte:
Tundub, et VoLTE on osutunud kaitsetumaks kui esimesed Wi-Fi kliendid WEP-iga. See on puhtalt arhitektuurne viga, mis võimaldab veidi XOR'ida liiklust ja taastada võtme. Rünnak on võimalik, kui olla kõneleja läheduses ja ta helistab sageli.
Aitäh vihje eest ja TL;DR
Teadlased lõid rakenduse, et määrata, kas teie operaator on haavatav, lisainfot . Jagage kommentaarides tulemusi, minu piirkonnas on Megafonis VoLTE välja lülitatud.
Autorist
Matthew Green.
Ma 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 sisu kaitse platvormides. Oma uurimistöös uurin erinevaid viise, kuidas kasutada krüptograafiat kasutajate privaatsuse taseme tõstmiseks.
Möödus juba mõnda aega, kui ma kirjutasin postituse, mis on , ja see mind häiris. Mitte sellepärast, et rünnakuid poleks olnud, vaid peamiselt sellepärast, et ei olnud rünnakut midagi piisavalt laialdaselt kasutatavat, et mind loomingulisest kriisist välja tuua.
Aga täna sattusin ma nimi ReVoLTE protokollide suhtes, mille purustamine toob mulle erilist rõõmu, nimelt mobiilside (voice over) LTE protokollidega. Olen nende protokollide üle väga elevil – ja selle uue rünnaku üle – kuna reaalsete protokollide ja rakenduste murdmist on harva võimalik jälgida. Peamiselt seetõttu, et need standardid on välja töötatud suitsustes ruumides ja vormistatud 12000-leheküljelistes dokumentides, mille läbimine pole iga teadlase jõud. Veelgi enam, nende rünnakute teostamine sunnib teadlasi kasutama keerulisi raadioside protokolle.
Seega võivad tõsised krüptograafilised haavatavused levida üle maailma ning neid võivad kasutada ainult valitsused, enne kui mõni teadlane nendele 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 Ruhr-Ülikoolist Bochumist ja Abu Dhabi New Yorki ülikoolist. See on suurepärane rünnak hääle protokollis võtme taastamiseks, mida te tõenäoliselt juba kasutate (eeldades, et olete vanema põlvkonna esindaja, kes ikka veel helistab mobiiltelefoniga).
Alustuseks – lühike ajalooline ülevaade.
Mis on LTE ja VoLTE?
Meie kaasaegsete mobiilside standardite aluse pani Euroopas juba 1980. aastatel standard (Globaalne mobiilsüsteem). GSM oli esimene peamine digitaalne mobiilside standard, mis tõi sisse rea revolutsioonilisi omadusi, näiteks telefonikõnede kaitsmiseks. Varajane GSM oli välja töötatud peamiselt häälside jaoks, kuigi raha eest võis ka .
Mobiilside andmeedastuse olulisuse suurenedes töötati välja pikemaajalise arengu (LTE) standardid selle sidetüübi ratsionaliseerimiseks. LTE põhineb vanemate standardite rühmal, nagu GSM, ja ja on mõeldud andmeedastuse kiirusestaatmiseks. Sellel alal on palju brändimise ja , kuid TL;DR on see, et LTE on andmeedastus süsteem, mis toimib sillana vanade paketivahetuse protokollide ja tulevaste mobiilside edastus tehnoloogiate vahel. .
Muidugi näitab ajalugu meile, et kui piisav (IP) ribalaius on olemas, hakkavad sellised mõisted nagu „hääl” ja „andmed” hämarduma. Sama kehtib ka kaasaegsete mobiilside protokollide kohta. Selle ülemineku sujuvamaks muutmiseks määratlevad LTE standardid (VoLTE), mis on IP-standard häälkõnede edastamiseks otse LTE andmeedastuse tasandil, täielikult ümbersuunates mobiilside võrgu lülitusosa. Nagu tavalisel , võivad VoLTE kõned olla lõpetatud mobiilsideoperaatorilt ja ühendatud tavalisse telefonivõrku. Või (mis muutub üha sagedasemaks) võivad need otseselt ühest mobiilkliendist teise, ja isegi erinevate teenusepakkujate vahel.
Nagu tavaline VoIP, põhineb VoLTE kahel populaarsel IP-põhisel protokollil: seansi algatamise protokoll ( – SIP) kõne loomiseks ja reaalajas edastusprotokoll (, mida peaks nimetama RTTP, kuid tegelikult nimetatakse RTP) häälandmete töötlemiseks. VoLTE toob kaasa ka täiendavaid ribalaiuse optimeerimisi, nagu pealkirjade tihendamine.
Kuidas see seotud on krüptograafiaga?
LTE, nagu , omab standardit krüptograafilisi protokolle, et krüptida pakette nende edastamise ajal õhus. Need on peamiselt mõeldud teie andmete kaitsmiseks nende liikumisel telefoni (mida nimetatakse "kasutusseadmeks", või UE) ja mobiilitornide (või kus iganes teie teenusepakkuja otsustab ühenduse lõpetada) vahel. See toimub seetõttu, et mobiiliteenuse pakkujad peavad väliseid kuulamisriistu vaenlasteks. Muidugi.
(Siiski tähendab see, et VoLTE ühendused võivad aset leida otse erinevate teenusepakkujate klientide vahel, et VoLTE protokollil on mõned täiendavad ja valikulised krüpteerimisprotokollid, mis võivad toimuda kõrgematel võrgutasemetel. See ei kehti hetkel käsitletava artikli kohta, välja arvatud see, et need võivad kõik rikkuda. Räägime neist lühidalt hiljem).
Ajalooliselt oli GSMi krüptograafias : halvad , protokollid, mille puhul ainult telefon autentis end tornis (see tähendab, et sissetungija sai end esitada tornina, tekitades ) jne. LTE parandas palju ilmseid vigu, säilitades samas suure osa varasemast struktuurist.
Alustame krüptograafiast. Eeldades, et võtme loomine on juba toimunud — ja me räägime sellest kohe — siis iga andmepakett krüptitakse voolurežiimi krüptimisega, kasutades mingit šifrit nimega "EEA" (mis praktikas võib olla rakendatud selliste asjadega nagu AES). Põhimõtteliselt on krüpteerimismehhanism , nagu allpool näidatud:

VoLTE pakettide põhialgoritm (allikas: ). EEA on šifreer, "COUNT" on 32-bitine loendur, "BEARER" — ainulaadne sessiooni identifikaator, mis eraldab VoLTE ja tavalise internetiliiklust. "DIRECTION" näitab, millises suunas liiklus liigub - UE-lt torni või vastupidi.
Kuna ise šifreerimise algoritm (EEA) võib olla rakendatud tugeva šifrina nagu AES, siis on vähe tõenäoline, et šifrile endale otsene rünnak toimuma hakkab, nagu see . Kuid on ilmne, et isegi tugeva šifri puhul esindab see krüpteerimisskeem head võimalust end jalga lasta.
Eriti: LTE standardis on kasutatud (autentimatut) voolushifrit režiimis, mis on äärmiselt haavatav, kui loendur — ja muud sisendit, nagu "bearer" ja "direction" — kasutatakse korduvasti. Kaasaegses keeles nimetatakse seda mõistet "nonce'i taaskasutamise rünnakuks", kuid potentsiaalsed riskid siin ei ole just midagi uut. Need on tuntud ja vanad, ulatudes glam-metal'i ja isegi disco päevadesse.

Nonce'i taaskasutamise rünnakud CTR-režiimis eksisteerisid juba siis, kui Poison olid tuntud.
Õigusemõistmiseks tuleb märkida, et LTE standardites öeldakse: "Ärge kasutage neid loendureid korduvasti, palun." Kuid LTE standardid hõlmavad umbes 7000 lehekülge, ja igal juhul on see nagu paluda lastel mitte mängida relvaga. Nad teevad seda vältimatult, ja juhtuvad jubedad asjad. Sel juhul on tühjenenud relvaks rünnak, kus lihtsad konfidentsiaalsed sõnumid XOR-iks sama võtme loomise bittidega. On teada, et see .
Mis on ReVoLTE?
ReVoLTE rünnak näitab, et praktikas kasutatakse seda väga haavatavat krüptimise konstruktsiooni reaalses varustuses valesti. Eriti analüüsivad autorid reaalseid VoLTE kõnesid, mis on tehtud kommertstehnoloogia abil, ja näitavad, et nad saavad kasutada midagi, mida nimetatakse "võtme uuesti paigaldamise rünnakuks". (Suur osa selle probleemi avastamisest kuulub (Raza & Lu), kes olid esimesed, kes viitasid potentsiaalsele haavatavusele. Kuid ReVoLTE uuringud muudavad selle praktiliseks rünnakuks).
Lase ma näitan sulle lühidalt rünnaku olemust, kuigi tasub vaadata ka .
Võime eeldada, et kui LTE loob andmepakettide ühenduse, siis hääle edastamise ülesanne üle LTE muutub lihtsalt häälepakettide suunamise küsimuseks sellel ühendusel koos ülejäänud teie liiklusega. Teisisõnu, VoLTE on kontseptsioon, mis eksisteerib vaid [OSI mudel – nt]. See ei ole päris nii.
Tegelikult tutvustab LTE kanalitasand mõistet „bearer“. Bearer on eraldi seansi identifikaatorid, mis eraldavad erinevaid andmepakettide tüüpe. Tavaline internetitrahvi (teie Twitter ja Snapchat) läbib ühe bearer'i. VoIP signalisatsioon SIP läheb läbi teise, ja häälekätte paketid töödeldakse kolmandas. Ma ei tunne LTE raadiokanalite ja võrgu suunamise mehhanisme väga hästi, kuid arvan, et see on tehtud just nii, et LTE võrgud tahavad tagada QoS (teenuse kvaliteedi) mehhanismide toimimist, et erinevaid pakettide vooge töödeldaks erinevate prioriteetidega: st teie madalama prioriteediga TCP-ühendused Facebookiga võivad olla madalama prioriteediga kui teie reaalajas häälekõned.
See pole põhimõtteliselt probleem, kuid sellel on järgmised tagajärjed. LTE krüpteerimise võtmed genereeritakse eraldi iga kord, kui luuakse uus „bearer“. Sisuliselt 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 sama võtme taaskasutamise kahe erineva häälekõne pakettide krüpteerimiseks. Tõepoolest, LTE standard ütleb midagi sellist nagu „te peaksite kasutama erinevaid võtmeid iga kord, kui seadistate uue bearer'i uue telefonikõne käsitlemiseks“. Kuid see ei tähenda, et see tegelikult juhtub.
Tegelikkuses kasutavad kaks erinevat kõnet, mis toimuvad vahetus ajavahemikus, sama võtit — hoolimata sellest, et nende vahel seadistatakse uued (samasugused) bearer'id. Ainsaks praktiliseks muutuseks, mis nende kõnede vahel toimub, on krüpteerimisloendi lähtestamine nulli. võtme uuesti seadistusrünnakuks
. Võib väita, et see on põhimõtteliselt rakenduse viga, kuigi selle puhul näib, et riskid tulenevad peamiselt standardist endast. Käesolevas rünnakus, kus kurjategija suudab interaktiivsete salvestuspakettide vahel peidetud vooge välja näha, võib ta saada krüpteeritud paketid $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 paremini, kui kurjategija teab ühte $inline$M_1$inline$ või $inline$M_2$inline$, võib ta kohe taastada teise. See annab talle tugeva stiimuli.
välja selgitada üks kahest krüpteerimata komponendist See viib meid täieliku ja kõige efektiivse rünnaku stsenaariumi juurde. Kujutame ette kurjategijat, kes saab kuulata raadiosignaale sihtnumbriga telefoni ja mobiilitornide vahel ning kes on mingil viisil "õnnelik", et on salvestanud kaks erinevat kõnet, kus teine toimub kohe pärast esimest. Kujutage nüüd ette, et ta suudab kuidagi arvata ühe kõne krüpteerimata sisu. Sellise õnnestumise korral
võib meie kurjategija täielikult dekrüpteerida esimese kõne, kasutades lihtsat XOR'i kahe pakettide komplekti vahel. Kasutusõnn ei mängi siinkohal rolli. Kuna telefonid on mõeldud kõnede vastuvõtmiseks, suudab kurjategija, kes kuuleb esimest kõnet, alustada teist kõnet just sel ajal, kui esimene lõppeb. See teine kõne, kui kasutatakse sama krüpteerimisvõtit nulliga lähtestatud loendiga, võimaldab taastada krüpteerimata teavet. Veel enam, kuna meie kurjategija kontrollib andmeid teise kõne ajal, võib ta taastada esimese kõne sisu — tänu paljudele spetsiifiliselt rakendatuddetailidele, mis mängivad tema kasuks.
Siin on üldine rünnaku plaani joonis, mis on saadud :

Rünnaku ülevaade . See skeem näeb ette, et toimuvad kaks erinevat kõnet, kasutades sama võtit. Ründajal on passiivne nuhk, kes valvab (ülemises vasakus nurgas), samuti teine telefon, mille kaudu ta saab teha teise kõne kannatavale telefonile.
Kas see rünnak tõepoolest töötab?
Ühelt poolt on see tõepoolest peamine küsimus ReVoLTE artikli jaoks. Teoreetiliselt on kõik ülaltoodud ideed suurepärased, kuid tekitavad hulgaliselt küsimusi, nagu:
- Kas on võimalik (akadeemilistele uurijatele) tõeliselt VoLTE-ühendust pealt kuulata?
- Kas tegelikud LTE-süsteemid tegelikult uuesti installivad võtmeid?
- Kas saate tõepoolest algatada teise kõne piisavalt kiiresti ja usaldusväärselt, et telefon ja baasjaam kasutaksid uuesti sama võtit?
- Isegi kui süsteemid uuesti installivad võtmeid, kas tõepoolest saate teada teise kõne dekodeerimata sisu – arvestades, et sellised asjad nagu koodekid ja rekodeerimine võivad täiesti muuta (bitt-bitt) teise kõne sisu, isegi kui teil on juurdepääs 'bittidele', mis tulevad teie ründava telefoni kaudu?
Mõned neist küsimustest saavad ReVoLTE töös jaatava vastuse. Autorid kasutavad kommertstootes tarkvaraga konfigureeritavat raadiosignaali nuhid nimega , et pealt kuulata VoLTE kõnet allavoolu suunas. (Ma arvan, et selle tarkvara omandamine ja umbkaudne arusaamine selle toimimisest võttis õnnetutel aspiranthududel kuude viisi aega – mis on tüüpiline sellistes akadeemilistes uuringutes).
Uurijad avastasid, et võtme uuesti kasutamise aktiveerimiseks peab teine kõne toimuma piisavalt kiiresti pärast esimese lõpetamist, kuid mitte liiga kiiresti – umbes kümne sekundi jooksul nende katsetatud operaatorite puhul. Õnneks ei oma tähtsust, kas kasutaja vastab kõnele selle aja jooksul – 'kõne', st SIP-ühendus, sunnib operaatorit kasutama uuesti sama võtit.
Seetõttu keerlevad paljud kõige suuremad probleemid küsimuse (4) ümber – saada ründaja algatatud kõne dekodeerimata sisu. See juhtub seetõttu, et teie sisu võib palju muuta, kui see läbib ründaja telefonist ohvri telefoni mobiilivõrgu kaudu. Näiteks sellised probleemid nagu kodeeritud helivoogude rekodeerimine, mis jätab heli muutumatuks, kuid muudab täielikult selle binaarset esitlemist. LTE-võrkudes kasutatakse ka RTP-peade tihendamist, mis võib oluliselt muuta suure osa RTP-paketist.
Lõpuks peavad ründaja saadetud paketid olema ligikaudu järjestatud esimese telefonikõne ajal saadetud paketidega. See võib osutuda keeruliseks, kuna heli muteerimine telefonihelis toob kaasa lühemaid sõnumeid (nn mugavushääl), mis võivad halvemini sobituda originaalkõnega.
tasub lugeda üksikasjalikult. Selles käsitletakse paljusid ülaltoodud probleeme – eriti leidsid autorid, et mõned koodekid ei ole rekodeeritud ja et ligikaudu 89% sihtkõne binaarsest esitusest on taastatav. See kehtib vähemalt kahte Euroopa operaatorit, kellega katsetati.
See on üllatavalt kõrge edu protsent ja ausalt öeldes palju kõrgem, kui ma ootasin, kui alustan selle dokumendi koostamist.
Mis me saame selle parandamiseks teha?
Küsimusele on kiire vastus äärmiselt lihtne: kuna haavatavuse olemus seisneb võtme uuesti kasutamise (reinstateerimise) rünnakus, lihtsalt lahendage see probleem. Veenduge, et iga telefonikõne jaoks saadakse uus võti ja ärge laske pakettide tekkijatel tagasi nulli minna sama võtmega. Probleem on lahendatud!
Kuid võib-olla mitte. See nõuab suure hulga seadmete uuendamist ja ausalt öeldes ei ole see niisugune lahendus iseenesest väga usaldusväärne. Oleks tore, kui standardid suudaksid leida turvalisema viisi oma krüpteerimisrežiimide rakendamiseks, mis ei oleks vaikimisi kohutavalt haavatavad sarnaste võtme uuesti kasutamise probleemide suhtes.
Üks võimalik variant on kasutada . See võib olla liiga kallis mõnede kaasaegsete riistade jaoks, kuid see on kindlasti suund, millele projekteerijad peavad tulevikus mõtlema, eriti arvestades, et 5G standardid on peagi maailmas võimust võtmas.
See uus uurimus tõstatab ka üldise küsimuse, miks , paljuski neist kasutavad väga sarnaseid struktuure ja protokolle. Kui seisate silmitsi probleemiga ühe ja sama võtme reinstalleerimisel mitmes laialdaselt levinud protokollis, näiteks WPA2, siis kas ei tundu, et on aeg muuta teie spetsifikatsioonid ja testimise protseduurid usaldusväärsemaks? Piisab, kui suhelda standardite rakendajatega nagu mõtlikud partnerid, kes on teie hoiatustele tähelepanelikud. Kohtle neid nagu (kogemata) vastaseid, kes kindlasti rakendavad kõike valesti.
Või alternatiivselt võime teha seda, mida üha enam teevad sellised ettevõtted nagu Facebook ja Apple: korraldada häälkõnede krüpteerimist OSI võrgu stacki kõrgemal tasemel, sõltumata mobiilseadmete tootjatest. Võime isegi edendada lõpp-punktide krüpteerimist nagu WhatsApp Signal ja FaceTime, eeldades, et Ameerika Ühendriigid lihtsalt lõpetavad . Siis (välja arvatud mõned metaandmed) kaoks enamik neist probleemidest lihtsalt. See lahendus on eriti asjakohane maailmas, kus .
Või siis võime lihtsalt teha seda, mida meie lapsed juba tegid: lõpetada nende tüütute häälkõnedele vastamine.
Allikas: habr.com
