TGViewer
FrontSecOps FrontSecOps @frontsecops · 819 subscribers
Post #80 1.25K
В крупнейшем банке США 😒 (топ 3 ↗️) в интернет-магазине для сотрудников был обнаружен js-сниффер/кейлогер 🦠

Интернет-магазин могли использовать до 200 000 сотрудников банка. Сниффер перехватывал данные банковских карт, логины/пароли пользователей, адрес доставки товара и другие данные, введенные в формы 🪪

Что делал вредоносный код?

🔹В код страниц был внедрен inline-скрипт (загрузчик) 📱, он проверял, что страница является страницей подтверждения заказа (наличие "checkout" в URL).

🔹Если да, то на страницу динамически загружался с внешнего хоста сам js-сниффер ⬇️ (URL https://js-csp[.]com/getInjector/).

🔹Сниффер перехватывал содержимое полей (элементы input, textarea, select) формы оплаты/аутентификации/регистрации/оформления заказа. Во многих популярных движках интернет-магазинов все эти формы находятся на странице подтверждения заказа.

🔹Для отправки украденных данных на хост злоумышленника на странице динамически создавался элемент IMG. Украденные данные кодировались в base64 и передавались в GET-параметрах (https://js-csp[.]com/fetchData/?data=<base64>&loc=<origin>) 🔼

🔸1 декабря 2025 - регистрация доменного имени злоумышленников.
🔸14 января 2026 - js-сниффер обнаружен компанией Sansec, уведомление банка.
🔸15 января 2026 - вредоносный скрипт удален из приложения.

Наиболее вероятно, что это результат взлома CMS интернет-магазина через эксплуатацию уязвимостей либо украденную учетную запись администратора.

⚠️ Обратите внимание, что в скрипте-загрузчике строка с URL js-сниффера закодирована через использование массива с кодами каждого символа строки. Это самый примитивный способ, но даже он делает статический анализ (SAST) не эффективным для обнаружения вредоносного кода в frontend-приложениях.

Время присутствия: от 1 до 45 дней
Обнаружение инцидента: уведомление от сторонней компании и публикации в СМИ.

DPA Frontend Threat Modeling Framework (Frontend Kill Chain) :
Вектор:
🔹T-3: Компрометация сервера приложения
Способ реализации:
🔹T-27: Кража персональных данных
🔹T-26: Кража токенов/секретов/учетных данных и отправка на хост злоумышленника
🔹T-45: Вредоносный код выполняется только при определенном действии (клик по кнопке логин/оплатить/отправить).

При использовании анализатора класса FAST (Frontend Application Security Testing) данный инцидент мог быть обнаружен в течение 1-3 часов (в зависимости от частоты сканирования) после добавления вредоносного скрипта в приложение, а при использовании FOP - через 1 минуту.

@FrontSecOps
  • 🔥 16
  • 👍 4
More from @frontsecops
  1. Jul 21, 2026Результаты исследования безопасности российских frontend-приложений Q2 2026 Опубликовали о…
  2. Jun 24, 2026Интересная подборка инцидентов, связанных с вайб-кодингом 🌟 https://crackr.dev/vibe-codin…
  3. Jun 23, 2026Безопасный код без войны с разработчиками: практика DevSecOps в 2026 году Покупка сканера…
  4. Apr 16, 2026Почему композиционный анализ (SCA) не гарантирует отсутствие вредоносного кода в frontend-…
  5. Apr 16, 2026Через час выложу пост про Применимость композиционных анализаторов (SCA) для обнаружения в…
  6. Mar 31, 2026⚠️ Компрометация npm-пакета Axios Axios - популярный HTTP-клиент для JavaScript 📱 с > 100…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →