Android Task Hijacking

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Try Hard Security Group


Zadatak, Back Stack i Aktivnosti u prvom planu

U Androidu, zadatak je suštinski skup aktivnosti sa kojima korisnici interaguju kako bi završili određeni posao, organizovan unutar back stack-a. Ovaj stek naručuje aktivnosti na osnovu toga kada su otvorene, pri čemu se najnovija aktivnost prikazuje na vrhu kao aktivnost u prvom planu. U svakom trenutku, samo ova aktivnost je vidljiva na ekranu, čineći je delom zadatka u prvom planu.

Evo brzog pregleda tranzicija aktivnosti:

  • Aktivnost 1 počinje kao jedina aktivnost u prvom planu.

  • Pokretanje Aktivnosti 2 gura Aktivnost 1 u back stack, dovodeći Aktivnost 2 u prvi plan.

  • Pokretanje Aktivnosti 3 pomera Aktivnost 1 i Aktivnost 2 dalje u stek, sa Aktivnošću 3 sada u prvom planu.

  • Zatvaranje Aktivnosti 3 vraća Aktivnost 2 u prvi plan, prikazujući Android-ov mehanizam za navigaciju kroz zadatke.

Napad na zadatke povezanosti

Pregled zadatka povezanosti i režima pokretanja

U Android aplikacijama, zadatak povezanosti određuje preferirani zadatak aktivnosti, obično se podudarajući sa imenom paketa aplikacije. Ova postavka je ključna za izradu aplikacije za demonstraciju napada.

Režimi pokretanja

Atribut launchMode usmerava rukovanje instancama aktivnosti unutar zadataka. Režim singleTask je ključan za ovaj napad, diktirajući tri scenarija na osnovu postojećih instanci aktivnosti i podudaranja zadataka povezanosti. Eksploatacija se oslanja na sposobnost aplikacije napadača da imitira zadatak povezanosti ciljne aplikacije, zavaravajući Android sistem da pokrene aplikaciju napadača umesto ciljane aplikacije.

Detaljni koraci napada

  1. Instalacija zlonamerne aplikacije: Žrtva instalira aplikaciju napadača na svoj uređaj.

  2. Početna aktivacija: Žrtva prvo otvara zlonamernu aplikaciju, pripremajući uređaj za napad.

  3. Pokušaj pokretanja ciljane aplikacije: Žrtva pokušava da otvori ciljanu aplikaciju.

  4. Izvršenje otmice: Zbog podudaranja zadatka povezanosti, zlonamerna aplikacija se pokreće umesto ciljane aplikacije.

  5. Prevara: Zlonamerna aplikacija prikazuje lažni ekran za prijavu koji podseća na ciljanu aplikaciju, prevareći korisnika da unese osetljive informacije.

Za praktičnu implementaciju ovog napada, pogledajte repozitorijum Task Hijacking Strandhogg na GitHub-u: Task Hijacking Strandhogg.

Mere prevencije

Da bi se sprečili ovakvi napadi, programeri mogu postaviti taskAffinity na prazan string i odabrati režim pokretanja singleInstance, obezbeđujući izolaciju njihove aplikacije od drugih. Prilagođavanje funkcije onBackPressed() nudi dodatnu zaštitu protiv otmice zadataka.

Reference

Try Hard Security Group

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated