Неизвестные попытались спрятать бэкдор в популярном пакете npm

Неизвестные попытались спрятать бэкдор в популярном пакете npm

Бэкдор позволял атакующему добавлять на запущенный сервер произвольный код и выполнять его.

Разработчикам менеджера пакетов Node Package Manager (npm) удалось избежать катастрофы, своевременно обнаружив и заблокировав распространение бэкдора, хитроумно спрятанного в популярном пакете (библиотеке) для JavaScript.

Изначально бэкдор был обнаружен в «getcookies» - сравнительно новом пакете npm для работы с файлами cookie в браузере. Получив жалобы от сообщества npm, разработчики изучили пакет и обнаружили в нем сложный механизм получения команд от удаленного злоумышленника, способного атаковать любое приложение, где используется «getcookies».

С помощью синтаксического анализа заголовков HTTP-запросов, отправляемых пользователем, бэкдор искал особым образом отформатированные данные с тремя разными командами. Как пояснили разработчики npm, бэкдор позволял атакующему добавлять на запущенный сервер произвольный код и выполнять его.

Поскольку «getcookies» является сравнительно новой библиотекой, она используется лишь в небольшом количестве проектов. Однако разработчики npm обнаружили встроенную цепочку зависимостей, через которую пакет «getcookies» косвенно попал в структуру популярной библиотеки «Mailparser».

«Mailparser» - пакет npm для синтаксического анализа данных электронных писем с использованием JavaScript. Библиотека является устаревшей и в настоящее время вместо нее предпочтение отдается более новой «Nodemailer». Тем не менее, «Mailparser» не была исключена из npm, так как ее до сих пор используют более старые приложения. В среднем «Mailparser» загружается порядка 66 тыс. раз в неделю.

Alert! Зафиксирована утечка экспертных знаний!

Собираем и анализируем опыт профессионалов ИБ

Подключитесь к потоку конфиденциальной информации!