Itthon Securitywatch A kínai kutató új rejtett trójai android támadást jelentett

A kínai kutató új rejtett trójai android támadást jelentett

Anonim

Nevetségesen egyszerű az, hogy rosszindulatú kódot adjunk egy Android-alkalmazásnak. A széles körben elérhető eszközök használatával bárki dekonstruálhatja az APK fájlt a forráskódra, hozzáadhat egy rosszindulatú modult, néhány engedélyt kijavíthat, és rekonstruálhat egy új trójai programot, amely ugyanúgy néz ki, mint a régi. Ennek a chicanerynek a felismerése azonban egyszerűen ellenőrzi az alkalmazás digitális aláírását. A múlt héten a BlueBox Security kutatói beszámolták az úgynevezett „mesterkulcs” sérülékenységről - az alkalmazás trojanizálásának technikájáról a digitális aláírás megváltoztatása nélkül. Ezen a héten egy kínai kutató jelent meg egy újabb módszert a trójai kód elrejtésére.

A digitális aláírás nem törött

A dokumentum vagy fájl digitális aláírásának lényege annak bizonyítása, hogy a fájl nem módosult. A folyamat a nyilvános kulcsú kriptográfia egyik formáját használja. A fájlt digitálisan aláírja a magánkulccsal titkosítva. Az a tény, hogy a titkosított fájl dekódolható a nyilvános kulcs használatával, azt igazolja, hogy nem történt megsértés. Ha a BlueBox megtalálta volna a módját egy fájl tényleges módosítására a digitális aláírás megváltoztatása nélkül, ez megdöbbentő csapás lett volna a teljes kriptoválás-ipar számára. De nem tették meg.

A BlueBox a Black Hat konferencián néhány hét múlva beszámol kutatásainak teljes részleteiről. A ViaForensics kutatója, Pau Oliva Fora azonban a koncepciókód igazolását tett közzé, amely szemlélteti az alkalmazott megközelítést.

Igazából nagyon, nagyon egyszerű. Az APK fájlok a széles körben elterjedt ZIP archiváló algoritmus verziójával vannak csomagolva. A legtöbb ZIP-megvalósítás nem engedélyezi két azonos nevű fájlt egy archívumban, de maga az algoritmus nem tiltja ezt a lehetőséget. Az alkalmazás digitális aláírásának ellenőrzésekor az Android OS megvizsgálja az első megfelelő fájlt, de a fájl tényleges végrehajtása és indításakor megragadja az utolsó fájlt. Az alkalmazás Trojanizálásához tehát csak annyit kell tennie, hogy becsavarja a rosszindulatú kódját egy olyan alkalmazás segítségével, amely már létezik az alkalmazáson belül. A Fora demonstrációja csak néhány tucat Java-kód sor.

Egy másik strukturális támadás

Az Android Security Squad néven blogozó kínai kutató érdekesnek találta a demonstrációt, és más lehetőségeket keresett a hitelesítési folyamat aláásására. A Google által lefordított bejegyzés olvasása kissé nehéz, de úgy tűnik, hogy a támadás a Computer Science 101 szintű koncepcióra támaszkodik.

A számítógépes programok rögzített méretű bitekben tárolják a számláló számokat. Például nyolc bittel 0 és 255 közötti számokat reprezentálhat. Ha negatív számokat kell képviselni, a régóta fennálló konvenció az, hogy a baloldali bit negatív számot jelöl. Ezután nyolc bittel ábrázolhatja a -128 és 127 közötti számokat is. Az 11111111 bináris szám 255-t vagy -1-t jelent, attól függően, hogy aláíratlan vagy aláírt számként szánták-e.

Az Android Security Squad az APK fájl fejléc formátumánál járt, és olyan adatmezőt talált, amely feltételezhetően pozitív eltolás, de amelyet aláírt egész számként tárolnak. Ha ezt a mezőt egy meghatározott negatív értékre kényszeríti, az APK betöltő a rosszindulatú kód végrehajtására vezet, nem pedig a már ellenőrzött digitálisan aláírt kód helyett. OK, ez egy kicsit összetettebb, de nagyjából így működik.

Ragaszkodjon a Google Playhez

Ezeknek a hackeknek egyike sem akadályozza meg az Android digitális aláírási mechanizmust. Inkább mindkettőnk kihasználja az APK struktúrájának fordulatait, hogy a digitális aláírást irrelevánssá tegyék. Ezenkívül egyikük sem teszi lehetővé a trójai programot, hogy bejuthasson a Google elemzésébe. A Google kifejezetten frissítette a Google Play szolgáltatást, hogy a „mesterkulcs” támadással kiszűrje a trójai programokt; még a lépés nélkül is a szokásos biztonság szinte biztosan blokkolja a trójai programok bármelyik típusát.

A lecke világos. Mindig szerezzen alkalmazásokat legitim forrásból, mindig ellenőrizze, hogy a fejlesztő neve érvényes-e, és konfigurálja a telefonját úgy, hogy az nem engedélyezi az alkalmazások telepítését "ismeretlen forrásokból". Vigyázzon arra, hogy az alkalmazás mely engedélyeket kéri, és készen áll a gyanús megjelenésű telepítés megszakítására. Ha a szolgáltatója Android-frissítést kínál, mindig telepítse. Ez csak a józan ész!

A kínai kutató új rejtett trójai android támadást jelentett