
OKX et SlowMist publient conjointement | Le logiciel malveillant Bom infecte des dizaines de milliers d'utilisateurs, volant plus de 1,82 million de dollars
TechFlow SélectionTechFlow Sélection

OKX et SlowMist publient conjointement | Le logiciel malveillant Bom infecte des dizaines de milliers d'utilisateurs, volant plus de 1,82 million de dollars
Une enquête approfondie révèle que cette application est en réalité un logiciel frauduleux habilement déguisé. Après avoir incité les utilisateurs à autoriser l'application, les criminels obtiennent illégalement l'accès aux phrases de récupération/clés privées, puis procèdent systématiquement au transfert et à la dissimulation des actifs.

Le 14 février 2025, plusieurs utilisateurs ont signalé en masse le vol de leurs actifs de portefeuille. Une analyse des données sur la blockchain a révélé que tous les cas correspondaient à des caractéristiques de fuite de phrases secrètes ou de clés privées. Des enquêtes supplémentaires menées auprès des victimes ont montré qu’elles avaient majoritairement installé et utilisé une application appelée BOM. Une enquête approfondie a révélé que cette application était en réalité un logiciel malveillant soigneusement déguisé, par lequel les fraudeurs incitaient les utilisateurs à autoriser l’accès aux phrases secrètes/clés privées, puis procédaient systématiquement au transfert illégal d’actifs avant de disparaître. Par conséquent, l’équipe AML de SlowMist et l’équipe de sécurité Web3 d’OKX ont mené une enquête et publié une divulgation sur les méthodes employées par ce logiciel malveillant, accompagnée d’une analyse de suivi sur la blockchain, dans le but d’alerter davantage d’utilisateurs et de leur fournir des recommandations de sécurité.

I. Analyse du logiciel malveillant (OKX)
Avec le consentement des utilisateurs, l'équipe de sécurité Web3 d'OKX a collecté des fichiers APK de l'application BOM présents sur certains téléphones pour les analyser. Voici les détails :
(1) Conclusion
1. Cette application malveillante, après avoir accédé à la page de contrat, trompe l'utilisateur en prétendant que son fonctionnement nécessite des permissions, afin d'obtenir l'autorisation d'accéder aux fichiers locaux et à la galerie photo.
2. Après obtention des autorisations, l'application scanne et collecte les fichiers médias présents dans la galerie de l'appareil, les compresse puis les envoie vers un serveur distant. Si l'utilisateur conserve des informations sensibles telles que sa phrase secrète ou sa clé privée dans ses fichiers ou sa galerie, les fraudeurs peuvent exploiter ces données pour voler les actifs du portefeuille.
(2) Processus d'analyse
1. Analyse préliminaire de l'échantillon
1) Analyse de signature de l'application
Le champ « subject » de la signature est incorrect : il donne « adminwkhvjv », une suite aléatoire sans signification, alors qu'une application normale utilise généralement une combinaison alphabétique significative.

2) Analyse des permissions malveillantes
Dans le fichier AndroidManifest de l'application, on observe l'enregistrement d’un grand nombre de permissions, notamment certaines très sensibles comme la lecture/écriture de fichiers locaux, l'accès aux fichiers médias et à la galerie.

2. Analyse dynamique
Lors de l'analyse, le service backend de l'application étant hors ligne, celle-ci ne pouvait plus fonctionner normalement, rendant toute analyse dynamique temporairement impossible.
3. Analyse par décompilation
Après décompilation, on constate que le nombre de classes dans le fichier dex de l'application est très faible. Une analyse statique du code a donc été effectuée sur ces classes.

La logique principale consiste à déchiffrer certains fichiers et charger l'application :

Dans le répertoire assets, des fichiers produits par uniapp ont été trouvés, indiquant que l'application a été développée avec le framework multiplateforme uniapp :

Dans les applications développées sous uniapp, la logique principale se trouve dans le fichier app-service.js. Certaines parties critiques du code sont chiffrées dans app-confusion.js. Notre analyse commence donc principalement depuis app-service.js.
1) Point de déclenchement
Dans les points d'entrée des différentes pages, on trouve l'entrée de la page contract.

La fonction correspondante porte l'index 6596.

2) Envoi initial des informations de l'appareil
Le rappel onLoad() après chargement de la page contract appelle doContract().

