Szerző: Hlács Ferenc

2015. február 20. 13:10

Kritikus sebezhetőséget javított járművein a BMW

Súlyos biztonsági hibát foltozott be autóin a BMW: a vállalat ConnectedDrive szoftverén tátongó sebezhetőséget kihasználva a potenciális támadók kinyithatták a járművek vezetőoldali ajtóit. A hibát felfedező szakértő szerint a gyártó könnyűszerrel elkerülhette volna a problémát.

Komoly, a BMW számos modelljét fenyegető biztonsági rést fedezett fel azok szoftverében Dieter Spaar biztonsági szakértő, akit a német ADAC (Allgemeiner Deutscher Automobil-Club) autósklub kért fel, hogy vizsgálja meg, milyen adatokat továbbítanak a gyártó beépített modemmel felszerelt járművei. A sebezhetőséget kihasználva támadók távolról egyszerűen kinyithatják a kiszemelt autók ajtaját, pedig a buta hibát a vállalat könnyűszerrel kivédhette volna.

2,2 millió autó érintett

A szakértőnek a ConnectedDrive szolgáltatást sikerült feltörni, melynek segítségével az autók tulajdonosai - előzetes regisztráció után - a gyártó mobilalkalmazásával is kinyithatják azokat. A szolgáltatás kezeléséről egy központi egység, az úgynevezett Combox gondoskodik, amit a vállalat először a gyártósorról 2010-ben legördült autóiba szerelt be - a legújabb modellekben ennek szerepét már a Telematic Communication Box, röviden TCB veszi át. A Combox felel még többek között a multimédiás funkciókért, illetve a mobiltelefonok Bluetooth-párosításáért is a beépített kihangosítóval.

A Combox egység

Szoftvertesztelés: ütött az óra

A tesztelői szakmát rengeteg friss hatás éri, kifejezetten nehezített pálya ez mostanság.

Szoftvertesztelés: ütött az óra A tesztelői szakmát rengeteg friss hatás éri, kifejezetten nehezített pálya ez mostanság.

Az egységben egy 32 bites Renesas SH-4A RISC processzor dolgozik, munkáját a kocsit leállítva egy kisebb fogyasztású V850ES mikrokontroller veszi át. A mobilkommunikációhoz a vizsgált járművek egy GSM-, GPRS-, illetve EDGE-képes Cinterion modemet használnak. Spaar a Comboxot az autóból eltávolítva először annak vészfunkcióit vizsgálta meg: egy saját, OpenBSC támogatással rendelkező bázisállomást állított fel, amire az egység annak magas jelerősségét érzékelve fel is csatlakozott. Innentől viszonylag egyszerű volt elcsípni az eszköz által küldött adatokat. A vészfunkció tesztelésénél egy titkosított üzenetet érkezett, amit mint később kiderült, maga a modem hoz létre és a titkosítást is az végzi.

A hozzá tartozó firmware-t viszonylag egyszerű volt kiolvasni: a Combox ezt egy, az alaplapra forrasztott flash modulon tárolja. Ezt eltávolítva kiolvasható annak tartalma, némi kutakodással és a BMW által használt szoftverkörnyezetről nyilvánosan elérhető információk alapján megtalálható a titkosításhoz használt kulcs is. Spaar a flash-en talált szoftverben talált kódsorokat próbálgatta végig, mígnem az egyik működött és sikerült vele feloldani az üzenet titkosítását. Azt is sikerült gyorsan ellenőrizni, hogy a kulcsok nem egyediek és időben sem változnak, a BMW tényleg minden comboxban ugyanazt a kulcsot használja. Ez nyilván szembemegy minden, elemi biztonsági megfontolással, egy combox birtokában ugyanis a támadó az összeshez hozzá tud férni.

Szezám tárulj!

Ezután következett az ajtónyitás. Erre az Android és iOS rendszerekre is letölthető My BMW Remote alkalmazással van lehetőség: használatához a tulajdonosnak először a gyártó weboldalán kell regisztrálnia, majd engedélyeznie kell a Remote Services funkciót. Az app kommunikációjának elemzéséhez Spaar ismét a helyben létrehozott, saját "hamis" bázisállomást használta. A rendszer a leállított autónak először egy SMS-t küld, ami kibányászható a mikrokontroller illetve Combox eseménynaplójából, ez azonban önmagában még kevés a zár kinyitásához.

