wfx-loot ialah kempen pencurian kelayakan yang menggunakan akaun GitHub yang telah dikompromi untuk menguji repositori. Jika akaun tersebut mempunyai kebenaran menulis, penyerang cuba memasukkan kod untuk mencuri rahsia daripada persekitaran integrasi berterusan (CI), iaitu sistem yang menjalankan proses binaan dan ujian perisian secara automatik. Aikido melaporkan 4,837 akaun terjejas dan permintaan tarik dalam 61,764 repositori. Menurut angka terbitan Aikido, muatan berniat jahat itu dijalankan dan kelayakan dieksfiltrasikan daripada sekurang-kurangnya 1,835 repositori.
4
9
Bila wfx-loot berlaku, dan berapa lama?
Aktiviti bermula sekitar 12:45 UTC pada 10 November 2026. Satu laporan meletakkan tempoh permintaan tarik penyiasatan sehingga 15:00 UTC pada 11 November—kira-kira 26 jam 15 minit.
6
7 Tempoh ini merujuk kepada jangka masa aktiviti penyiasatan yang diperhatikan; ia bukan pengesahan bahawa semua muatan telah berhenti berjalan atau bahawa kelayakan yang dicuri tidak lagi digunakan selepas itu.
Angka yang dilaporkan merujuk kepada peringkat serangan yang berbeza:
- 4,837 akaun dilaporkan telah dikompromi.
- 61,764 repositori menerima permintaan tarik penyiasatan. Ini ialah bilangan repositori yang diuji, bukan bilangan repositori yang diketahui telah menjalankan perisian hasad.
- Sekurang-kurangnya 1,835 repositori termasuk dalam angka terbitan Aikido bagi pelaksanaan muatan dan eksfiltrasi kelayakan.
9
Beberapa laporan yang diterbitkan pada masa sama menyebut angka lebih rendah, iaitu 1,806.
6
10 Laporan yang tersedia tidak menjelaskan perbezaan itu, jadi kedua-duanya wajar dianggap sebagai angka berasingan yang dilaporkan—bukan dijumlahkan atau disamakan. Bahan sumber yang diberikan juga tidak mengesahkan dakwaan kemudian tentang kira-kira 1,970 kes awam yang disahkan daripada lebih 66,000 sasaran.
Bagaimana penyerang menguji akses
Penyerang membuka permintaan tarik bertajuk docs: dependency audit notes daripada cabang bernama wfx-docs. Permintaan tarik ini berfungsi sebagai ujian untuk mengetahui sama ada akaun yang dikompromi mempunyai kebenaran menulis pada repositori sasaran.
3
4
9
Jika akses itu membenarkannya, penyerang cuba memasukkan muatan pencuri rahsia ke dalam persekitaran CI. Kempen ini bergantung pada kelayakan sah yang dicuri, bukannya kelemahan dalam GitHub Actions.
4
9 OX Security menyifatkan perisian hasad itu sebagai satu skrip shell sepanjang kira-kira 1,500 baris.
31
Laporan menyatakan bahawa perubahan berniat jahat dan log aliran kerja dipadamkan dalam sesetengah kes, sekali gus menyukarkan penyiasatan.
1
6 Bukti yang tersedia menyokong pola umum berupa ujian akses, pelaksanaan muatan dan usaha menghapuskan jejak. Namun, bukti itu tidak menunjukkan bahawa setiap kaedah penyebaran atau mesej komit yang dilaporkan digunakan dalam setiap jangkitan.
Apa yang cuba dicuri oleh muatan itu?
Matlamat yang didokumenkan ialah mengumpul kelayakan yang boleh dicapai oleh tugas CI, termasuk rahsia GitHub Actions dan kelayakan awan. Laporan turut menyebut percubaan mendapatkan token perkhidmatan AI.
3
9 Analisis OX Security menyenaraikan kelayakan AWS, Azure dan Google Cloud sebagai sasaran.
31 Laporan berasingan menyatakan bahawa perisian hasad itu boleh mencari rahsia dalam memori proses runner, iaitu mesin yang menjalankan tugas CI; namun, petikan sumber yang diberikan tidak menunjukkan sekerap mana kaedah itu berjaya.
17
29
Satu ringkasan yang diperoleh turut menyebut percubaan memperluas akses melalui perubahan dasar kepercayaan AWS dan kelayakan bersekutu Azure.
5 Anggap butiran tentang pengekalan akses ini sebagai tingkah laku yang dilaporkan, bukan bukti bahawa setiap repositori atau akaun awan yang terjejas telah diubah. Bukti yang tersedia tertumpu pada pencurian kelayakan; ia tidak menunjukkan bahawa kod sumber atau pangkalan data pelanggan turut dicuri.
9
15
Apa yang ditunjukkan—dan tidak ditunjukkan—oleh petunjuk yang dilaporkan
Satu laporan menyatakan bahawa 92% daripada 10,431 permintaan tarik penyiasatan yang dibuat melalui akses kolaborator atau organisasi masih terbuka semasa pemeriksaan.
10
19 Ini menunjukkan banyak permintaan mungkin belum ditangani pada ketika itu, tetapi tidak membuktikan bahawa pemilik repositori atau pasukan keselamatan langsung tidak mengesannya. Peratusan itu juga tidak merujuk kepada semua permintaan tarik dalam kempen.
Sebuah panduan penyiasatan turut melaporkan 173 permintaan tarik penyiasatan daripada 19 akaun yang menggunakan token melalui GitHub App milik Fly.io. Pemerhatian itu sahaja tidak membuktikan bahawa infrastruktur Fly.io telah diceroboh, atau bahawa muatan dijalankan dalam setiap repositori yang dicapai melalui token tersebut.
37
Perkara yang patut diperiksa oleh pasukan keselamatan
Jika organisasi anda mungkin terdedah, bezakan antara repositori diuji, muatan dimasukkan, muatan dijalankan dan kelayakan dieksfiltrasikan semasa menilai insiden. Keempat-empatnya bukan perkara yang sama.
- Cari petunjuk permintaan tarik. Semak repositori yang boleh ditulis oleh akaun anda untuk permintaan tarik bertajuk
docs: dependency audit notes dan cabang bernama wfx-docs.
9
- Semak rekod CI dan audit. Periksa pelaksanaan aliran kerja, komit, aktiviti cabang dan log awan yang tersedia. Nombor pelaksanaan aliran kerja yang hilang mungkin menjadi petunjuk kerana laporan menyebut pelaksanaan dan log telah dipadamkan, tetapi jurang itu sahaja tidak membuktikan bahawa kompromi berlaku.
1
24
- Batalkan akses yang terjejas. Batalkan token GitHub yang disyaki dikompromi dan semak akses akaun, kolaborator serta GitHub App.
- Putar semula rahsia yang mungkin terdedah secara menyeluruh. Jika muatan telah dijalankan, anggap rahsia dan peranan awan yang boleh dicapai oleh aliran kerja itu mungkin terjejas—bukan sekadar kelayakan yang kelihatan dalam log yang masih ada.
3
9
- Cari perubahan untuk mengekalkan akses awan. Siasat perubahan luar jangka pada dasar kepercayaan AWS serta aplikasi atau kelayakan bersekutu Azure, di samping kunci tanpa kebenaran dan perubahan akses lain.
5
- Simpan bukti. Simpan rekod audit dan log yang masih ada sebelum membuat perubahan pembersihan, kemudian catat peringkat serangan yang benar-benar disokong oleh bukti.