Veckans attack: röst samtal i LTE (ReVoLTE)

FrÄn översÀttaren och TL;DR

  1. TL;DR:

    Det verkar som att VoLTE Àr Ànnu sÀmre skyddat Àn de första Wi-Fi-klienterna med WEP. Enbart en arkitektonisk brist som tillÄter lite XOR-abstraktion av trafiken och ÄterstÀllning av nyckeln. Attacken Àr möjlig om man befinner sig nÀra den som ringer och denne ofta gör samtal.

  2. Tack för tipset och TL;DR Klukonin

  3. Forskare har skapat en app för att avgöra om din operatör Àr sÄrbar, mer information ). Ett typiskt exempel pÄ anvÀndning:. Dela gÀrna resultatet i kommentarerna, i min region Àr VoLTE avstÀngt pÄ MegaFon.

Om författaren

Matthew Green.

Jag Àr kryptograf och professor vid Johns Hopkins University. Jag har utvecklat och analyserat kryptografiska system som anvÀnds i trÄdlösa nÀtverk, betalningssystem och plattformar för skydd av digitalt innehÄll. I min forskning undersöker jag olika sÀtt att anvÀnda kryptografi för att öka anvÀndarnas sekretess.

Det var lÀnge sedan jag skrev ett inlÀgg i formatet «veckans attack», och det har frustrerat mig. Inte för att det inte har funnits attacker, utan mestadels för att det inte har funnits nÄgon attack pÄ nÄgot tillrÀckligt allmÀnt anvÀnt för att fÄ mig ur min kreativa kris.

Men idag stötte jag pĂ„ en intressant attack som kallas ReVoLTE pĂ„ protokoll vars hackning verkligen glĂ€djer mig, nĂ€mligen mobilnĂ€tsprotokoll (voice over) LTE. Jag Ă€r sĂ€rskilt förtjust i dessa protokoll – och den hĂ€r nya attacken – eftersom det Ă€r mycket sĂ€llan man kan observera genuina hacks av riktiga protokoll och implementationer av mobilnĂ€t. Mest för att dessa standarder utvecklades i rökiga rum och presenterades i 12000-sidiga dokument som inte varje forskare klarar av att bemĂ€stra. Dessutom tvingar genomförandet av dessa attacker forskare att anvĂ€nda svĂ„rlĂ€sta radioprotocol.

SÄledes kan allvarliga kryptografiska sÄrbarheter spridas globalt och kanske bara utnyttjas av regeringar innan nÄgon forskare lÀgger mÀrke till dem. Men dÄ och dÄ finns det undantag, och dagens attack Àr en av dem.

Författare attacker: David Rupprecht, Katharina Kohls, Thorsten Holz och Christina Pöpper frÄn Ruhr-UniversitÀt Bochum och New York University Abu Dhabi. Detta Àr en utmÀrkt attack pÄ nyckelÄterstÀllning i röstprotokollet som du sannolikt redan anvÀnder (om vi antar att du tillhör den Àldre generationen som fortfarande ringer via mobiltelefon).

Först – en kort historisk översikt.

Vad Àr LTE och VoLTE?

Grunden för vÄra moderna mobiltelefonstandarder lades i Europa redan pÄ 80-talet med standarden Global System for Mobile (Global System for Mobile Communication). GSM var den första stora standarden för digital mobiltelefoni som introducerade en rad revolutionerande funktioner, sÄsom anvÀndning av kryptering för att skydda telefonanrop. Tidig GSM utvecklades frÀmst för röstkommunikation, Àven om det mot en avgift var möjligt att överföra andra data.

I takt med att datatransmission blev allt viktigare inom mobiltelefoni utvecklades lÄngsiktiga evolutionsstandarder (LTE) för att effektivisera denna typ av kommunikation. LTE baseras pÄ en grupp Àldre standarder, sÄsom GSM, EDGE och HSPA och syftar till att öka datakapaciteten. Det finns mycket varumÀrkesmyndighet och vilseledande beteckningar, men TL;DR Àr att LTE Àr ett datatransmissionssystem som fungerar som en bro mellan de gamla protokollen för datatransmission och framtida mobilöverföringsteknik. 5G.

