Уязвимость в NPM позволяет похитить файлы

Уязвимость в NPM позволяет похитить файлы

Проблема затрагивает версии NPM до 6.13.3, а также версии альтернативного NPM-клиента Yarn младше релиза 1.21.1.

Разработчики пакетного менеджера NPM устранили опасную уязвимость в наборе инструментов командной строки, позволяющую злоумышленникам модифицировать файлы на системе пользователя при установке пакета. Проблема затрагивает версии NPM до 6.13.3, а также версии альтернативного NPM-клиента Yarn младше релиза 1.21.1.

Уязвимость может быть проэксплуатирована путем создания записи в поле 'bin' package.json. В результате атакующий получит возможность изменить и/или получить доступ к произвольным файлам на системе пользователя при установке пакета, пояснила команда проекта.

Данная проблема оказалась не единственной. Разработчик Дэниэл Раф (Daniel Ruf) обнаружил в NPM уязвимость, предоставляющую возможность создавать произвольные символические ссылки на любой файл. Как пояснил Раф, версии NPM до 6.13.3, а также все текущие версии Yarn позволяют перезаписать существующие бинарные файлы, но только в каталоге /usr/local/bin.

По словам разработчика, эксплуатация не потребует значительных усилий. Процесс будет выглядеть примерно так:

"bin": {
          "../some/path": "../some/other/path"
         }

Раф также разработал PoC-код, который записывает или перезаписывает произвольные файлы и предоставляет неавторизованный доступ к файлам.

Мы клонировали интересный контент!

Никаких овечек — только отборные научные факты

Размножьте знания — подпишитесь