Cacing Mini Shai-Hulud
Aktor ancaman yang dikenali sebagai TeamPCP telah dikaitkan dengan kempen serangan rantaian bekalan yang canggih yang menyasarkan pakej npm dan PyPI yang digunakan secara meluas yang berkaitan dengan TanStack, UiPath, Mistral AI, OpenSearch, Guardrails AI dan beberapa ekosistem lain. Operasi ini, yang dikaitkan dengan kempen perisian hasad Mini Shai-Hulud yang sedang berkembang, menunjukkan peningkatan ketara dalam penyalahgunaan rantaian bekalan perisian dan teknik kompromi yang didorong oleh identiti.
Penyelidik mengenal pasti bahawa pakej npm berniat jahat telah diubah suai untuk memasukkan komponen JavaScript yang dikaburkan bernama router_init.js. Muatan ini memprofilkan persekitaran yang dijangkiti dan menggunakan pencuri kelayakan lanjutan yang menyasarkan penyedia awan, dompet mata wang kripto, alat pembangunan AI, platform pesanan, sistem CI/CD dan persekitaran GitHub Actions. Data yang diekstrak terutamanya dihantar ke domain filev2.getsession.org.
Penggunaan infrastruktur Protokol Sesi menonjolkan percubaan yang disengajakan untuk mengelak kawalan keselamatan perusahaan. Oleh kerana domain tersebut tergolong dalam platform pemesejan yang berfokus pada privasi yang terdesentralisasi, ia kurang berkemungkinan disekat oleh pertahanan rangkaian tradisional. Sebagai kaedah penyusupan sekunder, data yang disulitkan didedikasikan kepada repositori yang dikawal oleh penyerang melalui API GitHub GraphQL menggunakan token pengesahan GitHub yang dicuri di bawah identiti pengarang claude@users.noreply.github.com.
Isi kandungan
Mekanisme Kegigihan dan Perluasan Kecurian Kredensial
Perisian hasad ini memperkenalkan beberapa keupayaan kegigihan dan pengawasan yang direka untuk mengekalkan akses jangka panjang kepada persekitaran pembangunan yang terjejas. Cangkuk kegigihan diwujudkan di dalam Claude Code dan Microsoft Visual Studio Code, yang membolehkan perisian hasad bertahan selepas but semula sistem dan dilancarkan semula secara automatik setiap kali IDE dibuka.
Di samping itu, perkhidmatan gh-token-monitor digunakan untuk memantau dan mengeluarkan semula token GitHub secara berterusan. Dua aliran kerja Tindakan GitHub yang berniat jahat juga disuntik ke dalam repositori yang dikompromi. Aliran kerja ini menyiratkan rahsia repositori secara bersiri ke dalam format JSON dan memuat naik data ke titik akhir luaran api.masscan.cloud.
Kompromi TanStack terkini berbeza dengan ketara daripada insiden rantaian bekalan terdahulu. Daripada bergantung pada cangkuk prapasang, penyerang membenamkan fail JavaScript berniat jahat terus ke dalam tarball pakej sambil memperkenalkan kebergantungan pilihan yang dipautkan kepada pakej yang dihoskan oleh GitHub. Kebergantungan tersebut mengandungi cangkuk kitaran hayat persediaan yang melaksanakan muatan melalui persekitaran masa jalan Bun.
Pakej Mistral AI yang ditrojankan telah menggunakan strategi jangkitan lama dengan mengubah suai fail package.json dengan cangkuk prapasang yang memanggil node setup.mjs. Proses ini memuat turun Bun dan melaksanakan perisian hasad yang mencuri kelayakan yang sama.
CVE-2026-45321 dan Penyalahgunaan Penerbitan Dipercayai
Kompromi TanStack telah dikesan secara rasmi sebagai CVE-2026-45321 dan diberikan skor CVSS kritikal sebanyak 9.6. Penyiasat mengesahkan bahawa 42 pakej dan 84 versi dalam ekosistem TanStack telah terjejas.
Analisis mendedahkan bahawa kompromi itu berasal daripada serangan GitHub Actions berantai yang mengeksploitasi pencetus pull_request_target, keracunan cache GitHub Actions dan pengekstrakan masa jalan token OIDC daripada pelari GitHub Actions. Penyerang dilaporkan telah mementaskan muatan berniat jahat melalui komit yatim piatu dalam fork GitHub sebelum menyuntiknya ke dalam tarball pakej npm. Penyerang kemudian merampas aliran kerja TanStack/router yang sah untuk menerbitkan pakej yang dikompromi dengan pengesahan asal SLSA yang sah.
Perkembangan ini menandakan peningkatan bersejarah dalam serangan rantaian bekalan perisian. Pakej berniat jahat tersebut membawa tandatangan asal SLSA Build Level 3 yang sah, menjadikannya cacing npm pertama yang didokumenkan yang mampu mengedarkan pakej berniat jahat dengan pengesahan binaan yang sahih. Kempen perisian hasad kemudiannya berkembang melangkaui TanStack dan merebak ke dalam ekosistem yang diselenggara oleh UiPath, DraftLab dan pembangun lain.
Operasi ini menyalahgunakan aliran kerja penerbitan yang dipercayai dengan teruk. Daripada mencuri kelayakan npm secara langsung, kod kawalan penyerang yang berjalan di dalam saluran paip CI/CD yang dipercayai memanfaatkan kebenaran OIDC untuk mencetak token penerbitan jangka pendek semasa proses pembinaan. Ini membolehkan pakej berniat jahat diterbitkan melalui saluran paip keluaran yang sah sambil memintas perlindungan pengesahan konvensional.
Tingkah Laku Cacing yang Membiak Sendiri Menimbulkan Kebimbangan
Salah satu aspek paling berbahaya dalam kempen Mini Shai-Hulud ialah model penyebaran seperti cacing. Perisian hasad ini secara aktif mencari token npm yang boleh diterbitkan yang dikonfigurasikan dengan bypass_2fa=true, menyenaraikan pakej yang diselenggarakan oleh pembangun yang dikompromi dan menukar token GitHub OIDC untuk token penerbitan setiap pakej. Mekanisme ini membolehkan perisian hasad merebak secara lateral merentasi ekosistem pakej tanpa bergantung pada teknik pencurian kelayakan tradisional.
Serangan itu juga mengeksploitasi konfigurasi kepercayaan peringkat repositori dalam model penerbit dipercayai OIDC GitHub. Oleh kerana kepercayaan diberikan secara meluas pada peringkat repositori dan bukannya terhad kepada cabang yang dilindungi dan fail aliran kerja tertentu, pelaksanaan aliran kerja berniat jahat yang dicetuskan oleh komitmen yatim piatu dapat meminta token penerbitan npm yang sah.
Satu lagi keupayaan yang mengganggu melibatkan penggunaan 'suis orang mati'. Malware ini memasang skrip shell yang berulang kali menyemak titik akhir api.github.com/user setiap 60 saat untuk menentukan sama ada token npm yang dicipta oleh penyerang kekal aktif. Token ini membawa perihalan ancaman IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner.
Jika pembela membatalkan token melalui papan pemuka npm, perisian hasad akan melancarkan rutin pemusnah yang melaksanakan rm -rf ~/, dengan berkesan mengubah jangkitan menjadi perisian hasad pengelap. Tingkah laku agresif ini menunjukkan evolusi yang ketara dalam taktik operasi TeamPCP dan menunjukkan peningkatan kecanggihan dalam kaedah kegigihan paksaan. Oleh itu, pasukan keselamatan dinasihatkan untuk mengasingkan dan menggambarkan sistem yang dijangkiti sebelum membatalkan kelayakan npm yang dikompromi.
Pakej yang Terjejas dan Impak Ekosistem yang Berkembang
Kempen ini telah memberi kesan kepada lebih 170 pakej merentasi npm dan PyPI, secara kolektifnya menyumbang lebih 518 juta muat turun. Penyiasat juga mengenal pasti sekurang-kurangnya 400 repositori yang dicipta menggunakan kelayakan yang dicuri, semuanya mengandungi frasa 'Shai-Hulud: Here We Go Again.'
Pakej yang terjejas termasuk:
pagar pengadang-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-project/opensearch@3.5.3, 3.6.2, 3.7.0, 3.8.0
@squawk/mcp@0.9.5
@squawk/weather@0.5.10
@squawk/flightplan@0.5.6
@tallyui/penyambung-medusa@1.0.1, 1.0.2, 1.0.3
@tallyui/penyambung-penjual@1.0.1, 1.0.2, 1.0.3
Perisian hasad ini juga menggunakan pelbagai saluran penapisan berlebihan. Selain infrastruktur Protokol Sesi dan fail mati GitHub, kelayakan yang dicuri dihantar melalui domain typosquatted git-tanstack.com.
Perisian Hasad PyPI Memperkenalkan Logik Pemusnahan Geofenced
Varian perisian hasad berasaskan Python yang dikaitkan dengan pakej Mistral AI dan Guardrails AI yang berniat jahat jauh berbeza daripada muatan JavaScript yang diedarkan melalui npm. Pakej PyPI mistralai yang dikompromi memuat turun pencuri kelayakan daripada hos jauh 83.142.209.194.
Penyelidik mendapati bahawa perisian hasad Python mengandungi logik kesedaran negara yang direka untuk mengelakkan pelaksanaan dalam persekitaran bahasa Rusia. Ia juga termasuk mekanisme pemusnah geofenced yang memperkenalkan kebarangkalian satu dalam enam untuk melaksanakan rm -rf / jika sistem yang dijangkiti nampaknya terletak di Israel atau Iran.
Tingkah laku ini menunjukkan evolusi yang membimbangkan ke arah penggunaan muatan pemusnah yang peka terhadap rantau dalam ekosistem pakej sumber terbuka.
Ancaman Serangan Rantaian Bekalan Berasaskan Identiti yang Semakin Meningkat
Kempen Mini Shai-Hulud mencerminkan transformasi yang lebih luas dalam serangan rantaian bekalan moden. Daripada hanya menumpukan pada kompromi pakej, pelaku ancaman semakin menyasarkan identiti CI/CD yang dipercayai, aliran kerja penerbitan dan saluran automasi berasaskan awan.
Sebaik sahaja penyerang mendapat akses kepada infrastruktur penerbitan perisian, saluran pembangunan itu sendiri menjadi mekanisme pengedaran perisian hasad. Oleh kerana banyak tindakan berniat jahat berlaku melalui aliran kerja yang sah, pengesahan yang dipercayai dan sistem keluaran yang sah, kawalan keselamatan tradisional mungkin gagal mengenal pasti tingkah laku berniat jahat.
Ciri-ciri utama yang menentukan serangan rantaian bekalan generasi baharu ini termasuk:
- Penyalahgunaan penerbitan yang dipercayai dan mekanisme pertukaran token OIDC
- Penyebaran melalui aliran kerja CI/CD yang sah dan sistem binaan
- Penggunaan pengesahan SLSA yang sah untuk menyembunyikan pakej berniat jahat
- Operasi pengekstrakan dan pengekalan kelayakan berbilang saluran
- Mekanisme pembalasan destruktif yang direka untuk menakut-nakutkan pembela
Pengembangan kempen ini merentasi perkakasan AI, automasi perusahaan, infrastruktur carian, pembangunan bahagian hadapan, perkakasan berkaitan penerbangan dan ekosistem CI/CD menunjukkan betapa saling berkaitannya rantaian bekalan perisian. Pemantauan tingkah laku semasa pemasangan pakej dan pelaksanaan binaan kini semakin penting untuk mengesan ancaman yang kelihatan sah pada pandangan pertama.