Mazda CX5
Як зробити цифрову копію себе. Ось відео —>

Зловмисник заразив популярний npm-пакет із понад 150 000 завантажень на тиждень. Як шкідливе ПЗ крало токени та заражало інші проєкти?

У популярний інструмент для розробників підклали шкідливий код. Дослідники Aikido виявили одразу десять заражених версій npm-пакета @7nohe/openapi-react-query-codegen, який завантажують понад 150 000 разів на тиждень. Після встановлення він міг шукати на комп’ютері ключі та токени доступу, а потім використовувати їх, щоб поширюватися на інші проєкти.

Залишити коментар
Зловмисник заразив популярний npm-пакет із понад 150 000 завантажень на тиждень. Як шкідливе ПЗ крало токени та заражало інші проєкти?

У популярний інструмент для розробників підклали шкідливий код. Дослідники Aikido виявили одразу десять заражених версій npm-пакета @7nohe/openapi-react-query-codegen, який завантажують понад 150 000 разів на тиждень. Після встановлення він міг шукати на комп’ютері ключі та токени доступу, а потім використовувати їх, щоб поширюватися на інші проєкти.

Про це повідомляє компанія Aikido, що займається кібербезпекою. Сам розробник пакета також опублікував попередження на GitHub, де інцидент отримав критичну оцінку — 9,6 з 10. 

Цей пакет — інструмент для React-розробників. Він допомагає їм автоматично створювати код для роботи з API через TanStack Query, популярну бібліотеку для React. Вона спрощує отримання даних із сервера. Наприклад, завантаження списку товарів, профілю користувача чи повідомлень через API. Вона також допомагає керувати завантаженням, кешуванням і повторним оновленням цих даних. Тож розробник може додати такий пакет до свого проєкту, а разом із ним автоматично встановиться чужий код.

Проблема виявилася в автоматизації випуску нових версій через GitHub Actions — систему, яка може самостійно виконувати різні дії з кодом, зокрема збирати та публікувати нові версії пакета.

Один із таких сценаріїв був налаштований небезпечно. Сторонній користувач міг залишити спеціальний коментар під pull request і запустити процес, який виконував код із цього pull request і мав право опублікувати нову версію пакета. Цим і скористався зловмисник. Він додав шкідливий код і через офіційну систему проєкту опублікував заражені версії пакета в npm — каталозі, звідки розробники встановлюють такі інструменти у свої проєкти. Через це вони навіть мали справжні підтвердження походження.

Заражений пакет був фактично крадієм облікових даних. Він шукав на комп’ютері розробника все, що могло дати доступ до інших сервісів і проєктів. Наприклад:

  • токени GitHub, npm, PyPI та RubyGems;
  • ключі AWS, Azure і Google Cloud;
  • SSH-ключі;
  • файли .env, де часто зберігають паролі й API-ключі;
  • доступи до Kubernetes і HashiCorp Vault;
  • конфігурації Docker та Git;
  • дані криптогаманців;
  • дані сесій Signal, Telegram, Discord і Slack;
  • файли конфігурації Claude.

До того ж, якщо шкідливе ПЗ знаходило токен, який дозволяв публікувати npm-пакети, воно шукало інші пакети цього користувача, додавало до них свій код і публікувало нові заражені версії. Так само він міг поширюватися через PyPI та RubyGems — каталоги пакетів для інших мов програмування. Із GitHub-акаунтами схема була схожою. Після отримання токенів, шкідливе ПЗ заходило в доступні користувачу репозиторії та додавало туди файли, здатні запускати шкідливий код у різних інструментах розробника.

Дослідники вже опублікували ознаки, за якими можна перевірити систему на зараження. Зокрема, в корені пакета може бути файл 3FWCvzduYZg.js, а в системній тимчасовій папці — директорії, назви яких починаються з trinnyyyy-.

Раніше dev.ua писав про схожу атаку на TanStack. Тоді зловмисники скористалися вразливістю в GitHub Actions і змогли опублікувати в npm десятки заражених версій пакетів.

Одна з найпопулярніших бібліотек JavaScript Axios виявилася зараженою трояном
Одна з найпопулярніших бібліотек JavaScript Axios виявилася зараженою трояном
По темi
Одна з найпопулярніших бібліотек JavaScript Axios виявилася зараженою трояном
Понад 29 000 завантажень: через підробний інструмент OpenAI Codex у репозиторії npm масово викрадали токени автентифікації
Понад 29 000 завантажень: через підробний інструмент OpenAI Codex у репозиторії npm масово викрадали токени автентифікації
По темi
Понад 29 000 завантажень: через підробний інструмент OpenAI Codex у репозиторії npm масово викрадали токени автентифікації
Читайте головні IT-новини країни в нашому Telegram
Читайте головні IT-новини країни в нашому Telegram
По темi
Читайте головні IT-новини країни в нашому Telegram
Читайте також
Як ламають відео-ігри та викладають їхні піратські копії? Розповідає програміст
Як ламають відео-ігри та викладають їхні піратські копії? Розповідає програміст
Як ламають відео-ігри та викладають їхні піратські копії? Розповідає програміст
Що, юний хакер, тобі цікаво, які ігри ще досі не крякнули? Тоді мерщій читай цю статтю. Нижче ми розглянемо, які технології використовуються для захисту ігор від злому. Також не пройдемо повз рекордсменів. Дізнаємося про рекордний час, за який вдалося зламати гру. Та розглянемо справжніх «міцних горішків».
6 коментарів
Шахраї грабують українців від імені «Дії» та Зеленського: перелік сайтів
Шахраї грабують українців від імені «Дії» та Зеленського: перелік сайтів
Шахраї грабують українців від імені «Дії» та Зеленського: перелік сайтів
4 коментарі
Кіберполіцейські розробили онлайн-гру, що допоможе дітям виробити навички безпечної поведінки в інтернеті: як скачати
Кіберполіцейські розробили онлайн-гру, що допоможе дітям виробити навички безпечної поведінки в інтернеті: як скачати
Кіберполіцейські розробили онлайн-гру, що допоможе дітям виробити навички безпечної поведінки в інтернеті: як скачати
6 коментарів
Пишуть, що Signal зламали. Насправді - ні. Як захистити дані в месенджері - поради експерта з кібербезпеки
Пишуть, що Signal зламали. Насправді - ні. Як захистити дані в месенджері - поради експерта з кібербезпеки
Пишуть, що Signal зламали. Насправді - ні. Як захистити дані в месенджері - поради експерта з кібербезпеки
3 коментарі

Хочете повідомити важливу новину? Пишіть у Telegram-бот

Головні події та корисні посилання в нашому Telegram-каналі

Обговорення
Коментарів поки немає.