SjÀlvklart berÀttar historien för oss att sÄ snart det finns tillrÀckligt med (IP) bandbredd, kommer begrepp som "röst" och "data" att börja suddas ut. Det gÀller Àven moderna mobilprotokoll. För att göra denna övergÄng smidigare definierar LTE-standarderna Voice-over-LTE (VoLTE), som Àr en IP-standard för att överföra röstsamtal direkt genom dataplatsen i LTE-systemet, vilket helt omgÄr den vÀxlande delen av mobilnÀtet. Precis som med standard VoIP-samtal, kan VoLTE-samtal avslutas av mobiloperatören och kopplas till det vanliga telefonnÀtet. Eller (vilket blir allt vanligare) kan de ruttas direkt frÄn en mobilkund till en annan, och Àven mellan olika leverantörer.

Precis som standard VoIP Ă€r VoLTE baserat pĂ„ tvĂ„ populĂ€ra IP-baserade protokoll: sessionsinitieringsprotokollet (Session Initiation Protocol – SIP) för att upprĂ€tta samtal, och realtidstransportprotokollet (Real Time Transport Protocol, som egentligen borde heta RTTP, men kallas RTP) för att hantera röstdata. VoLTE lĂ€gger ocksĂ„ till nĂ„gra ytterligare bandbreddsoptimeringar, sĂ„som headerkomprimering.

Okej, hur hÀnger detta ihop med kryptering?

LTE, precis som GSM, har en standarduppsÀttning kryptografiska protokoll för att kryptera paket under överföring över luften. De Àr frÀmst avsedda att skydda dina data medan de fÀrdas mellan telefonen (kallad "anvÀndarutrustning" eller UE) och mobilmaster (eller vart helst din operatör vÀljer att avsluta anslutningen). Detta beror pÄ att mobiloperatörer ser externa avlyssningsenheter som fiender. SjÀlvklart.

(Men det faktum att VoLTE-anslutningar kan ske direkt mellan kunder i olika operatörsnÀt innebÀr att sjÀlva VoLTE-protokollet har vissa ytterligare och valfria krypteringsprotokoll som kan förekomma pÄ högre nÀtverksnivÄer. Det hÀr handlar inte om den nuvarande artikeln, förutom att de kan förstöra allt. Vi kommer att nÀmna dem kort senare).

Historiskt har kryptering i GSM haft mÄnga svagheter: dÄliga krypteringar, protokoll dÀr endast telefonen autentiserades mot masten (detta innebÀr att en angripare kunde utge sig för att vara masten, vilket resulterade i "Stingray") och sÄ vidare. LTE har ÄtgÀrdat mÄnga av de uppenbara felen, men behÄllit mycket av den tidigare strukturen.

LĂ„t oss börja med sjĂ€lva krypteringen. Om vi antar att nyckelskapandet redan har Ă€gt rum – och vi kommer att prata om det om en minut – sĂ„ krypteras varje datapaket med en strömmande krypteringsmetod med hjĂ€lp av nĂ„gon kryptering som kallas "EEA" (som i praktiken kan implementeras med grejer som AES). I grunden Ă€r hĂ€r mekanismen för kryptering CTR, som visas nedan:

Veckans attack: röst samtal i LTE (ReVoLTE)
Den grundlĂ€ggande algoritmen för kryptering av VoLTE-paket (kĂ€lla: ReVoLTE). EEA – kryptering, "COUNT" – 32-bitars rĂ€knare, "BEARER" – unik sessionsidentifierare som skiljer VoLTE-anslutningar frĂ„n vanlig internettrafik. "DIRECTION" indikerar i vilken riktning trafiken gĂ„r – frĂ„n UE till basstationen eller vice versa.

Eftersom sjÀlva krypteringsalgoritmen (EEA) kan implementeras med en stark krypteringstyp som AES, Àr det osannolikt att det skulle förekomma nÄgon direkt attack mot sjÀlva krypteringen, som det har förekommit under GSM-eran.. Det Àr dock uppenbart att Àven med stark kryptering representerar detta krypteringsschema ett utmÀrkt sÀtt att skjuta sig sjÀlv i foten.

I synnerhet: i LTE-standarden anvĂ€nds en (oauktoriserad) strömmande kryptering med ett lĂ€ge som skulle vara extremt sĂ„rbart om rĂ€knaren – och andra ingĂ„ngar som "bearer" och "direction" – nĂ„gonsin skulle Ă„teranvĂ€ndas. PĂ„ modern sprĂ„kbruk kallas detta för "nonce-Ă„teranvĂ€ndningsattack", men de potentiella riskerna hĂ€r Ă€r inget nytt. De Ă€r kĂ€nda och gamla, som gĂ„r tillbaka till glam-metal och till och med disco.

Veckans attack: röst samtal i LTE (ReVoLTE)
Attackerna mot ÄteranvÀndning av nonce i CTR-lÀget var kÀnda redan dÄ Poison blev berömda.

