🔍 Contexte
Publié le 16 septembre 2026 par Zimperium zLabs (auteurs : Gianluca Braga, Vishnu Pratapagiri, Fernando Ortega), cet article présente l’analyse technique complète de RatHat, un nouveau malware Android attribué à des acteurs opérant depuis la Chine.
🎯 Vecteurs d’infection
RatHat est distribué via :
- Smishing (campagnes SMS/phishing)
- Malvertising redirigeant vers des portails de téléchargement tiers frauduleux
- Forums tiers proposant des APKs malveillants déguisés en applications légitimes
🏗️ Architecture technique
Le malware repose sur trois composants principaux :
- L’application Android malveillante : interface utilisateur, acquisition de permissions, déclenchement de la chaîne d’infection
- Go Agent (
liblocal-service.so) : agent C2 exécuté en contexte shell ADB, gestion de la persistance système - FRP Client (
libmedia_codec.so) : client reverse-proxy (basé sur fatedier/frp) établissant un tunnel persistant vers le C2
🛡️ Techniques anti-analyse (4 couches + anti-debug)
- Layer 1 : Altération du conteneur ZIP (fichiers déclarés comme répertoires, bit de chiffrement)
- Layer 2 : AndroidManifest.xml de 61 Mo avec chunks de type
0x9999non documentés - Layer 3 : Empoisonnement du bytecode DEX avec des pseudo-instructions invalides
- Layer 4 : Double chiffrement de chaînes (StringFog + StringCrypto avec swap de paires d’octets et XOR 16 octets)
- Anti-debug : 6 vérifications runtime (JDWP, ptrace, FLAG_DEBUGGABLE, propriétés système, Frida, Xposed/root/émulateur)
🤖 Fonctionnalités clés
- IA générative : sérialisation de l’arbre Accessibility en XML envoyé à un assistant IA pour automatiser la navigation UI en temps réel
- Keylogger hardware : lecture de
/dev/input/*viageteventdepuis le shell ADB, reconstruction des PINs/patterns vialocateValues.json(géométrie des claviers par marque) - Overlay injection : pages HTML frauduleuses superposées aux apps bancaires et de paiement (WeChat, Alipay)
- Interception OTP/2FA : récepteur SMS et listener de notifications
- Auto-escalade ADB : activation autonome du débogage sans fil, auto-appairage ADB local via
libadb-android - Persistance hors cycle de vie : le service Go survit à la désinstallation de l’APK et réinstalle automatiquement le malware
📡 Communication C2
- App Android : enregistrement HTTP + WebSocket persistant avec heartbeats, authentification HMAC-SHA256
- Go Agent : serveur HTTP local sur
127.0.0.1:7910 - FRP Client : tunnel reverse proxy contournant NAT et firewalls
- Endpoints couvrant : enrôlement, credentials, SMS, liste d’apps, transfert de fichiers, clés ADB, monitoring écran, vidéo, configuration tunnel, mise à jour de l’agent
🏦 Secteurs ciblés
Applications bancaires, portefeuilles de paiement (WeChat, Alipay), applications de streaming (utilisées comme leurre).
📄 Nature de l’article
Analyse technique approfondie publiée par un éditeur de sécurité mobile (Zimperium), visant à documenter les capacités de RatHat et à promouvoir ses solutions MTD/zDefend.
🧠 TTPs et IOCs détectés
TTP
- T1660 — Phishing: SMS Phishing (Smishing) (Initial Access)
- T1476 — Deliver Malicious App via Other Means (Initial Access)
- T1407 — Download New Code at Runtime (Defense Evasion)
- T1418 — Software Discovery (Discovery)
- T1417 — Input Capture (Collection)
- T1417.001 — Input Capture: Keylogging (Collection)
- T1417.002 — Input Capture: GUI Input Capture (Collection)
- T1516 — Input Injection (Impact)
- T1411 — Input Prompt (Collection)
- T1409 — Stored Application Data (Collection)
- T1412 — Capture SMS Messages (Collection)
- T1430 — Location Tracking (Collection)
- T1406 — Obfuscated Files or Information (Defense Evasion)
- T1508 — Suppress Application Icon (Defense Evasion)
- T1541 — Foreground Persistence (Persistence)
- T1398 — Boot or Logon Initialization Scripts (Persistence)
- T1422 — System Network Configuration Discovery (Discovery)
- T1481 — Web Service (Command and Control)
- T1437.001 — Application Layer Protocol: Web Protocols (Command and Control)
- T1521 — Encrypted Channel (Command and Control)
- T1404 — Exploit OS Vulnerability (Privilege Escalation)
- T1629.003 — Impair Defenses: Disable or Modify Tools (Defense Evasion)
- T1632 — Subvert Trust Controls (Defense Evasion)
IOC
- Fichiers :
liblocal-service.so - Fichiers :
libmedia_codec.so - Fichiers :
server_config.json - Fichiers :
svc_config.html - Fichiers :
locateValues.json - Fichiers :
local-service.update - Fichiers :
app.apk - Chemins :
/data/local/tmp/frpc - Chemins :
/data/local/tmp/local-service.update - Chemins :
/data/local/tmp/app.apk - Chemins :
/proc/self/status - Chemins :
/proc/self/maps - Chemins :
/dev/input/
⚠️ À propos de ces IOC — ils sont extraits automatiquement de l’article original le 16 septembre 2026 et n’ont pas fait l’objet d’une vérification externe. Un indicateur peut avoir été réattribué depuis : une IP de C2 peut redevenir un service légitime, un domaine sinkholé peut changer de propriétaire. Aucune garantie d’exactitude ni d’actualité — contrôlez leur validité avant tout usage opérationnel, en particulier avant de les injecter dans une blocklist ou un SIEM.
Malware / Outils
- RatHat (rat)
- frpc (fatedier/frp) (tool)
- StringFog (other)
- libadb-android (tool)
🟡 Indice de vérification factuelle : 50/100 (moyenne)
- ⬜ zimperium.com — source non référencée (0pts)
- ✅ 27023 chars — texte complet (fulltext extrait) (15pts)
- ✅ 13 IOCs (IPs/domaines/CVEs) (10pts)
- ⬜ pas d’IOC vérifié (0pts)
- ✅ 23 TTPs MITRE identifiées (15pts)
- ✅ date extraite du HTML source (10pts)
- ⬜ aucun acteur de menace nommé (0pts)
- ⬜ pas de CVE à vérifier (0pts)
🔗 Source originale : https://zimperium.com/blog/rathat-ai-powered-mobile-threat-is-here-for-your-credentials-bank-accounts