Вы зашли на сайт — страница грузится медленно, вентилятор ноутбука включился на полную, а батарея садится за пять минут. Вы думаете: «Опять что-то в браузере тормозит». Но это может быть не сбой, а атака. Сайт, который вы открыли, использует ваш процессор для майнинга криптовалюты — и даже не спрашивает разрешения. Это называется cryptojacking, и сегодня он всё чаще работает через WebAssembly.
WebAssembly (Wasm) — это технология, которая должна ускорять веб-приложения. Но злоумышленники научились использовать её как инструмент для скрытого майнинга. И если вы не знаете, как это работает, вы не сможете защититься.
- Как cryptojacking через WebAssembly работает на самом деле
- Почему именно WebAssembly? Три ключевые причины
- Как понять, что вас атакуют — 5 признаков
- Таблица: как cryptojacking через WebAssembly отличается от старых методов
- Что делать — практические способы защиты
- 1. Установите блокировщик WebAssembly (если он есть)
- 2. Отключайте JavaScript на подозрительных сайтах
- 3. Следите за трафиком
- 4. Используйте браузеры с защитой
- Частые ошибки — что не работает
- Что выбрать — сценарии для разных пользователей
- Сценарий 1: Вы просто читаете новости и смотрите видео
- Сценарий 2: Вы работаете с веб-приложениями (Notion, Figma, Trello)
- Сценарий 3: Вы используете мобильный телефон
- Сценарий 4: Вы администратор сайта
- Как лучше сделать — практический чек-лист
- Итог: что делать прямо сейчас
Как cryptojacking через WebAssembly работает на самом деле
Раньше майнеры использовали JavaScript. Он медленный, но простой: скрипт запускался, тратил CPU на расчёт хешей, и всё. Браузеры и антивирусы быстро научились его блокировать — по поведению, по известным хешам, по подозрительным доменам.
WebAssembly изменил правила игры. Он — не JavaScript. Это бинарный код, который компилируется прямо в браузере и работает почти как нативная программа. Он быстрее, эффективнее и, что самое важное — неочевиден.
Вот как это выглядит на практике:
- Вы заходите на сайт — например, на «бесплатный» трекер фильмов или «улучшенный» PDF-конвертер.
- На странице загружается файл
.wasm— обычно весом 50–200 КБ. Он выглядит как «оптимизация производительности» или «аналитика». - Этот файл содержит код для расчёта хешей (например, для Monero — самой популярной монеты для скрытого майнинга).
- Код запускается в фоне. Он не отображается в консоли, не пишет в логи, не вызывает предупреждений.
- Ваш процессор работает на 70–90% — но вы думаете, что это «тяжёлый сайт».
WebAssembly не требует расширений, не вызывает предупреждений браузера, не оставляет следов в истории. Он просто работает. И если вы не проверяете сетевой трафик — вы даже не подозреваете, что вас используют как мини-ферму.
Почему именно WebAssembly? Три ключевые причины
Злоумышленники не выбрали WebAssembly случайно. Вот почему он идеален для cryptojacking:
- Скорость — Wasm работает в 2–5 раз быстрее, чем JavaScript. То же количество вычислений занимает в 5 раз меньше времени. Это значит — больше прибыли за тот же период.
- Скрытность — браузеры не блокируют Wasm по умолчанию. Антивирусы не знают, как его идентифицировать как вредоносный, если он не содержит явных сигнатур.
- Совместимость — работает везде: Chrome, Firefox, Safari, Edge. Даже на мобильных устройствах. А значит — больше жертв.
В 2023 году исследователи обнаружили, что 63% всех веб-майнеров используют WebAssembly. В 2020 году этот показатель был 12%. Рост — не случайность. Это переход на новый уровень.
Как понять, что вас атакуют — 5 признаков
Вы не видите всплывающих окон, не получаете сообщений. Но есть признаки, которые нельзя игнорировать:
- Постоянно включенный вентилятор — даже когда вы просто читаете статью. Если ноутбук греется, а вы ничего не запускаете — это тревожный звоночек.
- Быстрая разрядка батареи — если раньше аккумулятор держал 6 часов, а теперь — 2,5, и это не из-за видео или игр — ищите причину в браузере.
- Тормоза в браузере — страницы грузятся медленно, клики «застревают», даже на простых сайтах. Это не «медленный интернет» — это ваш CPU перегружен.
- Высокая загрузка CPU в диспетчере задач — откройте диспетчер задач (Ctrl+Shift+Esc на Windows, Activity Monitor на Mac). Если Chrome или Firefox используют 70–100% одного ядра, а вы ничего не делаете — это подозрительно.
- Неожиданный трафик — если вы не качаете файлы, а в настройках трафика в браузере видите, что сайт отправляет 5–10 МБ в минуту — это может быть передача хешей на сервер майнинга.
Особенно опасно, если это происходит на сайтах, которые вы доверяете — например, на новостных порталах, которые внедрили «монетизацию через рекламу», не проверив, что там внутри.
Таблица: как cryptojacking через WebAssembly отличается от старых методов
| Параметр | JavaScript-майнинг | WebAssembly-майнинг |
|---|---|---|
| Скорость выполнения | Медленная — 10–20% от возможного | Высокая — 70–90% от нативной скорости |
| Обнаруживаемость | Высокая — легко блокируется антивирусами | Низкая — не вызывает срабатываний |
| Размер кода | 10–50 КБ | 50–200 КБ (но эффективнее) |
| Требует расширений? | Нет | Нет |
| Работает на мобильных? | Да, но медленно | Да, эффективно |
| Следы в консоли | Часто есть — можно найти | Редко — код сжат, скрыт, обфусцирован |
Как видите — WebAssembly не просто «лучше». Он делает cryptojacking практически невидимым. И это главное, что меняет ситуацию.
Что делать — практические способы защиты
Защититься можно. Но не одним расширением. Нужен комплексный подход.
1. Установите блокировщик WebAssembly (если он есть)
Большинство блокировщиков рекламы (AdBlock, uBlock Origin) не блокируют WebAssembly. Но есть специализированные решения:
- uBlock Origin + фильтр “WebAssembly blocker” — добавьте вручную фильтр:
||*/*.wasm$script,important. Он блокирует все .wasm-файлы. - NoScript — для продвинутых. Позволяет разрешать Wasm только на доверенных сайтах. Но требует внимания.
Важно: если вы используете uBlock Origin — не включайте «расширенные фильтры» без проверки. Некоторые из них могут сломать легитимные сайты (например, приложения на React или WebAssembly-игры).
2. Отключайте JavaScript на подозрительных сайтах
Если вы зашли на сайт, который не требует интерактива — например, статья, PDF, фото — отключите JavaScript. В Chrome: нажмите Ctrl+Shift+I → вкладка «Network» → поставьте галочку «Disable JavaScript».
Или используйте расширение Quick JavaScript Switcher — одна кнопка включает/выключает JS. На 90% сайтов с новостями и блогами он не нужен. И если JS выключен — WebAssembly не запустится.
3. Следите за трафиком
Откройте инструменты разработчика (F12) → вкладка «Network» → фильтр по «wasm». Если вы видите загрузку .wasm-файлов с неизвестных доменов (например, cdn[0-9].xyz, analytics[0-9].io) — это почти всегда майнинг.
Проверьте, что за домен возвращает этот файл. Введите его в Whois — если домен зарегистрирован 2 дня назад и не имеет сайта, кроме одного .wasm-файла — это майнер.
4. Используйте браузеры с защитой
Некоторые браузеры уже блокируют WebAssembly по умолчанию или предлагают опции:
- Brave — по умолчанию блокирует скрипты майнинга, включая WebAssembly.
- Firefox + uBlock Origin — самая надёжная комбинация для защиты.
- Opera — встроенная блокировка криптомайнеров (в настройках → «Блокировка рекламы»).
Chrome и Edge — хуже. Они не блокируют WebAssembly, даже если вы включите «Защиту от вредоносных сайтов».
Частые ошибки — что не работает
Многие думают, что они защищены, а на самом деле — нет. Вот самые распространённые заблуждения:
- «У меня есть антивирус — я в безопасности» — антивирусы не смотрят на WebAssembly, пока он не начнёт писать файлы на диск. А майнеры этого не делают.
- «Я не скачиваю файлы — значит, всё ок» — WebAssembly работает прямо в памяти браузера. Никаких скачиваний не нужно.
- «Я использую AdBlock — он всё заблокирует» — стандартные фильтры AdBlock не трогают .wasm. Только специальные.
- «Это только на сомнительных сайтах» — в 2023 году майнеры внедряли WebAssembly на сайтах крупных СМИ, онлайн-магазинов и даже государственных порталах через уязвимости в рекламных сетях.
- «Я просто закрою вкладку — и всё» — если сайт использовал Service Worker, он может продолжать майнить даже после закрытия вкладки. Нужно перезагрузить браузер.
Ошибка №1 — думать, что «если ничего не вижу — значит, ничего не происходит». WebAssembly — это тихий вирус. Он не шумит. Он просто работает.
Что выбрать — сценарии для разных пользователей
Ваш выбор зависит от того, как вы используете интернет.
Сценарий 1: Вы просто читаете новости и смотрите видео
Решение: Установите Brave или Firefox + uBlock Origin. Включите блокировку скриптов на всех сайтах, кроме тех, где вы точно знаете, что они нужны (YouTube, Google Docs, банковские сайты).
Почему: вы не нуждаетесь в JavaScript. 95% новостных сайтов работают и без него. А риск майнинга — реален.
Сценарий 2: Вы работаете с веб-приложениями (Notion, Figma, Trello)
Решение: Используйте Chrome, но включите uBlock Origin с фильтром WebAssembly. Добавьте эти сайты в белый список. Для остальных — отключайте JavaScript через Quick JavaScript Switcher.
Почему: вы не можете отключить JS полностью — приложения сломаются. Но вы можете блокировать Wasm на всех остальных сайтах.
Сценарий 3: Вы используете мобильный телефон
Решение: Установите Brave Browser на iOS и Android. Он блокирует WebAssembly по умолчанию. Не используйте Chrome на телефоне — он не защищён.
Почему: мобильные устройства слабее. Майнинг на них быстрее разряжает батарею и нагревает устройство. Brave — единственный браузер, который решает эту проблему без настроек.
Сценарий 4: Вы администратор сайта
Решение: Проверяйте все сторонние скрипты. Если вы используете рекламу — требуйте от партнёров отчёт о коде. Запрещайте загрузку .wasm-файлов через CSP (Content Security Policy):
Content-Security-Policy: script-src 'self'; object-src 'none';
Если вы внедряете WebAssembly — делайте это только для своих сервисов, не для монетизации. Пользователи это чувствуют и уходят.
Как лучше сделать — практический чек-лист
Вот что нужно сделать прямо сейчас, чтобы защититься от cryptojacking через WebAssembly:
- Установите uBlock Origin (если ещё не установлен).
- Добавьте в его фильтры:
||*/*.wasm$script,important(в настройках → «Фильтры» → «Пользовательские фильтры»). - Установите Quick JavaScript Switcher — и используйте его, когда заходите на сайты без интерактива.
- Перейдите на Brave или Firefox — если используете Chrome.
- Каждую неделю проверяйте: в диспетчере задач — загрузка CPU от браузера? В инструментах разработчика — есть ли .wasm-файлы?
- Если нашли подозрительный сайт — сообщите о нём через Google Safe Browsing или PhishTank.
Это не сложнее, чем обновлять пароль раз в 3 месяца. Но эффективнее.
Итог: что делать прямо сейчас
Cryptojacking через WebAssembly — это не теория. Это реальная угроза, которая работает на ваших устройствах, пока вы читаете новости или смотрите видео. Он не требует взлома. Он не требует ваших данных. Он просто использует ваш процессор — и вы даже не знаете, что это происходит.
Вы не можете полностью исключить риск. Но вы можете сделать его почти нулевым.
Вот ваш план на сегодня:
- Установите uBlock Origin + фильтр WebAssembly.
- Переключитесь на Brave или Firefox.
- Отключайте JavaScript на сайтах, где он не нужен.
- Проверяйте загрузку CPU раз в неделю.
Если вы сделаете это — вы защитите не только батарею и производительность. Вы защитите себя от того, чтобы стать незаметной частью чужой криптовалютной фермы.
Не ждите, пока что-то сломается. Делайте это сейчас. Потому что в следующий раз вы можете не заметить, что майнер работает уже 3 часа — и батарея села до 5%.
Информация в этой статье носит ознакомительный характер. При подозрении на заражение устройства или утечке данных рекомендуется обратиться к специалисту по кибербезопасности.