För rĂ€ttvisans skull, nĂ€mner LTE-standarderna: "ÅteranvĂ€nd inte dessa rĂ€knare, snĂ€lla." Men LTE-standarderna omfattar omkring 7000 sidor och det spelar ingen roll; det Ă€r som att be barn att inte leka med en pistol. De kommer oundvikligen att göra det, och hemska saker kommer att ske. I detta fall Ă€r den avfyrade pistolen en nyckelströmĂ„teranvĂ€ndningsattack, dĂ€r tvĂ„ olika konfidentiella meddelanden XOR:ar med samma byteströmmar. Det Ă€r kĂ€nt att detta extremt destruktivt pĂ„verkar meddelandens konfidentialitet..

Vad Àr ReVoLTE?

ReVoLTE-attacken visar att i praktiken anvÀnds denna mycket sÄrbara krypteringsstruktur felaktigt av riktig utrustning. I synnerhet analyserar författarna verkliga VoLTE-samtal som gjorts med hjÀlp av kommersiell utrustning och visar att de kan utnyttja nÄgot som kallas "nyckelÄterstÀllningsattack". (Mycket av Àran för att upptÀcka problemet tillhör Reyze och Lou. (Raza & Lu), som först pÄpekar en potentiell sÄrbarhet. Men ReVoLTE-forskning gör den till en praktisk attack).

LÄt mig kort visa dig kÀrnan i attacken, Àven om du bör titta pÄ originaldokumentet.

Man kan anta att sĂ„ snart LTE upprĂ€ttar en anslutning för datapaket, blir överföringen av röst över LTE bara en frĂ„ga om att rutta röstpaket genom denna anslutning tillsammans med all annan trafik. Med andra ord kommer VoLTE att vara ett koncept som existerar endast ovanför nivĂ„ 2 [OSI-modellen – exempelvis]Detta Ă€r inte helt korrekt.

Faktum Àr att LTE:s kanallager introducerar begreppet "bearer". Bearer Àr separata sessionsidentifierare som delar olika typer av pakettrafik. Vanlig internettrafik (din Twitter och Snapchat) gÄr genom en bearer. SIP-signalisering för VoIP gÄr genom en annan, medan röstpaket hanteras i en tredje. Jag Àr inte sÀrskilt insatt i mekanismerna för radiokanaler och nÀtverksrouting i LTE, men jag antar att det görs pÄ detta sÀtt eftersom LTE-nÀt vill sÀkerstÀlla funktionaliteten hos QoS-mekanismer (kvalitet pÄ servicen) sÄ att olika paketströmmar hanteras med olika prioriteringsnivÄer: d.v.s. dina sekundÀra TCP-anslutningar med Facebook kan ha lÀgre prioritet Àn dina realtidsröstsamtal.

Detta Àr i grunden inget problem, men följderna Àr följande. Krypteringsnycklar för LTE skapas separat varje gÄng en ny "bearer" upprÀttas. I princip borde detta ske pÄ nytt varje gÄng du gör ett nytt telefonsamtal. Detta leder till att varje samtal kommer att anvÀnda en annan krypteringsnyckel, vilket utesluter möjligheten att ÄteranvÀnda samma nyckel för kryptering av tvÄ olika uppsÀttningar av röstpaket. Faktiskt sÀger LTE-standarden nÄgot i stil med "du mÄste anvÀnda olika nycklar varje gÄng du upprÀttar en ny bearer för att hantera ett nytt telefonsamtal". Men det betyder inte att det verkligen fungerar sÄ.

I verkliga implementationer kommer faktiskt tvÄ olika anrop som sker nÀra i tiden att anvÀnda samma nyckel - trots att nya (namngivna) bearers stÀlls in mellan dem. Den enda praktiska förÀndringen som sker mellan dessa anrop Àr att krypteringsrÀknaren nollstÀlls. Inom litteraturen kallas detta ibland för nyckelÄterstÀllningsattack. Man kan hÀvda att detta i grunden Àr en implementationsfel, Àven om riskerna i detta fall verkar hÀrstamma i stor utstrÀckning frÄn sjÀlva standarden.

I praktiken leder denna attack till att krypteringsströmmen Ă„teranvĂ€nds, dĂ€r en angripare kan fĂ„ de krypterade paketen $inline$C_1 = M_1 oplus KS$inline$ och $inline$C_2 = M_2 oplus KS$inline$, vilket gör att $inline$C_1 oplus C_2 = M_1 oplus M_2$inline$ kan berĂ€knas. Ännu bĂ€ttre, om angriparen kĂ€nner till en av $inline$M_1$inline$ eller $inline$M_2$inline$, kan han omedelbart Ă„terstĂ€lla den andra. Detta ger honom en stark motivation att ta reda pĂ„ en av de tvĂ„ okrypterade komponenterna.

