veilletech.fr
1 nov. Feed du jour
#04 SÉCURITÉ Faille

Polymarket : un script tiers détourne 2,7 M$

Votre CSP autorise un domaine. Elle ne lit pas ce qu'il sert.

Le 29 octobre, le script de mesure DebugBear chargé par Polymarket a été remplacé après un détournement DNS passé par le registrar de l'éditeur. Sans voler de clé, le code a réutilisé la session ouverte pour faire signer des transferts : 726 portefeuilles touchés, environ 2,7 millions de dollars remboursés. La leçon vaut pour tout site qui charge un script tiers sur une page connectée.

2 min de lectureintermédiairevidéo 1:19
Partager
Sommaire5 sections
  1. Ce qui se passe
  2. Le mécanisme
  3. Les chiffres
  4. Comment s'y prendre
  5. À retenir

Ce qui se passe

Polymarket chargeait un script de suivi de performance fourni par DebugBear. Le 29 octobre, le fichier servi depuis cdn.debugbear[.]com a été remplacé par du code malveillant. DebugBear met en cause ses enregistrements DNS, compromis par l'intermédiaire de son registrar. L'éditeur n'a vu aucune trace d'intrusion dans ses systèmes, mais son enquête continue.

Chaque client de DebugBear charge sa propre copie du script, et celle qui a été remplacée était celle de Polymarket. Les premiers éléments de DebugBear indiquent une attaque contre ce seul client.

Le mécanisme

C'est l'intérêt technique de l'affaire. D'après Hudson Rock, qui a lu le fichier sans l'exécuter, le code ne transmet ni mot de passe, ni phrase de récupération, ni clé privée. Il n'en a pas besoin : il repère dans la page le composant de passage d'ordres et le signataire du compte, puis s'en sert depuis la session déjà ouverte.

Les requêtes signées passent ensuite par le relais de Polymarket, comme des opérations normales.

Hudson Rock précise une réserve importante : une demande de signature ne prouve pas que l'utilisateur n'a vu aucune invite. Le fournisseur du portefeuille a pu demander confirmation, refuser ou appliquer ses propres règles.

Les chiffres

Comment s'y prendre

Le sujet ne se limite pas à la crypto : toute page connectée qui charge un script de mesure donne à un tiers le pouvoir d'agir au nom de l'utilisateur.

  1. Retirez les scripts tiers inutiles des pages où l'on signe, paie ou change un réglage sensible.

  2. Épinglez les fichiers qui s'y prêtent avec Subresource Integrity :

    HTML
    <script src="https://cdn.exemple.net/rum.js"
            integrity="sha384-..."
            crossorigin="anonymous"></script>
  3. Ne comptez pas sur une CSP qui autorise un CDN : elle ne contrôle pas le contenu des fichiers.

  4. Listez ce qu'un code présent sur la page peut demander au signataire ou aux API de session.

Clients de DebugBear : l'éditeur demande de retirer son code d'intégration RUM. Polymarket annonce remettre ses scripts tiers avec une CSP renforcée, des versions épinglées et un bac à sable.

Source : The Hacker News, 1er novembre 2026. Source en anglais.