hacktricks/mobile-pentesting/android-app-pentesting/tapjacking.md

96 lines
6.9 KiB
Markdown
Raw Normal View History

# Tapjacking
<details>
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2024-02-11 02:07:06 +00:00
Ander maniere om HackTricks te ondersteun:
2024-01-03 11:43:38 +01:00
* As jy jou **maatskappy geadverteer wil sien in HackTricks** of **HackTricks in PDF wil aflaai** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
2024-02-11 02:07:06 +00:00
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS Familie**](https://opensea.io/collection/the-peass-family), ons versameling van eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
2024-02-11 02:07:06 +00:00
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>
<figure><img src="https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt=""><figcaption></figcaption></figure>
{% embed url="https://websec.nl/" %}
2024-02-11 02:07:06 +00:00
## **Basiese Inligting**
**Tapjacking** is 'n aanval waar 'n **boosaardige aansoek** bekendgestel word en **bo-op 'n slagoffer-aansoek posisioneer**. Sodra dit die slagoffer-aansoek sigbaar verduister, is sy gebruikerskoppelvlak ontwerp op so 'n manier dat dit die gebruiker mislei om daarmee te interaksieer, terwyl dit die interaksie na die slagoffer-aansoek deurgee.\
In werklikheid **verblind dit die gebruiker om te weet dat hulle eintlik handelinge op die slagoffer-aansoek uitvoer**.
### Opname
Om programme wat vatbaar is vir hierdie aanval op te spoor, moet jy soek na **uitgevoerde aktiwiteite** in die Android-manifes (let daarop dat 'n aktiwiteit met 'n intent-filter outomaties uitgevoer word per verstek). Sodra jy die uitgevoerde aktiwiteite gevind het, **kontroleer of hulle enige toestemming benodig**. Dit is omdat die **boosaardige aansoek ook daardie toestemming nodig sal hê**.
2024-02-11 02:07:06 +00:00
### Beskerming
2024-02-11 02:07:06 +00:00
#### Android 12 (API 31,32) en hoër
[**Volgens hierdie bron**](https://www.geeksforgeeks.org/tapjacking-in-android/)**,** word tapjacking-aanvalle outomaties voorkom deur Android van Android 12 (API 31 & 30) en hoër. Dus, selfs as die aansoek vatbaar is, sal jy dit **nie kan uitbuit nie**.
#### `filterTouchesWhenObscured`
As **`android:filterTouchesWhenObscured`** op **`true`** ingestel is, sal die `View` nie aanrakings ontvang wanneer die venster van die aansig deur 'n ander sigbare venster verduister word nie.
#### **`setFilterTouchesWhenObscured`**
2024-02-11 02:07:06 +00:00
Die eienskap **`setFilterTouchesWhenObscured`** wat op true ingestel is, kan ook die uitbuiting van hierdie kwesbaarheid voorkom as die Android-weergawe laer is.\
Indien op **`true`** ingestel, kan byvoorbeeld 'n knoppie outomaties **deaktiveer word as dit verduister word**:
2024-02-08 04:08:28 +01:00
```xml
<Button android:text="Button"
android:id="@+id/button1"
android:layout_width="wrap_content"
2024-02-11 02:07:06 +00:00
android:layout_height="wrap_content"
android:filterTouchesWhenObscured="true">
</Button>
```
2024-02-11 02:07:06 +00:00
## Uitbuiting
### Tapjacking-ExportedActivity
Die mees **onlangse Android-toepassing** wat 'n Tapjacking-aanval uitvoer (+ aanroeping voor 'n uitgevoerde aktiwiteit van die aangevalle toepassing) kan gevind word op: [**https://github.com/carlospolop/Tapjacking-ExportedActivity**](https://github.com/carlospolop/Tapjacking-ExportedActivity).
2024-02-11 02:07:06 +00:00
Volg die **README-instruksies om dit te gebruik**.
### FloatingWindowApp
'n Voorbeeldprojek wat **FloatingWindowApp** implementeer, wat gebruik kan word om bo-op ander aktiwiteite te plaas vir 'n kliek-aanval, kan gevind word in [**FloatingWindowApp**](https://github.com/aminography/FloatingWindowApp) (bietjie oud, sterkte met die bou van die apk).
### Qark
{% hint style="danger" %}
Dit lyk asof hierdie projek nou nie meer onderhou word nie en hierdie funksionaliteit werk nie meer behoorlik nie
{% endhint %}
Jy kan [**qark**](https://github.com/linkedin/qark) gebruik met die `--exploit-apk` --sdk-path `/Users/username/Library/Android/sdk` parameters om 'n skadelike aansoek te skep om vir moontlike **Tapjacking** kwesbaarhede te toets.
Die beperking is relatief eenvoudig aangesien die ontwikkelaar kan kies om nie aanrakinggebeure te ontvang wanneer 'n aansig bedek word deur 'n ander. Gebruik die [Android-ontwikkelaarsverwysing](https://developer.android.com/reference/android/view/View#security):
> Soms is dit noodsaaklik dat 'n aansoek kan verifieer dat 'n aksie met die volle kennis en toestemming van die gebruiker uitgevoer word, soos die toestaan van 'n toestemmingversoek, 'n aankoop doen of op 'n advertensie klik. Ongelukkig kan 'n skadelike aansoek probeer om die gebruiker te mislei om hierdie aksies uit te voer, sonder om bewus te wees, deur die beoogde doel van die aansig te verberg. As 'n remedie bied die raamwerk 'n aanrakingsfiltermeganisme wat gebruik kan word om die sekuriteit van aansigte wat toegang tot sensitiewe funksionaliteit bied, te verbeter.
>
> Om aanrakingsfiltering te aktiveer, roep [`setFilterTouchesWhenObscured(boolean)`](https://developer.android.com/reference/android/view/View#setFilterTouchesWhenObscured%28boolean%29) aan of stel die android:filterTouchesWhenObscured uitlegkenmerk in op waar. Wanneer dit geaktiveer is, sal die raamwerk aanrakings verwerp wat ontvang word wanneer die aansig se venster deur 'n ander sigbare venster bedek word. As gevolg hiervan sal die aansig nie aanrakings ontvang wanneer 'n toebroodjie, dialoog of ander venster bo die aansig se venster verskyn nie.
<figure><img src="https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt=""><figcaption></figcaption></figure>
{% embed url="https://websec.nl/" %}
<details>
2024-02-11 02:07:06 +00:00
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2024-02-11 02:07:06 +00:00
Ander maniere om HackTricks te ondersteun:
2024-01-03 11:43:38 +01:00
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat** Kyk na die [**INSKRYWINGSPLANNE**](https://github.com/sponsors/carlospolop)!
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Ontdek [**Die PEASS-familie**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family)
2024-02-11 02:07:06 +00:00
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Deel jou haktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
</details>