Selon RSF Digital Security Lab (Reporters sans frontières), en collaboration avec RESIDENT.NGO et avec un appui d’Amnesty International Security Lab, un nouveau spyware Android nommé « ResidentBat » a été mis au jour après l’infection du téléphone d’un journaliste biélorusse au T3 2025, consécutive à une saisie par le KGB.

• Le spyware, empaqueté en APK et installé via accès physique (pas d’exploits), abuse de permissions étendues et d’un service d’accessibilité pour collecter des SMS, appels entrants/sortants (avec enregistrement d’appels), fichiers, photos/vidéos, microphone, captures d’écran/vidéo (MediaProjection), presse-papiers (jusqu’à Android 10), localisation, notifications et contenus d’apps (messageries comme Telegram, Viber, Skype, VK, Signal, WhatsApp, etc.). Il se déclare Device Admin, peut verrouiller ou effacer l’appareil, et persiste en service au premier plan.

• Les échantillons identifiés partagent le préfixe de composants com.google.bat.* et l’accessibility service com.google.bat.resident.ResidentService. Des options de configuration fines (ex. suivi SMS/appels, fréquence d’upload, Wi‑Fi-only, screenshots, suivi applis/notifications) contrôlent les sources collectées. Les APK sont signés avec des certificats dont les périodes « Valid From » ont servi à reconstituer une chronologie d’activité : l’opération est en cours au moins depuis mars 2021.

• L’infection clé analysée montre que le KGB a vu le PIN de la victime, a installé deux APK (l’un ensuite désinstallé par l’utilisateur), a désactivé Google Play Protect et a déposé une clé ADB. Le spyware communique avec ses C2 via TLS (certificat leaf CN=“server”) et un fingerprint réseau (FP1) a permis d’identifier 25 hôtes actifs. Plusieurs packages factices (Google/Huawei/Honor/OnePlus, etc.) et noms d’apps légitimes sont utilisés pour la couverture.

• Les auteurs publient une liste d’IoC (IP, hashes, packages, certificats, domaines/URL C2) et des indicateurs MVT pour détection. Ils détaillent aussi des traces utilisateur possibles (notification d’enregistrement d’appel, icône MediaProjection) et documentent l’usage des API Android (DevicePolicyManager, MediaProjection, Accessibility) et des intents sensibles (BOOT_COMPLETED, SMS_RECEIVED, NEW_OUTGOING_CALL, etc.).

• Il s’agit d’une publication de recherche technique et d’attribution opérationnelle visant à documenter la menace, sa chronologie, ses capacités et à fournir des IoC pour la détection. 🕵️📱

IoC principaux (extraits)

  • IP C2 (24) : 62.109.26.144; 91.107.122.180; 5.129.230.104; 82.146.35.54; 62.109.12.75; 79.132.136.191; 83.220.169.120; 5.129.213.114; 5.253.63.176; 62.109.11.98; 62.109.19.123; 185.248.103.85; 5.129.231.158; 185.18.54.246; 91.240.87.211; 185.248.103.128; 185.248.103.247; 188.120.230.46; 37.46.133.87; 5.253.61.156; 79.132.141.31; 37.46.128.62; 91.228.152.4; 91.192.102.69
  • Endpoints C2 : https://188.120.230[.]46:7003; https://45.155.7[.]166:7035; https://79.132.136[.]191:7007; https://79.132.136[.]191:7017; https://mtcat[.]info:7007; https://mtcat[.]info:7017
  • Domaine : mtcat[.]info (résout vers 176.10.124.158)
  • Packages observés : com.google.android.service; com.google.bat; com.huaweisettingsapp.mkz; com.linkedln.service; com.oneplussync.bat; cm.google.android.apps.assistant; com.android.framework.safety; com.hihonor.core.service
  • Receiver/Service prefix : com.google.bat.* ; com.google.bat.resident.ResidentService
  • Hashes APK : 02dc81ea172e45f0a6fd7241fffd1042f6925c52d2f91dee36085634207be4f1; 07d39205f9ba159236477a02cdb3350fac4f158e0dbf26576bb50604339b1f42; 0ed73428c7729806be57989f340a09a323af914f197cc0cbb5509316ca5baf7b; 48e87bfcaa665bfbfcb027227384905878f090bbc19d02f74c41ade3cafb0950; 77126e749a9c1144ae3cebb8deb0b72fc90d4eb73d1072a69a1248b4f518bb47; 820c394b22b950335eb5cf21bc7df5c7a33081169f41440c74d67e7a8f196960; c3b92d05b105465881c0f68f5cf6c3edb24d2e5317ffd1256cb68c7921fe0721; fe05ba40f2d4b15db83524c169d030d097abc6713139ce6068969d97a24aa195
  • Certificats APK (empreintes) : 18afc5c6bfaee504a26291f6bf3e6f823dbedd54bba0c4acac2e7c2414b3e24d; c1884e617348ebbdfe7cfe5fc99945b37296d6ebc6059bb74fbaeea277d32941; e5016f3cfb937d502dabedc32ca3bdef3bbcce032fb3b1bff3b9c6482895f4fd; d12616542268d32329f1c4357b5d5a57e954e13d2338d27bb8439794291b8c6d; 3e9f1192e33cb851b48479629c93d29770a4f76af00f1e42a3c6e7f97db62c79; 6782039a81a85264acdc6af0973b225ada6009f76faae7f948a1de040bb32f0c; a6a067b0d899fb514b7b4597d4fe16fcd4d7e5c361f6c84b3d45ed7e394036c7; 6d6278ffc80ad9dd1b1c6b445847ce108f3ea5ce349f232689e9b8c1fd10801e
  • Empreinte C2 (FP1, Censys) : services.tls.certificates.leaf_data.subject.common_name=“server” AND services.banner_hashes=“sha256:6f6676d369e99d61ce152e1e2b2eb6f5e26a4331f4008b5d6fe567edefdbeaca”

