На сайте rivo.vin нашли скрипты для кражи данных браузера
Расследование выявило загрузчик в HTML-коде сайта для взрослых с отображаемым именем rivo.vin. Он добавил три скрытых фрейма и пять внешних скриптов, предназначенных для сбора информации. Наблюдения подтверждают наличие такого кода, но не доказывают успешную передачу данных или перевод активов и не позволяют установить число пострадавших. Источник компрометации и оператор не установлены.
При осмотре обнаружили и другие скрипты: main-stealer.js, stealer-7.js, stealer-8.js и stealer-auto.js. Связанный код собирает файлы cookie, данные локального и сессионного хранилищ, сведения из IndexedDB, введённые в формы данные и нажатия клавиш. Он также отслеживает отпечатки браузера и активность в DOM, сети и WebSocket. Несколько скриптов нацелены на связанные с аутентификацией значения, в том числе rivo_session, rivo_token и rivo_user.
Код для работы с кошельками проверяет Web3-провайдеры браузера и методы подключения, чтобы определить тип кошелька, статус подключения, публичный адрес и сеть. Некоторые скрипты также содержат функции мониторинга и подмены буфера обмена, нацеленные на адреса криптовалют. Успешное изменение содержимого буфера обмена не подтверждено. Один адрес в формате TRON прошёл проверку формата и контрольной суммы, но его принадлежность, баланс и использование в блокчейне остаются неизвестными.
stealer-7.js пытается массово собирать данные из хранилищ и перечислять записи IndexedDB, а также отслеживать формы, нажатия клавиш, изменения DOM, фреймы, вызовы fetch и сообщения WebSocket. В его реализации нашли несколько недостатков. Неопределённая функция может остановить выполнение, обработка курсоров IndexedDB выполнена неверно, доступ к фрейму с другого домена может вызвать исключение, а перехватчик fetch может неправильно классифицировать POST-запросы.
stealer-8.js содержит функции защиты от отладки и обнаружения инструментов разработчика, но они не вызываются. stealer-auto.js отображает поддельный экран MetaMask и пытается выполнить перевод или одобрить транзакции с кошелька. Недействительные адреса-заполнители и ошибки в параметрах транзакций снижают вероятность успешного завершения переводов.
Скрипты используют относительные пути для сбора данных, включая /rivo-stealer/ и /api/steal. В браузере обнаружили связанный JavaScript-код, а также зафиксировали HTTP-запрос POST на /rec/batch.
Отчет получен из сервиса CTT Report Hub. Права на отчет принадлежат его владельцу.
Ознакомиться подробнее с отчетом можно по ссылке.



