Критическая уязвимость в библиотеке node-tar для Node.js угрожает целостности файловых систем

vulnerability

В Банке данных угроз безопасности информации (BDU) зарегистрирована новая серьезная уязвимость под идентификатором BDU:2026-01713. Проблема затрагивает популярную библиотеку "node-tar", широко используемую в экосистеме Node.js для работы с архивами. Уязвимость, получившая идентификатор CVE-2026-23950, сочетает в себе несколько опасных техник и может позволить злоумышленнику удаленно изменять и записывать произвольные файлы на целевой системе.

Детали уязвимости

Суть уязвимости кроется в комбинации нескольких ошибок. Во-первых, это некорректная обработка данных с кодированием Unicode (CWE-176). Во-вторых, присутствует уязвимость типа "межсайтовая подделка запроса" (Cross-Site Request Forgery, CSRF). Кроме того, существует условие типа "время проверки - время использования" (Time-of-check Time-of-use, TOCTOU). В результате злоумышленник может, взаимодействуя с приложением, использующим уязвимую версию "node-tar", манипулировать путями к файлам. Это может привести к записи вредоносного содержимого в критически важные системные каталоги, минуя предполагаемые ограничения.

Уровень опасности классифицирован как высокий. Базовый балл по шкале CVSS 3.1 достигает 8.8. Вектор атаки предполагает сетевой доступ, низкую сложность эксплуатации и не требует привилегий. Однако для успешной атаки необходимо участие пользователя, например, переход по специально созданной ссылке. При этом воздействие может распространяться на другие компоненты безопасности.

Подверженными признаны версии библиотеки "node-tar" до 7.5.3 включительно. Важно отметить, что уязвимость также затрагивает несколько основных веток среды выполнения Node.js. В частности, это версии 20.20.0, 22.22.0, 24.13.0 и 25.3.0, поскольку они могут поставляться или зависеть от уязвимых релизов "node-tar". Следовательно, под угрозой оказывается огромное количество серверных приложений и инструментов по всему миру.

Производитель, сообщество Node.js, уже подтвердил наличие проблемы. Более того, в открытом доступе существует рабочий эксплойт, что значительно повышает актуальность угрозы. Техники эксплуатации, согласно классификации MITRE ATT&CK, включают подмену при взаимодействии (T1465), манипулирование сроками и состоянием (T1489) и манипулирование структурами данных (T1485). Успешная атака может стать первым шагом для достижения устойчивости (persistence) в системе или развертывания шифровальщика (ransomware).

Главная и единственная рекомендуемая мера по устранению - немедленное обновление программного обеспечения. Разработчики библиотеки "node-tar" выпустили патч. Исправление доступно в коммите "3b1abfae650056edfabcbe0a0df5954d390521e6" в репозитории GitHub. Соответственно, необходимо обновить библиотеку "node-tar" до версии 7.5.4 или выше. Также важно проверить и обновить саму среду Node.js до последних стабильных версий в соответствующих ветках поддержки.

Для администраторов и DevOps-инженеров критически важно просканировать свои проекты на предмет зависимостей от уязвимой библиотеки. Это можно сделать с помощью стандартных менеджеров пакетов, таких как npm, используя команды типа "npm audit". Кроме того, рекомендуется пересмотреть политики контроля целостности файлов и настроек прав доступа в рабочих средах. Мониторинг подозрительной активности на уровне файловой системы также может помочь в раннем обнаружении инцидентов.

Данный случай ярко иллюстрирует классические риски в цепочке поставок программного обеспечения. Популярная библиотека, входящая в зависимости тысяч проектов, становится единой точкой отказа. Поэтому регулярный аудит зависимостей и своевременное применение обновлений безопасности должны быть неотъемлемой частью жизненного цикла разработки и эксплуатации любого современного приложения. Игнорирование таких уязвимостей может привести к компрометации данных, нарушению работы сервисов и значительным финансовым и репутационным потерям.

Ссылки

Комментарии: 0