A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Ez a dokumentum leírását sérülékenységek talált és használt 8 legnépszerűbb 3G és 4G-modemek rendelkezésre Oroszországban és szerte a világon.

felszerelés


A következő gyártók 8 modemét vettük figyelembe:

  • Huawei (2 különböző modem és 1 router),
  • Gemtek (1 modem és 1 router),
  • Quanta (2 modem),
  • ZTE (1 modem).

Nyilvánvaló, hogy nem minden modemet szállítottak sebezhető firmware-nel: a firmware néhány hibája engedélyezett, amikor a firmware-t a mobiltelefon-szolgáltató szabta meg. Bár az ilyen aláírások néhány gondolatot sugallnak:

Ezután a kényelem érdekében az összes hálózati eszközt - mind a modemeket, mind a routereket - "modemeknek" nevezik.

A sebezhető modemekre vonatkozó statisztikák

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Megtalált biztonsági rések


A vizsgált összes modellben voltak olyan kritikus sérülékenységek, amelyek a rendszer teljes kompromisszumához vezettek. Gyakorlatilag mindegyiket távolról lehet működtetni (lásd a modemek általános tábláját). Az észlelt sebezhetőségek leírása súly szerint rangsorolva:

1. Távoli kódfuttatás webes szkriptekben, 5 eszközön (RCE)


Mind a webszerverek a modem alapján működik az egyszerű CGI-scriptek, szinte soha nem tartott megfelelő szűrés (kivéve a Huawei modem, majd miután néhány frissítést bejelentését követően réseket).

A kombináció a három tényező ad kedvezőtlen eredmény: több mint 60% -a modemek veszélyeztetett távoli kód. És anélkül, hogy a firmware frissítés ezt a problémát csak úgy kaphatunk, Huawei modem (van egy nyilvános biztonsági rés) sebezhetőség, míg mások minősülnek 0 nap.

2. A firmware, 6 eszköz önkényes módosítása (Integrity támadások)


Csak három modem volt titkosítva a firmware módosítását. Két modem ugyanazt az algoritmust használta az aszimmetrikusan titkosított RSA használatával az SHA1 ellenőrzőösszeg digitális aláírási módjában, a harmadik modem titkosította a firmware tartalmát az RC4 stream kódolóval.

Minden implementáció kriptográfiai algoritmusok teheti támadás, ami sérti a integritás és adatvédelem: az első esetben, tudjuk módosítani a firmware-t, bevezetése bele egy tetszőleges kódot, a második esetben hiányosságok miatt az alkalmazása az algoritmus képes volt eltávolítani a kulcsot, és meghatározza a titkosítási algoritmus, ami szintén vezet az a képesség, hogy önkényesen megváltoztassa a firmware tartalmát.

Három további modem nem volt védve a firmware módosításától, azonban a firmware frissítéséhez helyi hozzáférést kell biztosítani a COM interfészekhez.

A fennmaradó két modem a FOTA (Firmware Over-The-Air) technológia használatával csak a szolgáltató hálózatán keresztül frissíthető.

3. A kérelmek helyszíni hamisítása, 5 eszköz (CSRF)


A CSRF támadások különböző feladatokhoz használhatók, elsősorban a módosított firmware távoli letöltésére és az önkényes kód bevezetésére. A támadás elleni hatékony védelem az egyedi kérdéseket minden egyes kérelemhez.

4. Cross-site scripting, 4 eszköz (XSS)


Felületi alkalmazása az ilyen támadások közül is elég széles ahhoz, - csomópontból fertőzést másoknak lehallgató SMS, de a tanulmányban, hogy fő felhasználási - ez is módosul loading firmware ellenőrzések és megkerülve antiCSRF same-origin Policy.

Támadó vektorok

1. Azonosítás
2. Kód végrehajtása


Ezt a lépést már részletesen az előző részben, az 1. és a 2. bekezdésben részletesen ismertetjük. A kódot akár a tetszőleges kódot futtató webes parancsfájlok biztonsági résén, akár a fertőzött firmware frissítésén keresztül is végrehajthatja. Az első mód, amellyel 5 modemet tudtunk behatolni.

Részletesebben írjuk le a vektorokat a második módszer megvalósításához.