Dans doContract(), initUploadData() est appelé.

Dans initUploadData(), on vérifie d’abord la connexion réseau et si les listes d’images et vidéos sont vides, puis on invoque le rappel e().

Le rappel e() correspond à getAllAndIOS().

3) Vérification et demande de permissions
Sous iOS, une demande de permission est faite, accompagnée d’un texte expliquant que cela est nécessaire au bon fonctionnement de l’application, trompant ainsi l’utilisateur. Ce comportement est suspect : une application liée à la blockchain n’a aucun besoin légitime d’accéder à la galerie photo, ce qui dépasse clairement les permissions normales requises.

Sous Android, on vérifie et demande également l’accès à la galerie.

4) Collecte et lecture des fichiers de la galerie
Ensuite, androidDoingUp lit les images et vidéos et les regroupe.

5) Envoi des fichiers de la galerie
Finalement, l’envoi s’effectue via uploadBinFa(), uploadZipBinFa() et uploadDigui(). On remarque que le chemin (path) de l’interface d’envoi est composé de chaînes aléatoires.


Le processus est similaire sous iOS : après obtention des permissions, getScreeshotAndShouchang() commence la collecte et l’envoi.


6) Interface d'envoi
Le domaine commonUrl dans l'URL d'envoi provient de la réponse de l'API /api/bf9023/c99so.

Ce domaine est stocké dans le cache local uniapp.

Le code d’écriture dans le cache n’a pas été trouvé ; il pourrait être chiffré et présent dans app-confusion.js. Lors d’une exécution antérieure, ce domaine a été observé dans le cache de l’application.

II. Analyse des fonds sur la blockchain (SlowMist)
D’après l’outil de traçage sur la blockchain et de lutte contre le blanchiment MistTrack, appartenant à SlowMist AML, l’adresse principale de vol (0x49aDd3E8329f2A2f507238b0A684d03EAE205aab) a déjà volé les fonds d’au moins 13 000 utilisateurs, réalisant un gain supérieur à 1,82 million de dollars américains.

