Cerberus: Biztonsági rés a népszerű Anti Theft szolgáltatásban

2013. augusztus 17.
8491
Advertisement
Figyelem! Ez a hír már több, mint egy éves! A benne lévő információk elavultak lehetnek!
Figyelem! Ez a hír a régi androgeek rendszerből lett átmentve, ezért képek és szövegformázások hiányozhatnak belőle!
Zel profilja, adatai
Zel
Nem is olyan régen indult a Google Device Manager szolgáltatása, ami egyfajta Anti Theft megvalósítás.

Ennek segítségével távolról felügyelhetjük Androidot futtató eszközünket. A valós cél, hogy egy esetleges lopás vagy elvesztés után, megakadályozva, hogy adataink, és személyes jelszavaink illetéktelen kezekbe kerüljenek, webes felületen keresztül meghatározhatjuk a helyzetét, megcsörgethetjük, de ami a legfontosabb, konkrétan formázhatjuk azt. Hasonló, sőt jóval több funkcióval rendelkezik a már jó ideje létező Cerberus, amit a mai napig sokan (köztük én sem) nem váltottak le a Google megoldására.
Nemrég közzétett információk szerint azonban, a népszerű szolgáltatás egy biztonsági hibát tartalmaz, melynek kihasználása esetén az illetéktelen behatoló szinte bármihez hozzáférhet a tudtunk nélkül. Üzenetek, jelszavak, kameraképek rögzítése sem akadály, sőt a legrosszabb, hogy akár egy mozdulattal mindent törölhet is. Persze a hackerek általában nem foglalkoznak ismeretlen személyek hívásnaplóival és üzeneteivel, de ha az illető kiléte már ismert, akkor máris értelmet nyerhetnek ezek is.
A hibára egy "blogger" hívta fel a figyelmet, amit aztán a Cerbereus fejlesztője is elismert. Nem sokkal később közölte, hogy a július elején kiadott béta is rendelkezik a bug-gal, de a következő update már tartalmazza a javítást, kérdés, hogy ez mikor érkezik. Addig is célszerű ?megszabadulni? az applikációtól (ezt persze nem ő mondta). A legdurvább megoldás, amit magam is eszközöltem, hogy uninstall-áltam a szoftvert. A következő lépés, hogy a webes felületen eltávolítjuk a hozzáadott eszközt vagy eszközöket. Nem ekkora, de a frissítésig hatásos módszer lehet az applikáció fagyasztása Titanium Backup vagy éppen Grennify segítségével. És most kicsit a sebezhetőségről.
A legnagyobb probléma a Cerberus szerverei és a felhasználók közti kommunikációs protokollban keresendő. A szolgáltatás jóformán csak az IMEI számot használja, ami alapján generál egy hozzáférési token-t. Előbbi pedig nem teljesen privát. Az azonosító 15 számból áll, melynek első 8 karaktere nyilvános (ez például Paul Note 2-hez tartozik: 35362705). Ez az úgynevezett TAC (Type Allocation Code), ami segítségével egy eszköz gyártója és típusa kategorizálható. Ezután áll még 6 darab másik szám. Ezek segítségével már egy konkrét mobil eszközre szűkíthetjük a kört. A sor végén már csak egy generált karakter áll, amit ellenőrzésként (paritás) használnak. Ezzel tudják ellenőrizni az első 14 szám helyességét.
Ha ezeket a feltételeket vesszük alapul, akkor 1 millió variáció lehetséges, mivel az első nyolc karakter kvázi publikus. Így egy nyers hack-elési móddal könnyedén kinyerhetünk egy valós, működő képes karaktersorozatot, amelyet aztán beillesztünk egy HTTP request változójába, utána az API visszaadja felhasználói nevet és az SHA1 titkosítású jelszót. Innentől fogva kb. célegyenesben vagyunk. (egyszerűsített magyarázat, lépésről-lépésre az eredeti bejegyzésben olvashatunk)




A hiba tehát egyelőre nyílt, megoldás hamarosan érkezik, ami valószínűleg a kommunikációs protokoll változtatása lesz. Innentől fogva ki-ki döntse el, hogy mit kezd az applikációval. A rosszindulatú emberek nem válogatnak, hogy John Doe vagy éppen Paprika Jancsi a felhasználó, ha kell ár csak poénból is törölhetik az adatokat. (Kezdő hackereknek ez is ?dicsőséget? jelenthet).

 Forrás: AndroidPolice
nincs még hozzászólás