A OnePlus véletlenül előre telepített egy alkalmazást, amely hátsó ajtóként működik a root hozzáféréshez

A OnePlus a helyén hagyott egy Qualcomm mérnöki tesztalkalmazást, amely hátsó ajtóként működik, hogy root hozzáférést biztosítson a OnePlus 3, 3T és 5 készülékeken.

Frissítés: A OnePlus kiadott egy hivatalos válasz a dologhoz. Egy közelgő frissítés során eltávolítják az ADB gyökérfüggvényét az EngineerMode-ból.

Kicsit több mint egy hónap telt el azóta, hogy a OnePlusról kiderült, hogy gyűjt személyazonosításra alkalmas adatok az elemzéshez. A vállalat gyorsan megfordította az irányt, és egy frissítésben a vállalat azt ígérte, hogy átláthatóbbá válik azáltal, hogy egyértelműen megadja a felhasználóknak a lehetőség az OxygenOS elemzésből való leiratkozásra. Bár ez a kudarc azóta megoldódott, ma este egy másik felemeli a csúnya fejét. Egy felhasználó a Twitteren, aki a következő néven szerepel: "Elliot Alderson" (a népszerű Mr. Robot televíziós sorozat főszereplőjéről kapta a nevét) felfedezte, hogy a OnePlus véletlenül a helyén hagyott egy diagnosztikai tesztelő alkalmazást a Qualcomm készítette. Az alkalmazás visszafordítása után rájött, hogy lehet

root hozzáférés biztosítására használják ki – hatékonyan hátsó ajtóként működve.

Az alkalmazás neve "EngineerMode", és lényegében a Qualcomm által készített rendszeralkalmazás és az OEM-ek, például a OnePlus számára biztosítják, hogy az OEM-ek könnyedén tesztelhessék az összes hardverösszetevőt eszköz. Az alkalmazás minden OnePlus 3, OnePlus 3T és OnePlus 5 eszközre előre telepítve van, és könnyen elérhető bármely tevékenységindítón keresztül, mivel az alkalmazás összes tevékenysége exportálva van.

Valójában mi több hónappal ezelőtt foglalkozott az alkalmazás létezésével, de akkor még fogalmunk sem volt, mire lehet használni. A Twitter-felhasználó visszafejtette az alkalmazást (forrása felkerült az internetre itt) és talált egy érdekes tevékenységet DiagEnabled néven. A tevékenységen belül különösen egy módszer emelkedett ki: az escalatedUp. Ez a módszer elfogad egy logikai értéket (igaz/hamis) és egy karakterláncot. A karakterlánc egy jelszó, amelyet a metódus ellenőriz, mielőtt beállítja a rendszer tulajdonságait persist.sys.adbroot és oem.selinux.reload_policy 1-hez.

Az első rendszertulajdonság különösen érdekes, mivel lehetővé teszi a felhasználó számára, hogy rootként futtasson ADB-t. Ez azonnal megnyitja a lehetőséget a teljes root hozzáférés megszerzésére a telefonon – mindezt a rendszertöltő feloldása nélkül. Tehát pontosan hogyan érheti el az EngineerMode alkalmazást, hogy ezeket a rendszertulajdonságokat „1”-re állítsa?

@fs0c131y-nak meg kellett találnia a helyes jelszót a szándék elküldéséhez, hogy átadja a logikát a fent közzétett módszerrel. Ennek a jelszónak a megtalálása azonban nem egyszerű feladat. Visszafejtette a jelszó generálásáért felelős könyvtárat (libdoor.so néven), és megtalálta, hol található a jelszókivonat: /data/backup/fpwd. A jelszót különféle build tulajdonságokból állítják elő, mint pl ro.product.model és ro.product.brand és nem lenne könnyű visszafejteni.

Szerencsére a segítséggel David Weinstein és Most biztonságos a Twitteren felfedezte az EngineerMode-hoz szükséges jelszót, hogy az ADB-t root jogosultsággá emelje.

Mindössze annyit kell tennie, hogy elküldi a szándékot ebben a formátumban:

adb shell am start -n com.android.engineeringmode/.qualcomm.DiagEnabled --es "code""angela"

ahol a com.android.engineeringmode/.qualcomm. A DiagEnabled az általunk kihasznált DiagEnabled tevékenység összetevője, a "code" pedig a karakterlánc neve, az "angela" pedig a megfelelő jelszóérték.

