5.9 KiB
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:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili da preuzmete HackTricks u PDF formatu proverite PLANOVE ZA PRIJAVU!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitteru 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
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 poreda aktivnosti na osnovu toga kada su otvorene, pri čemu se najnovija aktivnost prikazuje na vrhu kao aktivnost u prvom planu. U svakom trenutku, samo je ova aktivnost 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 navigacije zadataka.
Napad na zadatke
Pregled zadatka i režima pokretanja
U Android aplikacijama, zadatak pripadnosti određuje preferirani zadatak aktivnosti, obično se podudarajući sa imenom paketa aplikacije. Ova postavka je ključna za izradu koncepta aplikacije (PoC) 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 pripadnosti. Eksploatacija se oslanja na sposobnost aplikacije napadača da imitira zadatak pripadnosti ciljne aplikacije, zavaravajući Android sistem da pokrene aplikaciju napadača umesto ciljane.
Detaljni koraci napada
- Instalacija zlonamerne aplikacije: Žrtva instalira aplikaciju napadača na svom uređaju.
- Početna aktivacija: Žrtva prvo otvara zlonamernu aplikaciju, pripremajući uređaj za napad.
- Pokušaj pokretanja ciljane aplikacije: Žrtva pokušava da otvori ciljanu aplikaciju.
- Izvršenje preuzimanja kontrole: Zbog podudaranja zadatka pripadnosti, zlonamerna aplikacija se pokreće umesto ciljane aplikacije.
- 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 od preuzimanja kontrole nad zadacima.
Reference
- https://blog.dixitaditya.com/android-task-hijacking/
- https://blog.takemyhand.xyz/2021/02/android-task-hijacking-with.html
Try Hard Security Group
{% embed url="https://discord.gg/tryhardsecurity" %}
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili da preuzmete HackTricks u PDF formatu proverite PLANOVE ZA PRIJAVU!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitteru 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.