Команда безопасности npm предупредила пользователей о том, что одни из самых популярных пакетов (coa и rc) были захвачены злоумышленником, который выпустил новые версии, содержащие малварь для кражи паролей, пишет Хакер.
Библиотека coa (сокращение от Command-Option-Argument) начитывает около 9 000 000 загрузок в неделю на npm и используется почти 5 000 000 опенсорсных репозиториев на GitHub. В свою очередь библиотеку rc в среднем загружают 14 000 000 раз в неделю.
Оба пакета были взломаны примерно в одно и то же время, так как злоумышленники получили доступ к учетным записям разработчиков. После компрометации, злоумышленники добавили к исходной кодовой базе пакетов post-install скрипт, который запускал обфусцированный TypeScript, проверявший информацию о системе и загружавший batch-файл для Windows или bash-скрипт для Linux.
Судя по деобфусцированной версии этого batch-файла, взломанные пакеты загружали и запускали sdd.dll, который, по данным Windows Defender и других защитных продуктов, содержал вариацию трояна Qakbot или Danabot. Такая малварь ворует пароли и данные карт из браузеров, учетные данные из почтовых и FTP-клиентов, а также других приложений, может работать как кейлоггер, делать снимки экрана и так далее.
Сначала была обнаружена компрометация coa, так как неожиданно появившиеся новые версии пакета, который не обновлялся много лет (последняя стабильная версия 2.0.2 вышла в декабре 2018 года), вызвали немало проблем, связанных с пайплайном React по всему миру. В итоге работа многих пакетов React, зависящих от coa, была нарушена. Вскоре после этого заметили и компрометацию rc, так как ранее библиотека не обновлялась с 2015 года.
Представители npm сообщили, что скомпрометированные учетные записи были оперативно отключены, взломанные версии библиотек удалены, и теперь ведется расследование инцидента.
Так как атака могла оказать широкое воздействие на цепочку поставок, всем пользователям библиотек coa и rc настоятельно рекомендуется проверить свои проекты на наличие малвари. В частности, рекомендует искать файлы compile.js, compile.bat, sdd.dll и удалить их, если таковые обнаружены. Также пострадавшим рекомендуется считать свое устройство полностью скомпрометированным, изменить все пароли и ключи, а также обновить токены.
Нажимая на кнопку, я даю Согласие на обработку персональных данных в соответствии с Политикой обработки.