TTPs clés 🧩

  • Initial access : accès physique au terminal; observation du PIN; ajout d’une clé ADB; désactivation de Google Play Protect.
  • Persistence/Privilege : Device Admin; service d’accessibilité; foreground service; enregistrement d’intents sensibles (BOOT_COMPLETED, SMS_RECEIVED, NEW_OUTGOING_CALL…).
  • Collection : enregistrement d’appels ☎️, microphone, captures d’écran/MediaProjection 🖼️, SMS/MMS, fichiers, contacts, notifications, localisation, trafic d’apps.
  • C2/Exfiltration : TLS avec certificat commun CN=“server”; proxy mode; option Wi‑Fi-only; upload ASAP configurable; commande d’effacement à distance.
  • Défense évasion : faux noms de packages/apps; certificats avec Valid From post‑daté; limitation d’indices visibles (sauf notifications système Android lors d’enregistrement/partage d’écran).

Conclusion: publication de recherche visant l’attribution, la chronologie opérationnelle et la mise à disposition d’IoC/détecteurs.

🧠 TTPs et IOCs détectés

TTP

Initial access: accès physique au terminal, observation du PIN, ajout d’une clé ADB, désactivation de Google Play Protect. Persistence/Privilege: Device Admin, service d’accessibilité, foreground service, enregistrement d’intents sensibles (BOOT_COMPLETED, SMS_RECEIVED, NEW_OUTGOING_CALL). Collection: enregistrement d’appels, microphone, captures d’écran/MediaProjection, SMS/MMS, fichiers, contacts, notifications, localisation, trafic d’apps. C2/Exfiltration: TLS avec certificat commun CN=“server”, proxy mode, option Wi‑Fi-only, upload ASAP configurable, commande d’effacement à distance. Défense évasion: faux noms de packages/apps, certificats avec Valid From post‑daté, limitation d’indices visibles (sauf notifications système Android lors d’enregistrement/partage d’écran).

IOC

{‘hashes’: [‘02dc81ea172e45f0a6fd7241fffd1042f6925c52d2f91dee36085634207be4f1’, ‘07d39205f9ba159236477a02cdb3350fac4f158e0dbf26576bb50604339b1f42’, ‘0ed73428c7729806be57989f340a09a323af914f197cc0cbb5509316ca5baf7b’, ‘48e87bfcaa665bfbfcb027227384905878f090bbc19d02f74c41ade3cafb0950’, ‘77126e749a9c1144ae3cebb8deb0b72fc90d4eb73d1072a69a1248b4f518bb47’, ‘820c394b22b950335eb5cf21bc7df5c7a33081169f41440c74d67e7a8f196960’, ‘c3b92d05b105465881c0f68f5cf6c3edb24d2e5317ffd1256cb68c7921fe0721’, ‘fe05ba40f2d4b15db83524c169d030d097abc6713139ce6068969d97a24aa195’], ‘domains’: [‘mtcat.info’], ‘ips’: [‘62.109.26.144’, ‘91.107.122.180’, ‘5.129.230.104’, ‘82.146.35.54’, ‘62.109.12.75’, ‘79.132.136.191’, ‘83.220.169.120’, ‘5.129.213.114’, ‘5.253.63.176’, ‘62.109.11.98’, ‘62.109.19.123’, ‘185.248.103.85’, ‘5.129.231.158’, ‘185.18.54.246’, ‘91.240.87.211’, ‘185.248.103.128’, ‘185.248.103.247’, ‘188.120.230.46’, ‘37.46.133.87’, ‘5.253.61.156’, ‘79.132.141.31’, ‘37.46.128.62’, ‘91.228.152.4’, ‘91.192.102.69’]}


🔗 Source originale : https://rsf.org/en/exclusive-rsf-uncovers-new-spyware-belarus