Két modemek ugyanazt az algoritmust integritásának biztosítása az EEPROM: RSA aszimmetrikus kulcsú titkosítás egy hash összeg végeztünk SHA1 OpenSSL könyvtár. A könyvvizsgálatot elvégezték helyesen: letölti a firmware-t, ami lényegében egy archívum, a web szerver kibontja a két fő fájl - a fájlt, hogy jelezze a méret a beolvasott adatokat, és fájl az aláírt hash összege ezeket az adatokat. Továbbá, figyelembe véve a fájlrendszer nyilvános kulcsát, ellenőrizze a script fellebbezett az OpenSSL könyvtár funkcióit dekódolásához aláírását, és összehasonlítva a hash összeg, abban az esetben a véletlen a firmware telepítve. Firmware tömörítési algoritmus egy szingularitás: a meglévő archív volt lehetséges több fájlt az azonos nevű, ugyanakkor nem változik a kezdő bájt az archívum, és amikor kicsomagolja a firmware-t cserélni később fájl korábban. Emiatt nagyon könnyű változtatni a tartalmát a firmware nem fogja megváltoztatni a integritását a beolvasott adatokat.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

A harmadik modemben a firmware-t az RC4 algoritmussal kódoltuk gamma állandóval. Mivel a firmware három különböző verziója elérhető az interneten, többféle bájtot is kaphat szöveges formában - olyan helyeken, ahol 0x00 bájt található az egyik titkosítatlan firmware fájlban.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Támogatás és segítségnyújtás a támadások kriptoprotokoly feltéve Dmitry Sklyarov egy cryptanalyst megbecsült és fejtheti vissza a vállalat pozitív Technologies
A jövőben a CSRF támadások és a HTML5 funkciók segítségével több rész / formátumadatot vagy XSS támadást küldhet, ha az alkalmazás védett a CSRF-től (Huawei modemhez). Csak három Huawei modemet védett a CSRF-től, és benne volt, hogy az XSS felhasználható a védelem megkerülésére. Minden más esetben a letöltés egy speciális oldalra helyezett HTML5 kóddal történhet.

A Gemtek modemek az algoritmust használják a firmware frissítéséhez a számítógépen telepített speciális segédprogrammal. Ebben az esetben a firmware-t a HTTP protokollon keresztül a gazdagépen internetes kapcsolaton keresztül töltötték le. De aztán a letöltött firmware integritásának ellenőrzésére szolgáló mechanizmust használtam a szerverről letöltött ellenőrzőösszegek segítségével is. Nem sikerült ellenőrizni a szkript helyességét.

Azonban a remény, hogy ugyanaz a gyártó, amely nem megfelelően érvényesíti a integritását a boot az modemek, jól védi a integritását a firmware - nem éri meg.

3. Az adatok lekérdezése


Most már képesek vagyunk tetszőleges kódot végrehajtani a modemen. Ezután három dolgot kell megtenni: meghatározni a modem helyét (később világossá válik, miért), megkapja az SMS és a HTTP forgalom lehallgatását.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

A legegyszerűbb módja annak, hogy keresse meg - meg egy bázisállomás azonosító (CellID). Ezután tudván az MCC és MNC az üzemeltető pontosan meg tudja határozni a helyzetét a védő segítségével nyilvános adatbázisok, mint opencellid.org. Egy másik módja - használja a beépített modem Wi-Fi-kártyát beolvassa a közeli hálózat, és meghatározza a helyét a sértett (vagy, hogy meghatározza annak lehetséges helyét terület -, mert egy bázisállomás működik kellően nagy sugarú lefedettség). CellID sikerült „get” a 6-os modemek, Wi-Fi rendelkezésre állt két modem. Az egyik a modemek kell fordítanod, és betölti az új illesztőprogramok hálózati kártya: a jelenlegi lehetővé tette, hogy csak ad hoc módban, és ebben a módban, lehetetlen, hogy átvizsgálja a közeli hozzáférési pontot.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

A csapdaforgalom érdekesebb. Többféleképpen is megvalósítható: a DNS-kiszolgáló beállításainak módosítása a modemen, valamint a modem átjárójának módosítása a Wi-Fi interfészre és a korábban engedélyezett hozzáférési ponthoz történő kapcsolódás. Az első út természetesen egyszerűbb a 10 másodperces beállítások megváltoztatásához: ezek rendszerint a fájlrendszeren is megtalálhatók; mindenütt, kivéve egy modemet, lehetséges volt. A második lehetőség pusztán elméletileg tekinthető: a feladat az volt, hogy megváltoztassa a hálózati kártya módját ad hocról aktívra, kapcsolódjon egy idegen hozzáférési ponthoz, és megváltoztassa a modem útválasztását.

Nem csak a HTTP-forgalmat lefoglalhatjuk. Ha egyszerűen végrehajtja és futtatja a VBS kódot egy HTML oldalon, hozzáadhatja a tanúsítványt a megbízható gyökértanúsító hatóságokhoz, és sikeresen futtathatja az MITM-et:

