hacktricks/mobile-pentesting/android-app-pentesting/android-task-hijacking.md

5.8 KiB

Kuteka Kazi ya Android

Jifunze kuteka AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Kikundi cha Usalama cha Try Hard

{% embed url="https://discord.gg/tryhardsecurity" %}


Kazi, Back Stack na Shughuli za Mbele

Katika Android, kazi ni msururu wa shughuli ambazo watumiaji wanashirikiana nazo kumaliza kazi maalum, zilizoandaliwa ndani ya back stack. Msururu huu unapanga shughuli kulingana na wakati zilipoanzishwa, na shughuli ya hivi karibuni zaidi ikiwa juu kama shughuli ya mbele. Wakati wowote, shughuli hii pekee inaonekana kwenye skrini, ikifanya sehemu ya kazi ya mbele.

Hapa kuna maelezo mafupi ya mabadiliko ya shughuli:

  • Shughuli 1 inaanza kama shughuli pekee mbele.
  • Kuzindua Shughuli 2 kunapeleka Shughuli 1 kwenye back stack, ikileta Shughuli 2 mbele.
  • Kuanzisha Shughuli 3 kunahamisha Shughuli 1 na Shughuli 2 nyuma zaidi kwenye stack, na Shughuli 3 sasa mbele.
  • Kufunga Shughuli 3 kunarudisha Shughuli 2 mbele, ikionyesha mfumo wa urambazaji wa kazi wa Android.

https://developer.android.com/images/fundamentals/diagram_backstack.png

Shambulio la Urafiki wa Kazi

Maelezo ya Urafiki wa Kazi na Modes za Kuzindua

Katika programu za Android, urafiki wa kazi unabainisha kazi inayopendelewa ya shughuli, kwa kawaida ikilingana na jina la pakiti ya programu. Hii ni muhimu katika kutengeneza programu ya uthibitisho wa dhana (PoC) kwa kudhihirisha shambulio.

Modes za Kuzindua

Sifa ya launchMode inaelekeza namna ya kushughulikia mifano ya shughuli ndani ya kazi. Mode ya singleTask ni muhimu kwa shambulio hili, ikidhibiti hali tatu kulingana na mifano ya shughuli iliyopo na mechi za urafiki wa kazi. Utekelezaji unategemea uwezo wa programu ya muhusika kufanana na urafiki wa kazi wa programu ya lengo, kudanganya mfumo wa Android kuzindua programu ya muhusika badala ya lengo lililokusudiwa.

Hatua za Shambulio kwa Undani

  1. Usakinishaji wa Programu ya Uovu: Mfanyikazi anasakinisha programu ya muhusika kwenye kifaa chake.
  2. Uanzishaji wa Awali: Mfanyikazi kwanza anafungua programu ya muovu, kuweka kifaa tayari kwa shambulio.
  3. Jaribio la Kuzindua Programu ya Lengo: Mfanyikazi anajaribu kufungua programu ya lengo.
  4. Utekelezaji wa Kuteka: Kutokana na urafiki wa kazi unaofanana, programu ya muovu inazinduliwa badala ya programu ya lengo.
  5. Udanganyifu: Programu ya muovu inaonyesha skrini bandia ya kuingia inayofanana na programu ya lengo, kuwadanganya watumiaji kuingiza habari nyeti.

Kwa utekelezaji wa vitendo wa shambulio hili, tazama hazina ya GitHub ya Task Hijacking Strandhogg: Task Hijacking Strandhogg.

Hatua za Kuzuia

Ili kuzuia mashambulio kama haya, waendelezaji wanaweza kuweka taskAffinity kuwa herufi tupu na kuchagua mode ya singleInstance ya kuzindua, kuhakikisha kufungwa kwa programu yao kutoka kwa nyingine. Kubinafsisha kazi ya onBackPressed() hutoa ulinzi zaidi dhidi ya kuteka kazi.

Vyanzo

Kikundi cha Usalama cha Try Hard

{% embed url="https://discord.gg/tryhardsecurity" %}

Jifunze kuteka AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks: