Rapport CTI technique du 1 août 2026
Résumé exécutif
Adform, l'un des plus gros acteurs européens de l'adtech avec une plateforme complète DSP/SSP/ad server, a servi pendant environ une semaine un script de vol de cryptomonnaies à chaque visiteur d'un site utilisant sa technologie. Le fichier compromis, trackpoint-async.js, est hébergé sur s2.adform.net et chargé automatiquement par toutes les pages intégrant le tag Adform, ce qui en fait un vecteur de compromission à très large échelle sans qu'aucun des sites concernés n'ait été directement attaqué. Le code malveillant, ajouté sous forme obfusquée à la fin de la bibliothèque légitime, surveille en continu le presse-papiers du navigateur et remplace toute adresse de portefeuille Bitcoin, Ethereum ou TRON copiée par une adresse contrôlée par l'attaquant.
Le chercheur Kevin Beaumont a découvert l'activité malveillante et publié son analyse le 31 juillet 2026 ; le plus ancien échantillon retrouvé sur Archive.org date du 26 juillet à 23h29 UTC, ce qui situe le début réel de la compromission au moins un jour avant la fenêtre de détection publique. Adform a confirmé l'incident le 27 juillet, retiré le code malveillant peu après la divulgation et affirme que le script n'installait pas de logiciel persistant sur les machines des visiteurs, son activité cessant à la fermeture de l'onglet. Le script analysé ne déclenche aucune alerte sur VirusTotal : une détection par signature côté client n'aurait rien vu passer.
Chronologie
| Date | Événement |
|---|---|
| 26 juillet 2026, 23h29 UTC | Premier échantillon connu du script compromis capturé par Archive.org |
| 27 juillet 2026 | Adform détecte une activité suspecte, qualifie l'incident de menace de cybersécurité et retire le code malveillant |
| 31 juillet 2026 | Kevin Beaumont publie son analyse technique sur DoublePulsar ; BleepingComputer confirme et diffuse l'information |
| 31 juillet 2026 | Adform publie une communication officielle affirmant que ses services sont de nouveau sûrs, enquête toujours en cours |
Fiche vulnérabilité (format fiche CTI)
Sans CVE : compromission de script tiers en production, pas de vulnérabilité logicielle isolée identifiée
Ce sujet ne correspond pas à l'exploitation d'une faille documentée dans un produit, mais à la compromission directe de l'infrastructure de diffusion d'Adform, probablement via un accès non autorisé au serveur ou au pipeline de déploiement servant trackpoint-async.js depuis s2.adform.net. Aucune des sources consultées ne précise le vecteur d'accès initial exact utilisé par l'attaquant pour modifier le fichier hébergé chez Adform : ni Beaumont ni Adform n'ont publié de détail sur la compromission de l'infrastructure elle-même au moment de la rédaction.
Conditions d'exploitation côté victime finale : aucune action requise autre que visiter un site tiers, quel qu'il soit, intégrant le tag publicitaire Adform actif entre le 26 et le 27 juillet 2026. Le code s'exécute automatiquement dans le contexte de la page, hérite des permissions JavaScript standard d'un script tiers et n'a besoin d'aucune élévation de privilège pour lire le presse-papiers via l'API Clipboard du navigateur. PoC disponible : oui, Beaumont a publié un échantillon du script sur Pastebin pour analyse par la communauté sécurité. Patch/mitigation : Adform a retiré le code malveillant de son infrastructure ; côté utilisateur final, la recommandation communiquée est de vider les cookies du navigateur pour tout site visité pendant la fenêtre de compromission, bien que le vecteur ne repose pas sur les cookies eux-mêmes mais sur l'exécution ponctuelle du script en mémoire.
Diagramme de la chaîne d'attaque

Reconstruction à partir de l'analyse de Kevin Beaumont (DoublePulsar) et de la couverture BleepingComputer. Légende : compromission de l'infrastructure Adform, distribution du script trojanisé à tous les sites clients, exfiltration silencieuse côté navigateur.
Analyse technique
Étape 1 : compromission de l'infrastructure de diffusion Adform
L'attaquant obtient la capacité de modifier le fichier trackpoint-async.js tel qu'il est servi depuis s2.adform.net. Le mécanisme précis d'accès n'est pas documenté publiquement, mais le résultat observé, un ajout de code en fin de fichier légitime plutôt qu'un remplacement complet, suggère une modification ciblée du fichier en place plutôt qu'une réécriture depuis un pipeline de build compromis.
Étape 2 : distribution silencieuse à l'échelle de l'écosystème Adform
Chaque site web intégrant le tag Adform charge automatiquement trackpoint-async.js à chaque visite. Le modèle publicitaire programmatique repose précisément sur cette diffusion à grande échelle depuis un point central, ce qui signifie que ni les éditeurs de sites ni les visiteurs n'ont de moyen simple de détecter que le script qu'ils chargent a changé de comportement, puisque l'URL et le nom de fichier restent identiques.
Étape 3 : surveillance continue du presse-papiers
Une fois chargé dans le contexte d'une page visitée, le script trojanisé surveille en boucle le contenu du presse-papiers système via l'API Clipboard du navigateur. Il applique une expression régulière capable de reconnaître les formats d'adresse Bitcoin, Ethereum et TRON, et remplace toute correspondance par une adresse contrôlée par l'attaquant, avant de répéter l'opération à intervalle régulier pour contrer une nouvelle copie de l'utilisateur.
Étape 4 : falsification additionnelle des adresses affichées
Au-delà du détournement du presse-papiers, le script est également capable de réécrire des adresses de portefeuille directement affichées sur la page visitée. Un utilisateur qui vérifierait visuellement l'adresse avant de copier verrait donc déjà une valeur falsifiée, ce qui contourne la principale mesure de vigilance recommandée contre les malwares de type clipper.
Étape 5 : télémétrie vers l'infrastructure de l'attaquant
D'autres scripts hébergés par Adform et identifiés dans la même analyse communiquent avec un serveur distant à l'adresse 84.32.102.230:7744, transmettant l'adresse IP de la victime, le site référent et le chemin d'URL visité. Cette télémétrie permet à l'opérateur de suivre l'ampleur réelle de la diffusion et potentiellement de cibler certains sites plutôt que d'autres.
Indicateurs de compromission
| Type | Valeur |
|---|---|
| Fichier trojanisé | trackpoint-async.js, hébergé sur s2.adform.net |
| Fenêtre de compromission confirmée | 26 juillet 2026 (23h29 UTC) au 27 juillet 2026 |
| Serveur de télémétrie / C2 | 84.32.102.230:7744 |
| Comportement | Surveillance et remplacement d'adresses de portefeuille BTC/ETH/TRX dans le presse-papiers et sur la page |
| Détection antivirus | Aucune détection sur VirusTotal au moment de l'analyse |
| Échantillon public | Publié par Kevin Beaumont sur Pastebin pour analyse communautaire |
MITRE ATT&CK
Aucune cartographie officielle n'a été publiée par Adform ou par un éditeur de threat intelligence au moment de la rédaction. La table suivante est une lecture technique construite à partir du comportement documenté par Beaumont et BleepingComputer, pas une attribution vendeur.
| Tactique | Technique | ID | Justification |
|---|---|---|---|
| Initial Access | Compromission de la chaîne d'approvisionnement logicielle | T1195.002 | Modification du script Adform diffusé légitimement à des milliers de sites clients |
| Execution | Exécution via navigateur / scripting côté client | T1059.007 | Code JavaScript exécuté automatiquement dans le contexte de chaque page visitée |
| Collection | Données du presse-papiers | T1115 | Lecture et remplacement en continu du contenu du presse-papiers via l'API Clipboard |
| Command and Control | Protocole web applicatif | T1071.001 | Communication de télémétrie vers 84.32.102.230:7744 |
| Impact | Détournement financier via manipulation de transaction | Non mappé formellement dans Enterprise ATT&CK | Remplacement d'adresses de portefeuille pour rediriger des paiements en cryptomonnaie vers l'attaquant |
Remédiation : checklist opérationnelle
- Pour tout site ayant intégré Adform, vérifier auprès du fournisseur si le tag concerné a chargé trackpoint-async.js entre le 26 et le 27 juillet 2026 et informer les visiteurs concernés par précaution.
- Ne jamais copier-coller une adresse de portefeuille cryptomonnaie sans la vérifier caractère par caractère juste avant de valider la transaction, y compris lorsque l'adresse affichée à l'écran semble correcte.
- Privilégier la vérification par QR code ou par un second canal indépendant pour toute transaction de montant significatif, plutôt que le simple copier-coller.
- Ajouter le serveur 84.32.102.230:7744 aux listes de blocage réseau et de proxy sortant de l'organisation.
- Auditer les scripts tiers chargés sur les sites de l'organisation pour repérer toute dépendance à une plateforme adtech unique sans intégrité de sous-ressource (Subresource Integrity) vérifiée.
- Mettre en place du Subresource Integrity (SRI) ou un Content Security Policy strict pour les scripts publicitaires tiers chargés en production, afin qu'une modification du fichier source soit détectée automatiquement par le navigateur.
- Suivre les communications officielles d'Adform sur l'incident, l'enquête interne étant toujours en cours au moment de la rédaction.