Hogyan lehet hozzáférni a rendszerhéjhoz bármely Samsung Galaxy eszközön

Gyors linkek

  • Előfeltételek
  • Hogyan lehet kihasználni bármely Samsung Galaxy eszközt a rendszerhéjhoz való hozzáféréshez
  • Igazolás
  • Következtetés

A Google minden hónap első hétfőjén közzéteszi a Android biztonsági közlemény. Felfedi az összes mérsékelt biztonsági rést az Android operációs rendszer különböző összetevői között valamint a Linux kernel és a hozzájuk tartozó javítások, amelyeket a Google vagy más harmadik fél küldött be dátum. A nagy OEM-ek, mint például a Samsung, saját véleményt alkotnak az Androidról, ezért úgy döntenek, hogy saját javításaikat és frissítéseiket is biztonsági frissítésekké teszik.

Ezzel együtt elég nehéz minden kiskapuról gondoskodni. Rengeteg támadási vektor létezik, és néha ezek alapján kialakíthatja saját kihasználási láncát egy korábban ismert sebezhetőség csak azért, mert van egy új módszere az egyik megkerülésére biztosítékok. Pontosan ez az, amit az XDA vezető tagja K0mraid3 tette egy négy éves biztonsági réssel, amely lehetővé tette számára, hogy minden Samsung Galaxy eszközön – beleértve a legújabb zászlóshajókat is – hozzáférjen a rendszerhéjhoz. Bár nem ugyanaz, mint

root jogosultságokkal rendelkezik, ez egy kellően magas helyi jogosultság-kiterjesztés.

A sérülékenység elsődleges belépési pontja a Samsung Text-To-Speech (csomagnév: com.samsung. SMT), egy előre telepített rendszeralkalmazás, amely minden Samsung Galaxy készüléken megtalálható. Az ötlet az, hogy az alkalmazás telepített verzióját egy adott sebezhető buildre állítsuk vissza (v3.0.02.2 hogy pontosak legyünk), majd rákényszerítjük egy könyvtár betöltésére, ami viszont megnyílik egy rendszerjogosultsággal (UID 1000) rendelkező shell.

Ha többet szeretne megtudni a kizsákmányolásról, feltétlenül nézze meg Az XDA vezető műszaki szerkesztője, Adam Conway magyarázója. Beszélt a K0mraid3-mal, hogy megértse ennek az exploitnak a teljes hatókörét és működését.

  1. Ismétlem, ez nem root (UID 0) hozzáférés, de a rendszerhéj-hozzáférés elég erős ahhoz, hogy egy csomó egyébként korlátozott binárist végrehajtson.
  2. A K0mraid3 proof of concept egy segítő APK-t igényel, amelyet legalább egyszer le kell futtatnia a kihasználási lánc elindítása előtt.
  3. Egy felhasználói felület, azaz a Samsung egyedi Android skin beépített energiatakarékossági rutinjai gondot okozhatnak, mivel akadályozhatják a kommunikációt a TTS alkalmazás, a helper APK és a shell között. Ezért azt javasoljuk, hogy az alkalmazások energiatakarékossági profilját előzetesen állítsa „Korlátlan” értékre.

Előfeltételek

  1. Töltse le az exploit előre lefordított buildjét a XDA fórum téma vagy az alább linkelt hivatalos GitHub-tárház: K0mraid3s System Shell Exploit
  2. Csomagolja ki valahonnan az archívumot, és meg kell találnia a Samsung Text-To-Speech APK sebezhető verzióját (samsungTTSVULN2.apk), a segédalkalmazás (Komraid3s_POC_Vx.x.apk) és egy Windows nevű futtatható fájl systemhell-vx.x.exe.
  3. Győződjön meg arról, hogy a legújabb verzió ADB telepítve van PC-re/Mac-re/Chromebookjára. Továbbá ne feledje telepítse/frissítse a Samsung USB illesztőprogramokat ha Ön Windows-felhasználó.

Hogyan lehet kihasználni bármely Samsung Galaxy eszközt a rendszerhéjhoz való hozzáféréshez

