Tapjacking
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Fpentest.eu%2FRENDER_WebSec_10fps_21sec_9MB_29042024.gif&width=768&dpr=4&quality=100&sign=bc0743d1&sv=1)
Basic Information
Tapjacking ni shambulio ambapo programu mbaya inazinduliwa na kujiweka juu ya programu ya mwathirika. Mara inapoifunika kwa wazi programu ya mwathirika, kiolesura chake cha mtumiaji kimeundwa kwa njia ya kudanganya mtumiaji kuingiliana nayo, wakati inapitisha mwingiliano huo kwa programu ya mwathirika. Kwa hivyo, inafanya mtumiaji kuwa kipofu kwa kujua kwamba kwa kweli wanatekeleza vitendo kwenye programu ya mwathirika.
Detection
Ili kugundua programu zinazoweza kuathiriwa na shambulio hili unapaswa kutafuta shughuli zilizotolewa katika android manifest (kumbuka kwamba shughuli yenye intent-filter inasafirishwa kiotomatiki kwa default). Mara umepata shughuli zilizotolewa, angalia kama zinahitaji ruhusa yoyote. Hii ni kwa sababu programu mbaya itahitaji ruhusa hiyo pia.
Protection
Android 12 (API 31,32) na juu
Kulingana na chanzo hiki, mashambulizi ya tapjacking yanazuia kiotomatiki na Android kuanzia Android 12 (API 31 & 30) na juu. Hivyo, hata kama programu ina udhaifu huwezi kuweza kuitumia.
filterTouchesWhenObscured
filterTouchesWhenObscured
Ikiwa android:filterTouchesWhenObscured
imewekwa kuwa true
, View
haitapokea kugusa wakati dirisha la mtazamo linapofunikwa na dirisha lingine linaloonekana.
setFilterTouchesWhenObscured
setFilterTouchesWhenObscured
Sifa setFilterTouchesWhenObscured
iliyowekwa kuwa kweli pia inaweza kuzuia matumizi ya udhaifu huu ikiwa toleo la Android ni la chini.
Ikiwa imewekwa kuwa true
, kwa mfano, kitufe kinaweza kuondolewa kiotomatiki ikiwa kimefunikwa:
Utekelezaji
Tapjacking-ExportedActivity
Programu ya Android ya hivi karibuni inayofanya shambulio la Tapjacking (+ kuanzisha kabla ya shughuli iliyosafirishwa ya programu iliyoathiriwa) inaweza kupatikana katika: https://github.com/carlospolop/Tapjacking-ExportedActivity.
Fuata maagizo ya README ili kuitumia.
FloatingWindowApp
Mradi wa mfano unaotekeleza FloatingWindowApp, ambayo inaweza kutumika kuweka juu ya shughuli nyingine ili kufanya shambulio la clickjacking, unaweza kupatikana katika FloatingWindowApp (ni ya zamani kidogo, bahati njema katika kujenga apk).
Qark
Inaonekana mradi huu sasa hauhifadhiwi na kazi hii haifanyi kazi vizuri tena
Unaweza kutumia qark na vigezo --exploit-apk
--sdk-path /Users/username/Library/Android/sdk
ili kuunda programu mbaya ya kujaribu uwezekano wa Tapjacking udhaifu.\
Kuzuia ni rahisi kwa sababu mtengenezaji anaweza kuchagua kutopokea matukio ya kugusa wakati mtazamo umefunikwa na mwingine. Kutumia Marejeo ya Wataalamu wa Android:
Wakati mwingine ni muhimu kwa programu kuweza kuthibitisha kwamba kitendo kinafanywa kwa maarifa na idhini kamili ya mtumiaji, kama vile kutoa ombi la ruhusa, kufanya ununuzi au kubonyeza tangazo. Kwa bahati mbaya, programu mbaya inaweza kujaribu kumdanganya mtumiaji kufanya vitendo hivi, bila kujua, kwa kuficha kusudi lililokusudiwa la mtazamo. Kama suluhisho, mfumo unatoa mekanizma ya kuchuja kugusa ambayo inaweza kutumika kuboresha usalama wa mitazamo inayotoa ufikiaji wa kazi nyeti.
Ili kuwezesha kuchuja kugusa, piga
setFilterTouchesWhenObscured(boolean)
au weka sifa ya mpangilio ya android:filterTouchesWhenObscured kuwa kweli. Wakati imewezeshwa, mfumo utatupa kugusa ambazo zinapokelewa kila wakati dirisha la mtazamo linapofunikwa na dirisha lingine linaloonekana. Kama matokeo, mtazamo hautapokea kugusa kila wakati toast, mazungumzo au dirisha lingine linapojitokeza juu ya dirisha la mtazamo.
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Fpentest.eu%2FRENDER_WebSec_10fps_21sec_9MB_29042024.gif&width=768&dpr=4&quality=100&sign=bc0743d1&sv=1)
Last updated