NPM-пакет с миллионными загрузками можно угнать из-за уязвимости

В популярном npm-пакете с 3,5 млн еженедельных загрузок нашли уязвимость, которая может привести к перехвату учётной записи. О проблеме рассказали исследователи из компании Illustria, которым удалось с помощью бага сбросить пароль GitHub-аккаунта.

«Контроль над пакетом можно перехватить, восстановив истёкшее доменное имя одного из мейнтейнеров и сбросив пароль», — гласит отчёт Illustria.

Как правило, защитные механизмы npm позволяют использовать только один адрес электронной почты аккаунта. Тем не менее специалистам Illustria удалось восстановить пароль от целевой учётной записи с помощью интересной лазейки.

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

Атакующим может помочь функциональность GitHub Action, подразумевающая, что в репозитории изменённые версии пакетов будут публиковаться автоматически при изменении кода.

«Даже если для аккаунта мейнтейнера настроена двухфакторная аутентификация, токен автоматизации обойдёт её», — объясняет Богдан Кортнов, сооснователь Illustria.

 

Illustria пока не раскрывает имя пакета, но уже сообщила ответственным лицам о проблеме.

Подписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.