Підмінений скрипт Polymarket виводив кошти: компенсації на $3,9 млн

Polymarket повідомила про підміну скрипту та зловживання активними сесіями. Звіт 30 жовтня розділяє викрадені кошти й компенсації за паузу.

Браузер витягує монети з гаманця — ілюстрація підміни скрипту Polymarket

Polymarket повідомила про повернення $3,9 млн після того, як підмінений скрипт моніторингу продуктивності використав активні сесії трейдерів для виведення коштів. У звіті від 30 жовтня платформа розділяє $2,7 млн, пов’язаних з атакою, та $1,2 млн компенсацій за втрати навколо зупинки торгів. Збій довіри стався всередині знайомої торговельної сторінки: сторонній скрипт дістався до інструментів, якими вже користувався клієнт.

Замість вимірювання швидкості — доступ до торгівлі

Дослідники Hudson Rock 29 жовтня двічі отримали однаковий JavaScript-файл розміром 15 187 байтів з адреси CDN DebugBear. Замість звичайного вимірювання швидкодії код шукав у запущеному застосунку торговельний клієнт і компонент підписання операцій гаманця. Доступ до такого компонента значно небезпечніший за збирання статистики завантаження сторінки.

У дослідженні описано два шляхи: переказ токенів позицій для одного типу облікового запису або спроби продажу з подальшим переказом залишків для іншого. Це суттєва різниця. Наявність коду продажу не доводить, що позиції кожного трейдера продали, а запит підпису не означає завершеної транзакції. Дослідники аналізували файл без запуску з підключеним гаманцем.

Тут користувача не обов’язково заманювали на підроблену сторінку: небезпечну залежність завантажував сам сайт платформи. Перевірки адресного рядка недостатньо, щоб відрізнити підмінений файл від належного скрипту моніторингу. Це також відрізняється від викрадення доступу до підписання, яке розглядається в матеріалі про злам Binance: не слід автоматично приписувати двом інцидентам однаковий механізм.

Баланс на знімку не дорівнює сумі крадіжки

Баланс PolygonScan за адресою резервного одержувача зі зразка
Знімок балансу з дослідження Hudson Rock від 29 жовтня. Активи на адресі не є підтвердженою загальною сумою збитків. Джерело: Hudson Rock / PolygonScan.

Адреса зі знімка збігається з резервним одержувачем у коді. Показані активи пов’язують файл із напрямком переказу, проте баланс поєднує різні надходження та змінні оцінки вартості. Сам по собі він не встановлює, які саме кошти викрадено в цій атаці. Пізніший підрахунок Polymarket — окреме твердження платформи.

Що змінило повідомлення про компенсації

30 жовтня о 20:07 UTC Polymarket повідомила, що 95% постраждалих гаманців уже отримали повне відшкодування. За словами платформи, одержувачів визначили за торговельними й блокчейн-записами, без необхідності подавати заявку для автоматичної виплати. Загальні $3,9 млн включають і компенсацію за втрати навколо паузи: називати всю суму викраденими коштами неправильно.

Платформа також повідомила про видалення скрипту, очищення кешів та скидання активних сесій. Це заявлені заходи реагування, а не наша гарантія безпеки кожного браузера чи гаманця. Атаку 29 жовтня та звіт про компенсації 30 жовтня не слід змішувати з попередніми інцидентами Polymarket.

Якщо ви користувалися міжнародною платформою в той період, звірте ордери, рух позицій та перекази зі своїми записами. Для перегляду помилкової суми виплати самостійно відкрийте офіційну історію статусу. Ігноруйте сторонні повідомлення про «повернення коштів» і нікому не передавайте seed-фразу заради компенсації. Знайомий домен допомагає перевірити походження звернення, але не доводить безпеку кожної залежності, яку він завантажує.

Джерела

  1. Polymarket. Інцидент 29 жовтня та підсумковий звіт 30 жовтня. Історія статусу, 30 жовтня 2026 року; перевірено 1 листопада 2026 року.
  2. Hudson Rock Research. Polymarket: код виведення коштів у сторонньому скрипті. InfoStealers, 29 жовтня 2026 року.

Пишу про те, як зробити життя онлайн комфортним і безпечним. Вірю, що сучасний цифровий світ вартий того, щоб бути його частиною.