npm Worm краде криптографічні ключі, націлюється на 19 пакетів

LiveBTCNews
BTC-4,8%
ETH-5,08%
SOL-4,63%

Самовідтворюваний черв’як npm під назвою SANDWORM_MODE вражає понад 19 пакетів, збираючи приватні ключі, мнемоніки BIP39, файли гаманців та API-ключі LLM із середовищ розробки.

Жива атака на ланцюг поставок npm зараз охоплює середовища розробників. Команда Threat Research від Socket виявила те, що вона позначає як SANDWORM_MODE — самовідтворюваний черв’як, що поширюється щонайменше на 19 зловмисних пакетів npm, пов’язаних із двома псевдонімами видавців. Як повідомила SocketSecurity у X, це активна атака на ланцюг поставок, яка краде секрети розробників і CI, вставляє робочі процеси GitHub, отруює інструменти штучного інтелекту та збирає API-ключі LLM.

Кампанія безпосередньо запозичує з родини черв’яків Shai-Hulud. Спершу йдуть приватні ключі. Без будь-яких часових обмежень, без затримки. Виявлені криптоартефакти при імпорті негайно ексфільтруються через спеціальний канал drain перед запуском будь-якого іншого етапу шкідливого коду.

Вам потрібно знати: Загрози безпеці гаманців посилюються Обов’язково до прочитання: Злом безпеки Wallet Trust: Як захистити свої активи

Як цей черв’як спершу отримує доступ до ваших приватних ключів

Черв’як має двоступеневу архітектуру. Перший етап активується миттєво при імпорті, збираючи токени npm, токени GitHub, секрети середовища та криптоключі лише через читання файлів. Без виконання команд у оболонці, без шуму. Мнемоніки BIP39, приватні ключі Ethereum, байтові масиви Solana, ключі WIF Bitcoin та рядки xprv — все це збирається у перший прохід.

Криптоключі негайно залишають машину через HTTPS POST на Cloudflare Worker за адресою pkg-metrics[.]official334[.]workers[.]dev/drain. Це відбувається до будь-якої перевірки часових обмежень, навіть до завантаження другого етапу.

Другий етап має затримку у 48 годин, яка базується на MD5-хеші імені хоста та імені користувача. Він йде глибше: зчитування менеджерів паролів через Bitwarden, 1Password і LastPass CLI, локальні сховища SQLite, включаючи Apple Notes і Messages macOS, а також повне сканування файлової системи на предмет файлів гаманців. У середовищах CI ця затримка повністю зникає. Повний шкідливий пакет активується без будь-яких затримок на GITHUB_ACTIONS, GITLAB_CI, CIRCLECI, JENKINS_URL і BUILDKITE.

За даними SocketSecurity у X, черв’як також вставляє робочі процеси GitHub і отруює інструменти штучного інтелекту, що підтверджено у повній технічній розкритті Socket.

Також варто прочитати: $21М у конфіскованому Bitcoin повернули після замороження транзакцій владою

Штучний інтелект та інструменти кодування теж постраждали

Три пакети імітують Claude Code. Один з них націлений на OpenClaw — агент штучного інтелекту, що набрав понад 210 000 зірок на GitHub. Модуль McpInject черв’яка розгортає підробний сервер MCP у конфігураціях Claude Code, Claude Desktop, Cursor, VS Code Continue і Windsurf на диску. Кожен отримує фальшиву команду інструменту, що вказує на прихований зловмисний сервер.

Цей сервер містить вбудовану ін’єкцію підказок, яка наказує AI-асистентам мовчки зчитувати SSH-ключі, облікові дані AWS, токени npm та секрети середовища перед кожним викликом інструменту. Модель ніколи не повідомляє користувача. Ін’єкція явно блокує таку можливість.

Цільовими для збору API-ключів стали дев’ять провайдерів LLM: OpenAI, Anthropic, Google, Groq, Together, Fireworks, Replicate, Mistral і Cohere. Ключі витягуються з змінних середовища та файлів .env, перевіряються на відповідність відомим форматам перед ексфільтрацією.

Витік відбувається через три канали у каскаді: HTTPS до Cloudflare Worker, потім автентифіковані завантаження через API GitHub у приватні репозиторії з використанням подвійного кодування base64, і DNS-тунелювання через запити з кодуванням base32 до freefan[.]net і fanfree[.]net. Алгоритм генерації доменів, ініційований “sw2025”, забезпечує резервний варіант через десять TLD, якщо все інше не спрацює.

Це варто подивитися: Glassnode позначає виснаження попиту на BTC

Два псевдоніми видавців, що стоять за кампанією, — official334 і javaorg. Підтверджені 19 зловмисних пакетів включають suport-color@1.0.1, claud-code@0.2.1, cloude@0.3.0, crypto-locale@1.0.0, secp256@1.0.0 і scan-store@1.0.0. Серед додаткових “сплячих” пакетів — ethres, iru-caches, iruchache і uudi — поки що без зловмисного навантаження.

npm видалив зловмисні пакети. GitHub зняв інфраструктуру зловмисника. Cloudflare зупинив воркерів. Але захисникам потрібно діяти вже зараз.

Якщо будь-який із цих пакетів працював у вашому середовищі, вважайте машину скомпрометованою. Змініть токени npm і GitHub, змініть усі секрети CI, перевірте файли .github/workflows на наявність додавання pull_request_target, що серіалізує ${}secrets. Перевірте глобальні налаштування шаблонів git за допомогою git config –global init.templateDir. Перегляньте конфігурації AI-асистента на предмет несподіваних записів у mcpServers. Вбудований у черв’яка поліморфний движок deepseek-coder:6.7b наразі вимкнений, але у майбутніх версіях він може переписати себе для уникнення виявлення.

У коді також є “мертва” перемикач, наразі вимкнений. При активації він виконує команду find ~ -type f -writable і знищує всі записані файли у домашній директорії. Оператор все ще працює над цим.

Переглянути оригінал
Застереження: Інформація на цій сторінці може походити від третіх осіб і не відображає погляди або думки Gate. Вміст, що відображається на цій сторінці, є лише довідковим і не є фінансовою, інвестиційною або юридичною порадою. Gate не гарантує точність або повноту інформації і не несе відповідальності за будь-які збитки, що виникли в результаті використання цієї інформації. Інвестиції у віртуальні активи пов'язані з високим ризиком і піддаються значній ціновій волатильності. Ви можете втратити весь вкладений капітал. Будь ласка, повністю усвідомлюйте відповідні ризики та приймайте обережні рішення, виходячи з вашого фінансового становища та толерантності до ризику. Для отримання детальної інформації, будь ласка, зверніться до Застереження.
Прокоментувати
0/400
Немає коментарів