4. SIM kártya kovácsolása és 2G forgalom lehallgatása


A SIM kártyán lévő alkalmazások támadási módjairól a Karsten Nohl (Karsten Nohl), valamint a "#root via SMS" munkálataiban olvasható. Még mindig bináris SMS-t kell küldeni a SIM-kártyákra, mivel a modemmel nem tudtuk parancsokat küldeni az APDU protokollon keresztül a SIM-kártyán lévő alkalmazásokhoz.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

A modemet diagnosztikai módba fordítjuk

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

PowerShell szkript bináris SMS küldésére

A következő támadási vektor, amely a támadó pontos geolokációjával együtt használható, a FakeBTS használata. Ha tudjuk, hogy elég pontosan azon a helyen az áldozat, valamint annak az IMSI, fel tudjuk használni egy hamis bázisállomás a közelben, és várni, míg csatlakozik hozzánk, vagy ha tudjuk kényszeríteni a bázisállomás (ez a funkció elérhető 5 eszközök). Sikere esetén bináris SMS-t küldhet a megtámadott SIM kártyára az üzemeltető korlátozás nélkül.

5. Munkaállomás fertőzés


A beszűrődő a modem, akkor korlátozott a vektorok támadások távközlési előfizetői, de ha már a számítógépet megfertőzheti csatlakozik a modem, akkor azonnal kap korlátlan lehetőségeket lopás és adatok elfogása a számítógépen belül.

  • Virtuális CD-ROM. Szinte minden modemnek van egy virtuális lemezképe, amely az első szakaszban van csatlakoztatva a meghajtók telepítéséhez. Szükséges a kép felváltása és kényszerítése.
  • VBS, drive-by-download. Futtatható kód végrehajtása a HTML-oldal törzsében, vagy a végrehajtható fájlok "frissítések" vagy diagnosztikai segédprogramok betöltése miatt kényszerítve.
  • Böngésző 0 nap. Példaként az Adobe Flash 0 napot használtuk a Hacking Team archívumában.
  • Sérült ügyfélprogram. A modemhez mellékelt operátorok egy sebezhető diagnosztikai szoftvert tartalmaznak, amely tetszőleges kódot futtathat az OS X és a Windows operációs rendszert futtató számítógépen. Hivatkozás: Ennek a sérülékenységnek a megtalálásához különleges köszönet illeti Mikhail Firstovot a HeadLight Security-től.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Tetszőleges kód futtatása a modem ügyfélszoftverén

6. Célzott támadások (APT)


Miután megfertőzte a modemet és a gazdahelyet, valamilyen módon meg kell szereznie a lábát a rendszerekben. A modemben a modem kikapcsolása után meg kell menteni az automatikus lehúzást, és meg kell akadályozni a további firmware-frissítéseket. Egy fertőzött számítógépen hasznos észlelni és fertőzni más sérülékeny modemeket, amint csatlakoznak a számítógéphez. Több eszközzel is meg lehet fertőzni a legtöbb eszközt közvetlenül a kommunikációs szalonban az eszköz "ellenőrzése" során.

7. Opcionális


A kezelő személyi szekrényéhez való hozzáférési vektort is úgy tekintettük, hogy kérelmet küldtünk el a USSD-nek, és SMS-ben visszaállítottuk a jelszót.
Ezt a vektort a "#root via SMS" prezentációban mutattuk be. A kizsákmányoláshoz XSS támadást alkalmaztak, amelyet SMS küldésével lehet végrehajtani. Ez azonban lehetséges azokban a modemekben is, ahol az SMS-t az RCE használatával lehet olvasni.

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Az XSS működésének eredménye

Mit ajánlok azoknak az ügyfeleknek, akik folyamatosan dolgoznak ilyen eszközökkel? A legvédettebbek a Huawei modemek, feltéve, hogy a legújabb firmware telepítve van. Ez az egyetlen cég, amely maga szállítja a firmware-t (az operátorok csak vizuális elemeket adhatnak hozzá és egy vagy több funkciót letilthatnak). Emellett másokkal ellentétben a Huawei rendszeresen javítja a szoftverben megtalálható sérülékenységeket.

modemek:

A népszerű 3g és 4g modemek kritikus sebezhetőségei, vagy hogyan készítsenek nagy testvért

Információk közlése


Annak ellenére, hogy 90 nap telt el a távközlési szolgáltatók értesítése óta, számos sérülékenység továbbra is fennmaradt.

Köszönetnyilvánítás a segítségnyújtáshoz és részvétel a tanulmányban: Alexey Osipov, Dmitrij Sklyarov, Kirill Nesterov, Mikhail Firstov, SCADA Strangelove csapat