Az autó az üzenetet megkapva csatlakozni próbál a BMW szervereire, ahonnan további adatokra vár. Ez a kommunikáció azonban, a szakértő meglepetésére mindenféle titkosítást nélkülöző, egyszerű HTTP protokollon zajlott. A zár feloldásához szükséges információk begyűjtéséhez az ajtót először hagyományos módszerrel, az appon keresztül kellett kinyitni, ezután pedig ismét útra kelhetett a másolt SMS. A szerver ezt követően eltárolta az autóhoz kapcsolódó adatokat.

Ezen információk, valamint egy házi bázisállomás és egy laptop birtokában már létrehozható egy magát a BMW backendjének kiadó "szerver", amely a megfelelő parancsot megküldi az autónak. A tesztek szerint a próbálkozásnak az autók engedelmeskednek - és nem csak a tesztpéldány. A szakértő több más BMW-n is kipróbálta az eljárást, a járművek zárjai pedig rendre megadták magukat a támadónak. Még az sem jelentett különösebben biztos védelmet, ha a felhasználó kikapcsolta a Remote Services funkciót: mivel az arra vonatkozó konfigurációs adatokat az autó szintén kódolatlan XML formátumban kapja meg, mezei HTTP kapcsolaton keresztül, nem jelentett túl nagy kihívást az opció visszakapcsolása.

Persze miután a szerver azonos üzeneteket küld az autókhoz, ellenőriznie kell, hogy azokat pontosan melyik járműnek küldi. Ezt úgy teszi meg, hogy az adott üzenetekhez a célba vett autó alvázszámát is mellékeli, ha pedig az nem stimmel, akkor a jármű nem hajtja végre a parancsot. Az egyedi azonosító kiderítése ugyanakkor ismét elég egyszerű feladat, olyannyira, hogy azt gyakorlatilag az autó végzi el a támadó helyett: a hibás számmal küldött üzenetre adott válaszában a jármű helyes alvázszámát is továbbítja.

Ez a Combox egységeket TCB-re váltó új modelleknél szerencsére már nem áll fenn, Spaar vizsgálatai alapján ugyanakkor ettől eltekintve ezekre is érvényesek a fenti biztonsági hibák - az alvázszámot mindenesetre itt sem nehéz megszerezni, főleg, hogy egyes országokban azt jól látható helyen kell elhelyezni a járműveken, így a szerver-kliens kommunikációban ezt jelszóként használni hatalmas felelőtlenség.

A hanyagság a legnagyobb sebezhetőség

A prémium kategóriás modellek tehát egy kisebb hátizsákban elférő felszereléssel rövid idő alatt kinyithatók. A Reuters szerint a gyártó gondozásában készülő Mini és Rolls-Royce modelleket, szintén érintő, tehát az összes 2010. március és tavaly december 8. között gyártott BMW-csoportos autóra kiterjedő hibát a cég egy szoftverfrissítéssel már orvosolta, továbbá a "meztelen" HTTP kommunikációt is HTTPS-re állította át. A gyártónak egyetlen esetről sem volt információja, melynek során valaki a hibát kihasználva törte volna fel autóit.

Noha a veszély a vállalat szerint már elhárult, az eset jól mutatja, hogy még a hasonló óriások is a kelleténél jóval kevesebb figyelmet fordítanak járműveik szoftveres biztonságára. A Spaar által feltárt sebezhetőség nem egy komplikált módszerekkel nagy nehezen kihasználható biztonsági rés volt, hanem feltűnő hanyagság a gyártó részéről, amit az elavult titkosítással vagy akár teljesen kódolatlanul végzett hálózati kommunikáció is jól mutat. A szoftveres biztonság hiányosságai már korábban is okoztak problémákat a területen, többek között az egyik legnagyobb amerikai biztosító is megfeledkezett autókövető rendszerének megfelelő védelméről. A modern autók ilyen sebezhetőségét továbbá Charlie Miller kísérlete is jól mutatja, aki egy notebookkal szinte teljesen átvette az irányítást egy Ford Escape és egy Toyota Prius felett - esetében ugyanakkor kábeles csatlakozásra, illetve a járművek belső burkolatának szinte teljes elpusztítására is szükség volt, így szerencsére valószínűtlen, hogy ilyen támadásra éles helyzetben sor kerülne.

Csatlakozz partnerprogramunkhoz, mi pedig ajánlunk ügyfeleinknek, ezenkívül egyedi kedvezményeket is adunk webhosting csomagjainkra. Próbáld ki ingyenesen az Aruba Cloud-ot, most 40 ezer forint értékű vouchert adunk!

a címlapról