TapTrap: Új generációs tapjacking technika az Android engedélyrendszerének kijátszására

A mobilalkalmazások biztonsága évek óta kiemelt figyelmet kap, különösen az Android platformon, ahol a nyílt rendszer lehetőséget ad innovatív, de egyben új támadási módszerek kialakítására. A közelmúltban a TU Wien és a Bayreuthi Egyetem biztonsági kutatói egy újfajta támadási módszert dolgoztak ki, amelyet TapTrap névre kereszteltek. Ez a technika képes kijátszani az Android engedélykérés rendszerét anélkül, hogy a támadó alkalmazás bármiféle jogosultsággal rendelkezne.

Mi az a TapTrap?

A TapTrap egy olyan új típusú tapjacking (érintésátverési) támadás, amely a hagyományos átfedésen alapúló módszerektől eltérően a felhasználói felület animációit használja ki a megtévesztéshez. A módszer lehetővé teszi, hogy egy ártalmatlannak tűnő alkalmazás úgy jelenítsen meg kritikus rendszerképernyőket – például engedélykéréseket vagy beállítási opciókat –, hogy azok szinte láthatatlanok maradnak a felhasználó számára.

Az áldozat közben abban a hitben van, hogy egy normál alkalmazás kezelőfelületével lép interakcióba, miközben valójában egy átlátszó, de aktív rendszerképernyőt használ. Ez pedig súlyos biztonsági következményekkel járhat.

A támadás technikai háttere

A támadás alapja az Android startActivity() metódusának és az egyedi animációk kezelésének kombinálása. A támadó alkalmazás egy másik – ártalmatlannak tűnő – alkalmazáson keresztül indít el egy érzékeny rendszerképernyőt (például engedélykérő ablakot), melyhez szinte teljesen átlátszó animációt rendel.

A kutatók szerint a kulcs az, hogy az animáció kezdő- és befejező átlátszósága (alpha értéke) nagyon alacsony – például 0,01 – legyen. Így a megjelenített ablak szinte teljesen láthatatlan marad, miközben a rendszer mégis érzékeli az érintéseket.

További technikai fogás lehet az úgynevezett scale (nagyítási) animáció használata, amellyel egy adott UI elem – például az “Engedélyezés” gomb – az egész képernyőt betöltheti. Ez növeli annak esélyét, hogy a felhasználó véletlenül arra a területre bök, ezzel pedig nemkívánatos jogosultságokat ad az alkalmazásnak.

Hogyan zajlik a TapTrap támadás?

  1. Egy rosszindulatú alkalmazás telepítésre kerül az eszközre.
  2. Ez az app egy másik, ártalmatlannak tűnő alkalmazáson keresztül elindít egy rendszer-aktivitást (pl. engedélykérés).
  3. Az indítás során olyan animációs paramétereket használ, amelyek szinte teljesen átláthatóvá teszik a rendszerablakot.
  4. A felhasználó közben azt hiszi, hogy az eredeti alkalmazás felületén lép interakcióba, de valójában a láthatatlan engedélykérő képernyő gombjait nyomja meg.
  5. Az Android rendszere érzékeli az érintéseket – például az “Engedélyezés” vagy “Hozzáférés engedélyezése” gombok megnyomását –,és végrehajtja azokat a háttérben, a felhasználó tudta nélkül

Sérülékenységi vizsgálat

A kutatók mintegy 100 000 alkalmazást elemeztek a Google Play áruházból, és megállapították, hogy ezek 76%-a elméletileg sebezhető a TapTrap technikával szemben. A sérülékeny alkalmazások az alábbi jellemzőkkel bírtak:

  • Olyan aktivitásokat tartalmaznak, amelyeket más alkalmazás is el tud indítani.
  • Ugyanabban a “task”-ban futnak, mint a hívó alkalmazás.
  • Nem módosítják az alapértelmezett animációkat.
  • Nem várják meg az animációk befejeződését, mielőtt feldolgozzák a felhasználói interakciókat.

Ez arra utal, hogy számos, önmagában ártalmatlan alkalmazás akaratlanul is lehetőséget teremthet a TapTrap típusú támadásokra.

Android verziók és védekezési lehetőségek

A TapTrap támadás sikeresen működött az Android 15 és a legújabb Android 16 verziókon is. A kutatók megerősítették, hogy egy Google Pixel 8a készüléken Android 16 alatt is ki tudták játszani az engedélyezési rendszert.

Az Android jelenlegi beállításaiban az animációk alapértelmezetten engedélyezve vannak, és csak a fejlesztői vagy akadálymentesítési opciók között kapcsolhatók ki – ezzel azonban a felhasználók túlnyomó többsége nem él.

Egyedül a GrapheneOS nevű, biztonságra fókuszáló alternatív mobil operációs rendszer jelentette be, hogy egy jövőbeli kiadásukban orvosolni fogják a problémát.

A Google hivatalosan is reagált az esetre, és közölte, hogy a TapTrap típusú sebezhetőséget egy későbbi Android frissítés során fogják orvosolni. Addig is figyelemmel kísérik a Play Áruház irányelveinek megsértését, és azokat az alkalmazásokat, amelyek visszaélnek ezzel a technikával, eltávolítják.

Konklúzió

A TapTrap technika ismét rávilágít arra, hogy az operációs rendszerek grafikai és interakciós elemei is jelenthetnek támadási felületet. Ez a módszer nem igényel semmilyen külön engedélyt, mégis lehetőséget biztosít a támadóknak arra, hogy érzékeny adatokat szerezzenek meg, vagy visszafordíthatatlan műveleteket hajtsanak végre a felhasználó tudta nélkül.

A probléma megoldása nem csupán a fejlesztők, hanem a rendszertervezők felelőssége is. Míg az animációk és vizuális effektek fontosak a felhasználói élmény szempontjából, biztonsági szempontból kontrollált és tudatos kezelésük elengedhetetlen.

Javasolt védekezési stratégiák

  • Fejlesztőknek: tiltsák le vagy szabják testre az animációkat az érzékeny képernyők megjelenítésekor.
  • Felhasználóknak: kapcsolják ki az animációkat a fejlesztői opciókban, ha fokozott biztonságra van szükségük.
  • Rendszerszinten: az Android fejlesztői vezessenek be kötelező késleltetést az érintési események feldolgozása előtt, amíg az animációk le nem futnak.

(bleepingcomputer.com)