@fs0c131y kijelenti, hogy megteszi pályázatot tesz közzé hamarosan elküldi ezt a szándékot, hogy az ADB-t root jogosultsággá emelje, javítsa a rendszerindító lemezképet a dm-verity letiltásához, és telepítse a su binárisokat. Figyelje az XDA fórumait, hogy mikor jelenik meg ez a gyökér alkalmazás.

Ez azt jelenti a végfelhasználók számára, hogy megteheti könnyedén rootolhatja OnePlus 3, OnePlus 3T és OnePlus 5 készülékét anélkül, hogy feloldaná a rendszerbetöltőt. Ez a kihasználás azonban nem teszi lehetővé, hogy egy rosszindulatú alkalmazás root hozzáférést biztosítson magának, így ha valaki nem rendelkezik fizikai hozzáféréssel az eszközhöz az ADB beállításához, akkor biztonságban van a kizsákmányolástól.

Ha meg akarja magát védeni ettől a kizsákmányolástól, megteheti távolítsa el az alkalmazást az aktuális felhasználóról amely megakadályozza a szándék elküldését az EngineerMode alkalmazásnak. Csak használja a következő parancsot az ADB-ben:

adbshellpmuninstall-k--user 0 com.android.engineermode

Természetesen ez továbbra is kihasználásnak számít, és reméljük, hogy a OnePlus hamarosan javítja ezt. Csak annyit kell tenniük, hogy eltávolítják ezt az alkalmazást a jövőbeli buildekből.


1. frissítés: A jelszó „angela”

@fs0c131y felhasználó frissítést tett közzé Twitter-oldalán azzal a jelszóval, amelyre szükség van egy rootolt ADB-héjba való belépéshez. Ez a jelszó...angela. Azok számára, akik nem nézik a Mr. Robotot, Angela az egyik főszereplő neve. Azt hiszem, sok Mr. Robot rajongó van a Qualcommnál.

Ha beírja a fenti parancsot az ADB-ben, észre fogja venni, hogy az ADB azonnal megszakad, és a szerver újraindul. Írja be újra az ADB-t, és észre fogja venni, hogy ez most egy rootolt shell.


2. frissítés: A jelszó származtatása

A Now Secure biztonsági cég közzétett egy blogbejegyzést, amely részletezi, hogyan származtatták a root kizsákmányolásához szükséges jelszót. A teljes bejegyzésüket itt olvashatja el.


3. frissítés: Több eszköz érintett

Ez a legfrissebb hír nem meglepő, de úgy tűnik, hogy több eszközt érint ez a visszaélés. Ennek az az oka, hogy az EngineerMode alkalmazás egy Qualcomm alkalmazás, így lehetséges, hogy más OEM-ek előre telepítve hagyták eszközeiken. Eddig a felhasználók megkeresték a @fs0c131y címet a Twitteren, hogy megerősítsék, az alkalmazás telepítve van néhány Asus Zenfone és Xiaomi készülék. Könnyen ellenőrizheti, hogy az eszközön van-e ez az alkalmazás, ha belép a Beállításokba, és megnézi, hogy mely alkalmazások vannak telepítve.


4. frissítés: Az eszköz gyökereztetése

Néhány parancs használatával a rootolt ADB-héjon keresztül most már lehetséges tolja a su binárist a készülékére. Ennek segítségével telepíthet egy root kezelő alkalmazást, például a SuperSU-t, majd szabadon biztosíthat root hozzáférést más alkalmazásoknak. Mindezt a rendszerbetöltő feloldása nélkül!


5. frissítés: A OnePlus válaszol

A OnePlus hivatalosan is reagált a helyzetre. Az a blog bejegyzés, a vállalat megismétli, hogy ez a kihasználás csak akkor használható, ha a támadó fizikailag hozzáfér az eszközhöz, és engedélyezte az USB hibakeresést. Az USB hibakeresés engedélyezéséhez a támadónak szüksége van az eszköz PIN-kódjára/jelszavára is. Így a gyökér hátsó ajtót egyetlen alkalmazás vagy személy sem tudja könnyen kihasználni, de a OnePlus ennek ellenére kezeli a felhasználók aggályait azáltal, hogy eltávolítja ezt a funkciót az EngineerMode alkalmazásból.