Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-0047-poc — CVE-2026-0047: Absence de vérification des permissions dans ActivityManagerService.dumpBitmapsProto() — voler les bitmaps de l'interface utilisateur de chaque application en cours d'exécution sans aucune permission (Android 16 QPR2 Beta) | Kitploit
Outils/GitHubGitHub/mobilehackinglab/cve-2026-0047-poc
Sécurité AndroidEscalade de PrivilègesAnalyse des VulnérabilitésExploitationCollecte d'InformationsSécurité MobileApprentissage et ÉducationExploitation de BinairesLabs et Pratique

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHubmobilehackinglab/cve-2026-0047-poc

CVE-2026-0047-poc

CVE-2026-0047: Absence de vérification des permissions dans ActivityManagerService.dumpBitmapsProto() — voler les bitmaps de l'interface utilisateur de chaque application en cours d'exécution sans aucune permission (Android 16 QPR2 Beta)

Voir le dépôt
1346il y a 4 moisPas encore vérifié

CVE-2026-0047 : Contrôle de permission manquant dans ActivityManagerService

Une pile de bitmaps dérobée à chaque application en cours d'exécution — zéro permission, zéro interaction de l'utilisateur.

Un contrôle enforceCallingOrSelfPermission(DUMP) manquant dans ActivityManagerService.dumpBitmapsProto() permet à toute application installée d'exfiltrer les bitmaps de l'interface utilisateur de tous les processus en cours d'exécution sur Android 16 QPR2 Beta (Baklava).

Remarque : Nous n'avons pas découvert cette vulnérabilité. Tout le crédit de sa découverte et de son signalement responsable revient aux chercheurs d'origine. Ce dépôt contient notre analyse du correctif, notre reproduction et notre rapport pédagogique indépendants pour aider la communauté de la sécurité à comprendre la classe de bug et les techniques d'exploitation impliquées.

CVECVE-2026-0047
SévéritéCritique — CVSS 8.4
ComposantActivityManagerService.dumpBitmapsProto()
Cause racineContrôle de permission manquant (CWE-280)
ImpactToute application sans permission vole les bitmaps de l'interface utilisateur de toutes les applications en cours d'exécution
AffectéAndroid 16 QPR2 Beta 1–3 (Baklava), niveau de correctif < 2026-03-01
CorrigéBulletin de sécurité Android de mars 2026

Contenu du dépôt

root@kitploit:~
├── app/                    # PoC exploit app (audit tool UI)
├── attacker/               # "Flashlight Pro" — disguised attacker app
├── apk/                    # Pre-built APKs (ready to install)
│   ├── cve-2026-0047-poc.apk
│   └── flashlight-pro-attacker.apk
├── exploit.sh              # Single-shot exploit script
├── gradle/                 # Gradle wrapper
└── README.md

Configuration de l'environnement de test

Vous avez besoin d'un émulateur Android 16 QPR2 Beta (Baklava) avec un niveau de correctif de sécurité antérieur au 2026-03-01 :

root@kitploit:~
# Download the vulnerable system image
sdkmanager "system-images;android-Baklava;google_apis;arm64-v8a"

# Create an AVD
avdmanager create avd -n baklava -k "system-images;android-Baklava;google_apis;arm64-v8a"

# Boot the emulator
emulator -avd baklava &

# Verify the patch level is pre-fix
adb shell getprop ro.build.version.security_patch
# Anything before 2026-03-01 is vulnerable

Démarrage rapide

Option 1 : Script tout-en-un (recommandé)

root@kitploit:~
# Full run: set up emulator, build, exploit, extract stolen bitmaps
./exploit.sh --setup-emulator

# Already have a Baklava emulator running?
./exploit.sh

# Skip build, just run exploit
./exploit.sh --skip-build

Option 2 : APK pré-construit

root@kitploit:~
# Install the PoC app
adb install apk/cve-2026-0047-poc.apk

# Open some apps (Settings, email, etc.) to have visible UI
adb shell am start -n com.android.settings/.Settings

# Launch the PoC
adb shell am start -n com.poc.cve20260047/.MainActivity

# Tap "Exploit dumpBitmapsProto()" button

Option 3 : Simulation d'attaque (« Flashlight Pro »)

root@kitploit:~
# Install the disguised attacker app — declares ZERO permissions
adb install apk/flashlight-pro-attacker.apk

# Launch it — exfiltration happens silently on startup
adb shell am start -n com.poc.cve20260047.attacker/.MainActivity

Fonctionnement

  1. Sonde Binder brute — Le code de transaction #117 sur le service activity correspond à dumpBitmapsProto(). L'envoyer sans arguments provoque une NullPointerException à l'intérieur d'AMS (et non une SecurityException), ce qui prouve que le corps de la méthode s'exécute sans aucun contrôle de permission.

  2. Exploitation Binder brute — Nous utilisons IBinder.transact() pour envoyer une Parcel façonnée à la main directement à AMS. Cela contourne entièrement les restrictions d'API cachées d'Android — aucun réglage hidden_api_policy n'est nécessaire. La Parcel contient :

    • Jeton d'interface (android.app.IActivityManager)
    • Marqueur non nul + ParcelFileDescriptor (extrémité d'écriture du tube)
    • Tableau de chaînes vide (tous les processus)
    • userId = -2 (USER_CURRENT)

Résultat

Sur un émulateur Baklava (BP41.250725.007, correctif 2025-08-05) avec Paramètres, Horloge et Fichiers ouverts :

  • 679 091 octets de données protobuf
  • 63 images PNG valides volées à toutes les applications en cours d'exécution
  • Zéro permission déclarée par l'application PoC

Comment cela a été corrigé

Google a ajouté enforceCallingOrSelfPermission(DUMP) comme première ligne de dumpBitmapsProto(), si bien que les appelants non privilégiés reçoivent désormais une SecurityException avant qu'aucune donnée ne soit accessible.

Références

  • Bulletin de sécurité Android — mars 2026
  • CVE-2026-0047 — NVD
  • CWE-280 : Gestion incorrecte des permissions insuffisantes
  • Article de blog : analyse complète et présentation pas à pas de l'exploitation

Crédits

Recherche et PoC par Mobile Hacking Lab. Nous avons reproduit cette vulnérabilité de manière indépendante à des fins pédagogiques.

Avertissement

Cette preuve de concept est fournie uniquement à des fins éducatives et de recherche en sécurité autorisée. Ne l'utilisez que sur des appareils et des environnements que vous possédez ou pour lesquels vous disposez d'une autorisation explicite de test. Les auteurs ne sont pas responsables de toute mauvaise utilisation.

Télécharger l’outil
  • dumpAll = true
  • format = "png"
  • Extraction des bitmaps — AMS écrit des données protobuf contenant des bitmaps PNG dans le tube. Nous recherchons les octets magiques PNG (89 50 4E 47) et les marqueurs de fin IEND pour extraire les images individuelles.