Detta leder oss till det mest fullstÀndiga och effektiva attackscenariot. LÄt oss betrakta en angripare som kan avlyssna radiotrafiken mellan den mÄlinriktade telefonen och mobilmast, och som pÄ nÄgot smart sÀtt har "tur" att spela in tvÄ olika samtal, dÀr det andra sker direkt efter det första. TÀnk dig nu att han pÄ nÄgot sÀtt kan gissa det okrypterade innehÄllet i ett av samtalen. Vid sÄdan lycklig tillfÀllighet kan vÄr angripare helt Dekryptera det första samtalet genom att anvÀnda en enkel XOR mellan tvÄ uppsÀttningar paket.

SjÀlvklart Àr tur inget som spelar in hÀr. Eftersom telefoner Àr avsedda för att ta emot samtal, kan en angripare som kan avlyssna det första samtalet initiera det andra samtalet precis nÀr det första avslutas. Detta andra samtal, i hÀndelse av ÄteranvÀndning av samma krypteringsnyckel med rÀknaren nollstÀlld, kommer att möjliggöra ÄterstÀllande av okrypterad data. Dessutom, eftersom vÄr angripare faktiskt kontrollerar datan under det andra samtalet, kan han ÄterstÀlla innehÄllet i det första samtalet - tack vare en mÀngd specifikt genomförda detaljer, som spelar pÄ hans sida.

HÀr Àr en bild av den övergripande attackplanen, hÀmtad frÄn ursprungliga dokumentet:

Veckans attack: röst samtal i LTE (ReVoLTE)
Översikt över attacken frĂ„n dokumentet ReVoLTE. Detta schema förutsĂ€tter att tvĂ„ olika samtal sker med samma nyckel. Angriparen kontrollerar en passiv sniffare (övertill vĂ€nster) samt en andra telefon som han kan anvĂ€nda för att ringa ett andra samtal till offers telefon.

Fungerar attacken verkligen?

Å ena sidan Ă€r detta verkligen den centrala frĂ„gan för en artikel om ReVoLTE. Teoretiskt sett Ă€r alla ovanstĂ„ende idĂ©er utmĂ€rkta, men lĂ€mnar mĂ„nga frĂ„gor. FrĂ„gor som:

  1. Är det möjligt för (akademiska forskare) att verkligen avlyssna en VoLTE-anslutning?
  2. ÅterstĂ€ller verkliga LTE-system nycklar?
  3. Kan du faktiskt initiera ett andra samtal tillrÀckligt snabbt och pÄlitligt för att telefonen och tornet ÄteranvÀnder nyckeln?
  4. Även om systemen Ă„terstĂ€ller nycklar, kan du verkligen veta det okrypterade innehĂ„llet i det andra samtalet – med tanke pĂ„ att saker som codec och omkodning helt kan Ă€ndra (bitvisa) innehĂ„llet i det andra samtalet, Ă€ven om du har tillgĂ„ng till "bitarna" som kommer frĂ„n din angripande telefon?

PĂ„ vissa av dessa frĂ„gor ger arbetet med ReVoLTE ett positivt svar. Författarna anvĂ€nder en kommersiell programvarukonfigurerbar sniffare för radioström som kallas Airscope för att avlyssna VoLTE-samtalet frĂ„n nedladdningslinjen. (Jag tror att det enkla att ta kontroll över programvaran och fĂ„ en grundlĂ€ggande förstĂ„else för hur den fungerar har kostat mĂ„nader i livet för stackars doktorander – vilket Ă€r typiskt för sĂ„dana akademiska forskningar).

Forskarna fann att för att nyckelanvĂ€ndningen ska aktiveras mĂ„ste det andra samtalet ske tillrĂ€ckligt snabbt efter det första samtalet avslutats, men inte för snabbt – cirka tio sekunder för operatörerna de experimenterade med. Lyckligtvis spelar det ingen roll om anvĂ€ndaren svarar pĂ„ samtalet under denna tid – "samtalet", dvs. sjĂ€lva SIP-kommunikationen fĂ„r operatören att Ă„teranvĂ€nda samma nyckel.

