Критическая уязвимость в node-netmask затрагивает 279 тысяч приложений

Критическая уязвимость в node-netmask затрагивает 279 тысяч приложений

Критическая уязвимость в node-netmask затрагивает 279 тысяч приложений

В популярном npm-пакете node-netmask выявлена уязвимость, позволяющая обойти ограничение доступа к IP-адресам и провести атаку SSRF, RFI или LFI на приложение на базе Node.js. Проблема устранена с выпуском версии 2 продукта.

Библиотека netmask выполняет парсинг IP-адресов при обращении к сетевым ресурсам через приложение. На этот компонент полагаются свыше 279 тыс. проектов на GitHub; из репозитория npm его еженедельно скачивают по 3 млн раз и более.

Уязвимость в netmask, получившая идентификатор CVE-2021-28918, вызвана ошибкой в реализации проверки входных данных и проявляется при обработке IP-адресов смешанного формата.

Согласно спецификациям IETF, адреса IPv4 в текстовом виде могут быть представлены в различных форматах, в том числе в десятичном и восьмеричном. В последнем случае строковое значение адреса начинается с нуля — например, 0150.0024.0073.0321, что соответствует более привычному 104.20.59.209. Основные браузеры обычно отслеживают префикс «0» в адресной строке и автоматически совершают перевод IP-адреса в десятичный формат.

Как оказалось, netmask эту особенность не учитывает и попросту отбрасывает начальный 0, обрабатывая все части адреса как десятичные числа. Злоумышленник может, например, запросить ресурс, указав IP-адрес как 0177.0.0.1 (эквивалентно 127.0.0.1 — кольцевому адресу, возвращающему к локальному хост-компьютеру), и уязвимый модуль обработает его как внешний адрес 177.0.0.1. В итоге использующее netmask приложение не уловит тождества 0177.0.0.1 и 127.0.0.1 и загрузит ресурс в обход возможных запретов.

Точно так же при обращении к приложению на базе Node.js автор атаки может указать localhost-адрес как 0127.0.0.1 (соответствует десятичному 87.0.0.1). Модуль netmask обработает его как публичный 127.0.0.1, и искомый доступ будет получен.

 

Уязвимость в netmask позволяет также обойти проверку разрешений на доступ к интранет-адресам, VPN, контейнерам и узлам локальной сети путем ввода IP-адреса 012.0.0.1 (10.0.0.1), который netmask воспримет как 12.0.0.1 (публичный).

Обнаружившие проблему исследователи отметили, что она «катастрофична», так как возможность манипуляции значениями IP-адресов на уровне ввода грозит атаками типа RFI (Remote File Inclusion, динамическое подключение файлов с других серверов), LFI (Local File Inclusion, включение в цепочку выполнения локальных файлов) и SSRF (подмена адресов на стороне сервера).

Патч для netmask вышел десять дней назад в составе сборки 2.0.0 пакета; разработчикам приложений настоятельно рекомендуется обновить зависимости в коде.

500 тыс. аккаунтов в VK утекли из-за вредоносного аддона для Chrome

Исследователи раскрыли масштабную вредоносную кампанию с участием расширений для Chrome, которая затронула более 500 тысяч аккаунтов во «ВКонтакте». Под видом безобидных инструментов для оформления профиля злоумышленник годами продвигал расширения, которые на деле превращали браузер жертвы в часть управляемой инфраструктуры.

Одним из самых популярных дополнений было VK Styles Themes for vk.com — расширение с примерно 400 тысячами установок и положительными отзывами.

Формально оно меняло оформление соцсети. А фактически внедряло код на каждую посещаемую страницу VK и подключалось к скрытой системе управления.

Расследование началось с того, что специалисты заметили подозрительную вставку рекламных скриптов «Яндекса» на страницах пользователей. При дальнейшем анализе выяснилось, что расширение использовало динамически вычисляемый идентификатор счётчика, чтобы обходить статические проверки.

Это стало отправной точкой для обнаружения ещё четырёх связанных расширений — в общей сложности около 502 тысяч установок. Два из них уже удалены из Chrome Web Store.

Архитектура оказалась многоступенчатой и довольно изобретательной. Расширение не содержало жёстко прописанных адресов серверов управления. Вместо этого оно обращалось к обычному профилю во «ВКонтакте» — vk.com/m0nda — и извлекало оттуда закодированные параметры из HTML-метатегов. Далее загружался следующий этап вредоносного кода с Pages (аккаунт 2vk, репозиторий с лаконичным названием «-»), а также подключались рекламные скрипты.

 

По сути, обычный VK-профиль выполнял роль командного центра (C2), а GitHub — площадки для размещения полезной нагрузки. Такая схема усложняет блокировку: трафик к VK и GitHub выглядит легитимным.

 

Кампания активна как минимум с июня 2025 года и эволюционировала до января 2026-го. По истории коммитов видно, что автор последовательно расширял функциональность: от манипуляций с CSRF-cookie и работы с VK API до автоматической подписки пользователей на нужную группу с вероятностью 75% при каждом заходе во «ВКонтакте».

В результате заражённые аккаунты автоматически вступали в группу -168874636 (сообщество VK Styles), которая сейчас насчитывает более 1,4 млн подписчиков. Кроме того, расширение каждые 30 дней сбрасывало настройки пользователя — сортировку ленты, тему сообщений и другие параметры, чтобы сохранять контроль.

 

Также код вмешивался в работу защитных механизмов VK, изменяя cookie remixsec_redir, что позволяло выполнять действия от имени пользователя так, будто они инициированы легитимно. Отдельный модуль отслеживал статус подписки VK Donut и в зависимости от этого активировал или ограничивал определённые функции, то есть схема имела и элемент монетизации.

Главная особенность кампании — гибкость. Поскольку логика загружалась динамически через профиль VK и GitHub, злоумышленник мог менять поведение аддона без обновления самого пакета в магазине. А так как Chrome-расширения обновляются автоматически, новая вредоносная логика быстро распространялась на сотни тысяч устройств.

Пресс-служба «ВКонтакте» прокомментировала:

«Все данные пользователей "ВКонтакте" надёжно защищены. Сторонние расширения не имеют доступа к персональной информации или управлению аккаунтом без согласия пользователя. Мы рекомендуем не устанавливать подобные сервисы и расширения для работы с социальной сетью: они могут использоваться недобросовестными разработчиками».

RSS: Новости на портале Anti-Malware.ru