|
29 | 29 | <!-- Older builds also asked for SMS permissions --> |
30 | 30 | ``` |
31 | 31 | * Recent variants **remove `<uses-permission>` for SMS from `AndroidManifest.xml`** but leave the Java/Kotlin code path that reads SMS through reflection ⇒ lowers static score while still functional on devices that grant the permission via `AppOps` abuse or old targets. |
32 | | -5. **Facade UI & Background Collection** |
| 32 | + |
| 33 | +5. **Android 13+ Restricted Settings & Dropper Bypass (SecuriDropper‑style)** |
| 34 | + * Android 13 introduced **Restricted settings** for sideloaded apps: Accessibility and Notification Listener toggles are greyed out until the user explicitly allows restricted settings in **App info**. |
| 35 | + * Phishing pages and droppers now ship step‑by‑step UI instructions to **allow restricted settings** for the sideloaded app and then enable Accessibility/Notification access. |
| 36 | + * A newer bypass is to install the payload via a **session‑based PackageInstaller flow** (the same method app stores use). Android treats the app as store‑installed, so Restricted settings no longer blocks Accessibility. |
| 37 | + * Triage hint: in a dropper, grep for `PackageInstaller.createSession/openSession` plus code that immediately navigates the victim to `ACTION_ACCESSIBILITY_SETTINGS` or `ACTION_NOTIFICATION_LISTENER_SETTINGS`. |
| 38 | + |
| 39 | +6. **Facade UI & Background Collection** |
33 | 40 | * App shows harmless views (SMS viewer, gallery picker) implemented locally. |
34 | 41 | * Meanwhile it exfiltrates: |
35 | 42 | - IMEI / IMSI, phone number |
36 | 43 | - Full `ContactsContract` dump (JSON array) |
37 | 44 | - JPEG/PNG from `/sdcard/DCIM` compressed with [Luban](https://github.com/Curzibn/Luban) to reduce size |
38 | 45 | - Optional SMS content (`content://sms`) |
39 | 46 | Payloads are **batch-zipped** and sent via `HTTP POST /upload.php`. |
40 | | -6. **iOS Delivery Technique** |
| 47 | +7. **iOS Delivery Technique** |
41 | 48 | * A single **mobile-configuration profile** can request `PayloadType=com.apple.sharedlicenses`, `com.apple.managedConfiguration` etc. to enroll the device in “MDM”-like supervision. |
42 | 49 | * Social-engineering instructions: |
43 | 50 | 1. Open Settings ➜ *Profile downloaded*. |
44 | 51 | 2. Tap *Install* three times (screenshots on the phishing page). |
45 | 52 | 3. Trust the unsigned profile ➜ attacker gains *Contacts* & *Photo* entitlement without App Store review. |
46 | | -7. **Network Layer** |
| 53 | +8. **iOS Web Clip Payload (phishing app icon)** |
| 54 | + * `com.apple.webClip.managed` payloads can **pin a phishing URL to the Home Screen** with a branded icon/label. |
| 55 | + * Web Clips can run **full‑screen** (hides the browser UI) and be marked **non‑removable**, forcing the victim to delete the profile to remove the icon. |
| 56 | +9. **Network Layer** |
47 | 57 | * Plain HTTP, often on port 80 with HOST header like `api.<phishingdomain>.com`. |
48 | 58 | * `User-Agent: Dalvik/2.1.0 (Linux; U; Android 13; Pixel 6 Build/TQ3A.230805.001)` (no TLS → easy to spot). |
49 | 59 |
|
@@ -498,5 +508,7 @@ Operator control primitives often seen: `BACK`, `HOME`, `RECENTS`, `CLICKTXT`/`C |
498 | 508 | - [Banker Trojan Targeting Indonesian and Vietnamese Android Users (DomainTools)](https://dti.domaintools.com/banker-trojan-targeting-indonesian-and-vietnamese-android-users/) |
499 | 509 | - [DomainTools SecuritySnacks – ID/VN Banker Trojans (IOCs)](https://github.com/DomainTools/SecuritySnacks/blob/main/2025/BankerTrojan-ID-VN) |
500 | 510 | - [Socket.IO](https://socket.io) |
| 511 | +- [Bypassing Android 13 Restrictions with SecuriDropper (ThreatFabric)](https://www.threatfabric.com/blogs/droppers-bypassing-android-13-restrictions) |
| 512 | +- [Web Clips payload settings for Apple devices](https://support.apple.com/guide/deployment/web-clips-payload-settings-depbc7c7808/web) |
501 | 513 |
|
502 | 514 | {{#include ../../banners/hacktricks-training.md}} |
0 commit comments