В NPM обнаружены три уязвимости, которые исправлены в NPM 6.13.4.

Разработчики кто отвечает за проект из диспетчера пакетов NPM, выпущен недавно выпущенный исправление для NPM 6.13.4 включен в поставку Node.js и используется для распространения модулей JavaScript.

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

CVE-2019-16775

Эта уязвимость влияет на версии NPM CLI до 6.13.3, хорошо ты они уязвимы для произвольной записи файлов. Пакеты могут создавать символические ссылки на файлы вне папки. node_modules через поле bin после установки.

Правильно построенная запись в поле bin package.json позволит редактору пакетов создать символическую ссылку, указывающую на произвольные файлы в системе пользователя при установке пакета. Такое поведение по-прежнему возможно с помощью сценариев установки.

CVE-2019-16776

В этой уязвимости На версии NPM CLI до 6.13.3 влияет запись в произвольный файл. Поскольку вы не можете предотвратить доступ к папкам за пределами предполагаемой папки node_modules через поле bin.

Правильно созданная запись в поле bin package.json позволит редактору пакетов изменять и получать доступ к произвольным файлам в системе пользователя при установке пакета. Такое поведение по-прежнему возможно с помощью сценариев установки.

Пути с "/../" были разрешены в поле bin

CVE-2019-16777

Наконец, Версии NPM CLI до 6.13.4 уязвимы для этой уязвимости. в произвольный файл перезаписать. Поскольку вы не можете запретить другим двоичным файлам перезаписывать существующие глобально установленные двоичные файлы.

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

Вы можете заменять файлы только в том каталоге, в котором установлены исполняемые файлы (обычно / usr, / local, / bin).

Хотя важным фактором для этих уязвимостей является то, что человек, который хочет использовать эти уязвимости, должен будет заставить свою жертву установить пакет со специально разработанной записью bin. Однако, как мы видели в прошлом, это не непреодолимое препятствие.

Команда безопасности npm, Inc. провела сканирование реестра на предмет наличия примеров этой атаки и не нашла никаких пакетов, опубликованных в реестре с этим эксплойтом. Это не гарантирует, что он не использовался, но это означает, что он в настоящее время не используется в пакетах, опубликованных в реестре.

Мы продолжим отслеживать и принимать меры для предотвращения использования злоумышленниками этой уязвимости в будущем. Однако мы не можем сканировать все возможные источники пакетов npm (частные реестры, зеркала, репозитории git и т. Д.), Поэтому важно выполнить обновление как можно скорее.

Поиск проблемы

В качестве основного решения рекомендуется выполнить обновление до новой корректирующей версии, так как библиотеки синтаксического анализа package.json, используемые в NPM v6.13.3, были обновлены таким образом, чтобы очистить и проверить все записи в поле bin, чтобы удалить переадресацию. сокращает инициалы, записи маршрута и другие средства выхода из маршрута, используя хорошо протестированную и высоконадежную утилиту маршрутизации, встроенную в Node.js.

Хотя, в качестве обходного пути его можно установить с опцией –Ignore-scripts, который запрещает запуск встроенных пакетов драйверов.

Без лишних слов, если вы хотите узнать больше об ошибках, вы можете проверить подробности в сообщении блога npm По следующей ссылке.

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

 


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.