Kézi módszer

  1. Csatlakoztassa a cél Galaxy eszközt a számítógépéhez, ha az USB hibakeresés be van kapcsolva, győződjön meg arról, hogy az ADB felismeri, majd telepítse a segédalkalmazást.
    adb install Komraid3s_POC_Vx.x.apk
    • Ahogy korábban említettük, legalább egyszer nyissa meg a segédalkalmazást, mielőtt a következő lépésre lépne.
  2. Most tolja be a Samsung TTS alkalmazás sebezhető verzióját a /data/local/tmp mappába, és módosítsa az engedélyeit:
    adb push samsungTTSVULN2.apk /data/local/tmp
    adb shell chmod 777 /data/local/tmp/samsungTTSVULN2.apk
  3. Indítsa újra a készüléket. Amint a kezdőképernyőn van, futtassa a következő parancsot, hogy lecserélje a Samsung TTS alkalmazás már telepített verzióját a sebezhető verzióra:
    adb shell pm install -r -d -f -g --full --install-reason 3 --enable-rollback /data/local/tmp/samsungTTSVULN2.apk
    • Ha minden jól megy, akkor a „Siker” üzenetnek kell megjelennie a konzolon.
  4. Nyisson meg egy parancsértelmezőt a céleszközön egy másik terminálablak megnyitásával és végrehajtásával adb shell, majd futtassa a Netcat bináris fájlt, és figyelje a bejövő kapcsolatot a 9997-es porton a következő paranccsal:
    adb shell nc -lp 9997
  5. Ebben a szakaszban végre kell hajtanunk a Samsung TTS alkalmazás egy meghatározott tevékenységét, amely megnyitja számunkra a rendszerhéjat.
    • Használjon harmadik féltől származó alkalmazást, például ez hogy létrehozzon egy parancsikont a „com.samsung. SMT/.gui. DownloadList” tevékenységet.
    • Használhatja az Android saját tevékenységkezelőjét (am) is ehhez. Ebben az esetben végrehajthatja az ADB-n keresztül (adb shell am start -n com.samsung. SMT/.gui. DownloadList), vagy használjon terminálemulátor alkalmazást telefonján/táblagépén, például a Termuxon, és futtassa a következő parancsot:
      am start -n com.samsung.SMT/.gui.DownloadList
  6. Váltson vissza az első shellre, és egy új promptot kell látnia rendszer (UID 1000) jogosultsággal.

Automatizált módszer

A dolgok megkönnyítése érdekében a K0mraid3 egy könnyen használható grafikus felhasználói felületet is biztosít a legtöbb feladat automatizálásához. Ne feledje, hogy a GUI-alkalmazás csak Windows-on működik, így ha Ön Linux/macOS-felhasználó, jobb, ha ragaszkodik a kézi módszerhez.

  1. Csatlakoztassa a cél Galaxy eszközt a számítógépéhez USB hibakereséssel, győződjön meg arról, hogy az ADB felismeri, majd telepítse a segédalkalmazást.
    adb install Komraid3s_POC_Vx.x.apk
    • Ahogy korábban említettük, legalább egyszer nyissa meg a segédalkalmazást, mielőtt a következő lépésre lépne.
  2. Ha a céleszközt az ADB felismeri, futtassa a systemhell-vx.x.exe fájlt a gazdagépen.
  3. Kattintson a „START SHELL” gombra. Az alkalmazás automatikusan alacsonyabb verzióra állítja a Samsung TTS alkalmazást, és megpróbálja megnyitni a rendszerhéjat.
    • Telefonján/táblagépén megjelenhet a TTS alkalmazás, amely hangadatok letöltésére kéri. Nincs szükség kölcsönhatásba ezekkel a lehetőségekkel, mivel semmi közük a kihasználáshoz.
    • Abban az esetben, ha az alkalmazás lefagy vagy egy idő után nem nyitja meg a shell ablakot, zárja be, indítsa újra a cél Galaxy eszközt, és kezdje elölről.
    • A Galaxy Store alkalmazás képes automatikusan frissíteni és/vagy alaphelyzetbe állítani a TTS alkalmazás energiatakarékossági profilját a háttérben, ezért mindenképpen ellenőrizze, mielőtt a folyamatot elölről kezdi.

Igazolás

Miután megszerezte a shell-hozzáférést, az alábbi parancsok egyikével ellenőrizheti a jogosultsági szintet:

  • whoami
    • A kimenet legyen „rendszer”
  • id -u
    • A kimenetnek „1000”-nek kell lennie

Következtetés

Az Android-eszközök root hozzáférésének tipikus módja a rendszerbetöltő feloldása, amely lehetővé teszi a harmadik féltől származó binárisok indítását. Mivel az Android biztonsági modellje alapvetően szétesik a root segítségével, ez a lépés szándékosan letiltja az egyik kulcsfontosságú biztonsági funkciót az eszközön, amely Ez az oka annak, hogy a felhasználónak kifejezetten engedélyeznie kell, hogy ez megtörténjen úgy, hogy általában engedélyez egy kapcsolót a Fejlesztői beállításokban, majd ad ki egy feloldó parancsot a rendszerbetöltő. A rendszerbetöltő feloldása után a felhasználó bevezethet egy szuperfelhasználó bináris fájlt a rendszerbe, valamint egy szuperfelhasználó-kezelő alkalmazást (például a Magisk), hogy szabályozza, mely folyamatok férhetnek hozzá a root-hoz.

A fent említett rendszerhéj-kihasználással azonban a felhasználónak nem kell feloldania a rendszerbetöltőt, hogy kiterjesztett jogosultságot kapjon. Bár messze nem root, a "rendszer" felhasználó eléggé képes hozzáférni számos alacsony szintű partícióhoz (pl. /efs néven), indítson el különféle szerviz- és hibakereső eszközöket, és módosítson számos védett tulajdonságértéket – mindezt anélkül, hogy kioldódna. Knox. Ezek a példák csak néhány módot érintenek; egy rosszindulatú szereplő kombinálhatja ezt más sebezhető pontokkal, és aljasabb cselekedetekkel állhat elő.

Várnunk kell, és meglátjuk, hogyan oldja meg a Google és a Samsung a forgatókönyvet. Akárhogy is, egyelőre valószínűleg le kell tiltania vagy el kell távolítania a Samsung Text-To-Speech alkalmazást.