🔍 Contexte

Publié le 4 avril 2026 par CERT Polska, cet article présente une analyse technique approfondie d’un malware Android inédit baptisé cifrat (dérivé du nom de package io.cifnzm.utility67pu), distribué via une infrastructure d’hameçonnage imitant Booking.com.

🎣 Vecteur d’infection initial

La chaîne d’infection débute par un email de phishing incitant la victime à cliquer sur un lien qui redirige successivement via :

  • share.google/Yc9fcYQCgnKxNfRmH
  • booking.interaction.lat/starting/

Cette page présente une fausse invite de mise à jour de sécurité Booking.com et déclenche le téléchargement d’un APK malveillant : com.pulsebookmanager.helper.apk.

🪆 Chaîne de dropper multi-stages

L’APK téléchargé est un dropper multi-stages :

  1. Stage 0 : APK externe (com.pulsebookmanager.helper, label “Pulse”) — présente une fausse interface WebView, charge une bibliothèque native JNI (l0a0cac5c.so) et déchiffre un bundle XOR 32 octets (init_bundle_uzge.bin)
  2. Stage 1 : Bibliothèque native avec décodeur JNI, vérifications anti-debug (détection libjdwp.so via /proc/self/maps), checks Frida/émulateur
  3. Stage 2 : APK installé (io.cifnzm.utility67pu, label “Google Play Services”) — contient déjà les composants d’accessibilité, SMS, caméra, screen capture
  4. Stage 3 : Asset caché FH.svg déchiffré via un algorithme RC4-like (clé mLYQ), produisant une archive ZIP contenant les dex finaux du RAT

🦠 Capacités du RAT final

Le payload final est un RAT Android complet exploitant les services d’accessibilité :

  • Keylogging ciblant des packages critiques (banque, crypto, WhatsApp, Telegram, etc.)
  • Injection HTML/overlay pour phishing de credentials
  • Streaming d’écran (MediaProjection, VNC)
  • Capture caméra
  • Collecte SMS
  • Gestes distants et contrôle de l’appareil
  • Tunnel SOCKS5 pour relayage de trafic réseau
  • Protection anti-désinstallation et persistance via alarmes et services
  • Capture d’écran de verrouillage (PIN, pattern, password)

📡 Infrastructure C2

Le RAT communique via deux canaux WebSocket séparés vers otptrade.world :

  • Canal de contrôle : wss://otptrade.world:8443/control?sessionId=<uuid>
  • Canal de données : wss://otptrade.world:8444/data?sessionId=<uuid>

La vérification TLS est délibérément désactivée. Un endpoint de tracking est également utilisé : https://aplication.digital/receiving/stats/

📋 Type d’article

Il s’agit d’une analyse technique publiée par CERT Polska, dont le but principal est de documenter exhaustivement la chaîne d’infection, les mécanismes d’obfuscation, les capacités du malware et de fournir des IOCs exploitables pour la communauté CTI.

🧠 TTPs et IOCs détectés

TTP

  • T1566.002 — Phishing: Spearphishing Link (Initial Access)
  • T1476 — Deliver Malicious App via Other Means (Initial Access)
  • T1444 — Masquerade as Legitimate Application (Defense Evasion)
  • T1406 — Obfuscated Files or Information (Defense Evasion)
  • T1418 — Software Discovery (Discovery)
  • T1417.001 — Input Capture: Keylogging (Collection)
  • T1412 — Capture SMS Messages (Collection)
  • T1513 — Screen Capture (Collection)
  • T1414 — Capture Clipboard Data (Collection)
  • T1430 — Location Tracking (Collection)
  • T1437.001 — Application Layer Protocol: WebSocket (Command and Control)
  • T1509 — Non-Standard Port (Command and Control)
  • T1521.002 — Encrypted Channel: Asymmetric Cryptography (Command and Control)
  • T1398 — Boot or Logon Initialization Scripts (Persistence)
  • T1626.001 — Abuse Elevation Control Mechanism: Device Administrator Permissions (Privilege Escalation)
  • T1407 — Download New Code at Runtime (Defense Evasion)
  • T1523 — Evade Analysis Environment (Defense Evasion)
  • T1516 — Input Injection (Impact)
  • T1411 — Input Prompt (Collection)

IOC

  • Domaines : booking.interaction.latVT · URLhaus · ThreatFox
  • Domaines : otptrade.worldVT · URLhaus · ThreatFox
  • Domaines : aplication.digitalVT · URLhaus · ThreatFox
  • URLs : https://booking.interaction.lat/starting/URLhaus
  • URLs : https://booking.interaction.lat/update/URLhaus
  • URLs : https://aplication.digital/receiving/stats/URLhaus
  • URLs : wss://otptrade.world:8443/controlURLhaus
  • URLs : wss://otptrade.world:8444/dataURLhaus
  • SHA256 : d408588683b4e66bfe0b5bb557999844fe52d1bfbda6836a48e15290082a5d42VT · MalwareBazaar
  • SHA256 : f9c176f04b7c4061480c037abd2e6aebb4b9b056952a29585c8b448b8ec81a0eVT · MalwareBazaar
  • SHA256 : c11685cb53e264a90cbc749d04740c639c4cfdee794ab98cf16ebd007ceded3bVT · MalwareBazaar
  • SHA256 : 0cf04d3a3a5a148f6f707cd2bc24b38179e0dc4252b4706f77a4d5498cf2c3e9VT · MalwareBazaar
  • SHA256 : 3243a74015df81c999e4d11124351519e5b0d9c99c03ccb12c207d9fa894a21eVT · MalwareBazaar
  • SHA256 : 4ad813a484038ad2a3e66121e276c969a1b78f9c0eca0d2acb296799ea128303VT · MalwareBazaar
  • SHA256 : 12713e00658fdfa9a6466d23d934a709ef8b549449877e94981029ec2e22cbc9VT · MalwareBazaar
  • Fichiers : com.pulsebookmanager.helper.apk
  • Fichiers : l0a0cac5c.so
  • Fichiers : init_bundle_uzge.bin
  • Fichiers : FH.svg
  • Fichiers : l0a0cac5c_a32.so
  • Fichiers : l0a0cac5c_a64.so
  • Fichiers : l0a0cac5c_x86.so
  • Fichiers : l0a0cac5c_x64.so
  • Chemins : /data/user/0/com.pulsebookmanager.helper/files/.ss/l0a0cac5c.so

Malware / Outils

  • cifrat (rat)
  • com.pulsebookmanager.helper (loader)
  • io.cifnzm.utility67pu (loader)

🟢 Indice de vérification factuelle : 87/100 (haute)

  • ✅ cert.pl — source reconnue (liste interne) (20pts)
  • ✅ 41741 chars — texte complet (fulltext extrait) (15pts)
  • ✅ 24 IOCs dont des hashes (15pts)
  • ✅ 2/9 IOCs confirmés (MalwareBazaar, ThreatFox, URLhaus, VirusTotal) (12pts)
  • ✅ 19 TTPs MITRE identifiées (15pts)
  • ✅ date extraite du HTML source (10pts)
  • ⬜ aucun acteur de menace nommé (0pts)
  • ⬜ pas de CVE à vérifier (0pts)

IOCs confirmés externellement :

  • booking.interaction.lat (domain) → VT (20/94 détections)
  • otptrade.world (domain) → VT (4/94 détections)

🔗 Source originale : https://cert.pl/en/posts/2026/04/cifrat-analysis/