(https://dune.com/queries/4721460)

La première transaction de l'adresse 0x49aDd3E8329f2A2f507238b0A684d03EAE205aab remonte au 12 février 2025, recevant 0,001 BNB de l'adresse 0x9AEf1CA082c17f9D52Aa98ca861b50c776dECC35 comme fonds initiaux :

L'analyse de l'adresse 0x9AEf1CA082c17f9D52Aa98ca861b50c776dECC35 montre que sa première transaction date également du 12 février 2025, et que ses fonds initiaux proviennent de l'adresse 0x71552085c854EeF431EE55Da5B024F9d845EC976, marquée par MistTrack comme « Theft - vol de clé privée » :

Analyse continue du flux financier de l'adresse initiale du pirate 0x49aDd3E8329f2A2f507238b0A684d03EAE205aab :
BSC : profit d’environ 37 000 dollars, incluant des devises comme USDC, USDT, WBTC, etc., avec conversion fréquente de certains jetons en BNB via PancakeSwap :

Solde actuel : 611 BNB et environ 120 000 dollars en jetons tels que USDT, DOGE, FIL.

Ethereum : profit d’environ 280 000 dollars, principalement constitué d’ETH transférés depuis d’autres blockchains. Ensuite, 100 ETH ont été transférés vers l’adresse 0x7438666a4f60c4eedc471fa679a43d8660b856e0, qui a également reçu 160 ETH de l’adresse susmentionnée 0x71552085c854EeF431EE55Da5B024F9d845EC976, soit un total de 260 ETH non encore transférés.

Polygon : profit d’environ 37 000 ou 65 000 dollars, incluant WBTC, SAND, STG, etc. La majorité des jetons ont été échangés via OKX-DEX contre 66 986 POL. Solde actuel du portefeuille pirate :

Arbitrum : profit d’environ 37 000 dollars, incluant USDC, USDT, WBTC, etc. Les jetons ont été convertis en ETH, et 14 ETH ont été transférés vers Ethereum via OKX-DEX :

Base : profit d’environ 12 000 dollars, incluant FLOCK, USDT, MOLLY, etc. Les jetons ont été convertis en ETH, et 4,5 ETH ont été transférés vers Ethereum via OKX-DEX :

Les autres blockchains ne seront pas détaillées ici. Nous avons également réalisé une brève analyse d'une autre adresse pirate fournie par des victimes.
L’adresse pirate 0xcb6573E878d1510212e84a85D4f93Fd5494f6EA0 a effectué sa première transaction le 13 février 2025, réalisant un profit d’environ 650 000 dollars sur plusieurs chaînes, toutes les USDT ayant été transférées vers l’adresse TRON TFW52pZ3GPPUNW847rdefZjqtTRxTCsdDx :

L’adresse TFW52pZ3GPPUNW847rdefZjqtTRxTCsdDx a reçu au total 703 119,2422 USDT, dont un solde actuel de 288 169,2422 USDT. Parmi ceux-ci, 83 000 USDT ont été transférés vers l’adresse TZJiMbiqBBxDXhZXbrtyTYZjVDA2jd4eus sans sortie ultérieure, tandis que les 331 950 USDT restants ont été envoyés vers l’adresse THKqT6PybrzcxkpFBGSPyE11kemRNRmDDz, qui a déjà interagi avec Huionepay.

Nous continuerons de surveiller les adresses ayant encore un solde.
III. Recommandations de sécurité
Pour aider les utilisateurs à renforcer leur vigilance, l’équipe AML de SlowMist et l’équipe de sécurité Web3 d’OKX ont compilé les recommandations suivantes :
1. Ne téléchargez jamais de logiciels provenant de sources inconnues (y compris les soi-disant « outils de farming », ou tout logiciel dont l’éditeur est inconnu).
2. Ne faites pas confiance aux liens de téléchargement recommandés par des amis ou des groupes communautaires ; privilégiez uniquement les canaux officiels.
3. Téléchargez les applications uniquement via des canaux officiels : Google Play, App Store et autres magasins d’applications officiels.
4. Conservez soigneusement votre phrase secrète. Évitez absolument de la sauvegarder par capture d’écran, photo, bloc-notes ou cloud. Le portefeuille mobile OKX interdit désormais les captures d’écran sur les pages contenant la clé privée ou la phrase secrète.
5. Sauvegardez physiquement votre phrase secrète : en l’écrivant sur papier, en l’important dans un portefeuille matériel, ou en la divisant en segments stockés séparément.
6. Changez régulièrement de portefeuille. Quand c’est possible, changer périodiquement de portefeuille permet d’éliminer les risques de sécurité latents.
7. Utilisez des outils professionnels de traçage sur la blockchain, comme MistTrack (https://misttrack.io/), pour surveiller et analyser vos fonds, réduisant ainsi le risque de tomber dans des arnaques ou des attaques de phishing, et protégeant mieux vos actifs.
8. Il est fortement recommandé de lire le Manuel de survie en forêt noire blockchain, écrit par Yu Xian, fondateur de SlowMist.
Avertissement
Ce contenu est fourni à titre informatif uniquement et ne constitue ni ne doit être considéré comme (i) un conseil d’investissement ou une recommandation, (ii) une offre ou une sollicitation d’achat, de vente ou de détention d’actifs numériques, ou (iii) un conseil financier, comptable, juridique ou fiscal. Nous n’assurons aucune garantie quant à l’exactitude, l’intégralité ou l’utilité de ces informations. Les actifs numériques (y compris les stablecoins et les NFT) sont sujets à des fluctuations de marché, comportent des risques élevés, peuvent se déprécier voire devenir totalement sans valeur. Vous devez soigneusement évaluer si la détention ou les transactions d’actifs numériques conviennent à votre situation financière et à votre tolérance au risque. Pour toute question concernant votre cas particulier, consultez un professionnel juridique/fiscal/investissement. Tous les produits ne sont pas disponibles dans toutes les régions. Pour plus d’informations, veuillez consulter les conditions d’utilisation d’OKX et les clauses de divulgation de risques et d’exonération de responsabilité. Le portefeuille mobile Web3 d’OKX et ses services dérivés sont soumis à des conditions d’utilisation distinctes. Vous êtes seul responsable de la connaissance et du respect des lois et réglementations locales applicables.
Bienvenue dans la communauté officielle TechFlow
Groupe Telegram :https://t.me/TechFlowDaily
Compte Twitter officiel :https://x.com/TechFlowPost
Compte Twitter anglais :https://x.com/BlockFlow_News