MĂ„nga av de mest frustrerande problemen rör problem (4) – att fĂ„ tag i bitar av okrypterat innehĂ„ll frĂ„n ett samtal initierat av en angripare. Detta beror pĂ„ att mycket kan hĂ€nda med ditt innehĂ„ll nĂ€r det överförs frĂ„n angriparens telefon till offrets telefon via mobilnĂ€tet. Till exempel kan det intrĂ€ffa saker som omkodning av den kodade ljudströmmen, vilket gör att ljudet förblir detsamma men helt Ă€ndrar dess binĂ€ra representation. I LTE-nĂ€t anvĂ€nds Ă€ven RTP-huvudkomprimering, vilket kan förĂ€ndra en stor del av RTP-paketet.

Slutligen mÄste de paket som skickas av angriparen linjera upp ungefÀr med de paket som skickades under det första telefonsamtalet. Detta kan vara problematiskt, eftersom modifiering av tystnad under ett telefonsamtal resulterar i kortare meddelanden (den sÄ kallade komforttystnaden), vilket kan göra dem dÄligt synkroniserade med det ursprungliga samtalet.

Avsnittet "verklig vĂ€rldens angrepp" Ă€r vĂ€rt att lĂ€sa i sin helhet. HĂ€r behandlas mĂ„nga av de ovan nĂ€mnda problemen – specifikt upptĂ€ckte författarna att vissa codec inte kodas om, och att omkring 89% av den binĂ€ra representationen av det mĂ„lade samtalet kan Ă„terstĂ€llas. Detta Ă€r relevant för minst tvĂ„ europeiska operatörer som har testats.

Detta Àr en anmÀrkningsvÀrt hög framgÄngssiffra, och Àrligt talat mycket högre Àn jag förvÀntade mig nÀr jag började arbeta med detta dokument.

Vad kan vi göra för att ÄtgÀrda detta?

Det omedelbara svaret pÄ denna frÄga Àr enkelt: eftersom kÀrnan i sÄrbarheten ligger i en attack pÄ ÄteranvÀndning (reinstallering) av nyckeln, fixa helt enkelt detta problem. Se till att en ny nyckel erhÄlls för varje telefonsamtal, och lÄt aldrig paketrÀknaren ÄterstÀlla sig till noll med samma nyckel. Problemet Àr löst!

Kanske inte. Det skulle krÀva en uppgradering av en stor mÀngd utrustning och, Àrligt talat, Àr en sÄdan fix i sig inte sÀrskilt pÄlitlig. Det skulle vara bra om standarderna kunde hitta ett sÀkrare sÀtt att implementera sina krypteringslÀgen som inte Àr katastrofalt sÄrbara för sÄdana nyckelÄteranvÀndningsproblem som standard.

Ett av de möjliga alternativen Àr att anvÀnda krypteringslÀgen dÀr icke-mÄlmedveten anvÀndning av nonce inte leder till katastrofala följder. Det kan vara för dyrt för vissa moderna hÄrdvaror, men det Àr definitivt en riktning som designarna bör tÀnka pÄ i framtiden, sÀrskilt med tanke pÄ att 5G-standarderna snart kommer att dominera vÀrlden.

Denna nya forskning vÀcker ocksÄ den övergripande frÄgan om varför de samma fördömda attackerna fortsÀtter att upprepas i en standard efter en annan, mÄnga av vilka anvÀnder mycket liknande konstruktioner och protokoll. NÀr du stÀlls inför problemet med att Äterinstallera samma nyckel i flera allmÀnt utbredda protokoll, som WPA2, kÀnns det inte som om det kanske har blivit dags att göra era specifikationer och testprocedurer mer pÄlitliga? Sluta betrakta standardimplementerare som tankevÀckta partners som Àr uppmÀrksamma pÄ era varningar. Behandla dem som (omedvetna) motstÄndare som oundvikligen kommer att implementera allt fel.

Eller som ett alternativ kan vi göra som allt fler företag som Facebook och Apple gör: se till att krypteringen av röstanrop sker pÄ en högre nivÄ av OSI-nÀtverksstacken, utan att förlita sig pÄ tillverkare av mobilutrustning. Vi kan till och med driva för end-to-end-kryptering av röstanrop, som WhatsApp med Signal och FaceTime, och anta att den amerikanska regeringen helt enkelt slutar stÀlla hinder för oss. DÄ (med undantag för vissa metadata) skulle mÄnga av dessa problem helt enkelt försvinna. Denna lösning Àr sÀrskilt relevant i en vÀrld dÀr inte ens regeringar Àr sÀkra pÄ om de kan lita pÄ sina utrustningsleverantörer.

Eller sÄ kan vi bara göra det vÄra barn redan har gjort: sluta svara pÄ dessa irriterande samtal.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster