Diterbitkan pada

4.837 Akun GitHub, Satu Pull Request: Sang Pencuri Rahasia CI

Penulis

Listen in English · 4.837 Akun GitHub, Satu Pull Request: Sang Pencuri Rahasia CI

0:00 / 0:00

Watch in English · 4.837 Akun GitHub, Satu Pull Request: Sang Pencuri Rahasia CI

Seorang penyerang meminjam akses tulis dari 4.837 akun GitHub yang terkompromi, mengujinya dengan pull request berjudul 'docs: dependency audit notes', dan menjalankan pencuri kredensial di setidaknya 1.806 repositori. Rahasia yang diinginkannya persis sama dengan yang sudah dipegang CI Anda.

Mulai Selasa, seorang penyerang menggunakan kredensial curian untuk 4.837 akun GitHub guna menyisipkan stealer rahasia ke repositori yang dapat ditulis oleh akun-akun tersebut. Aikido Security menghitung setidaknya 1.806 repositori tempat stealer itu berjalan. SafeDep, yang menganalisis secara independen, menghitung 8.093 repositori yang menerima commit berbahaya dalam jendela enam belas jam — hanya cabang default repositori publik, sehingga angka sebenarnya lebih tinggi.

Metode itu monoton dan efektif. Setiap serangan dimulai dengan pull request berjudul docs: dependency audit notes, yang dibuka dari branch bernama wfx-docs, murni untuk menguji apakah akun tersebut dapat menulis ke repositori. Pull request uji coba itu muncul di 61.764 repositori.

Pencuri rahasia CI, digambar untuk ABN Asia

4,837
akun yang terkompromi
61,764
pull request pengujian
8,093
repositori dengan commit berbahaya

Sembilan menit akses sudah cukup

Di 7.309 repositori, stealer tersebut ditambahkan ke alur kerja yang sudah ada. Di 771 repositori, ia datang sebagai hook postinstall npm — yang juga dieksekusi di laptop developer selama npm install. Penyerang biasanya membatalkan commit dalam hitungan menit dan menghapus log eksekusi, sehingga tidak adanya nomor run pada commit berbahaya adalah indikator yang lebih baik daripada artefak apa pun yang tertinggal.

  1. Pinjam akses tulis

    4.837 akun curian, diuji dengan PR sekali pakai

  2. Sisipkan stealer

    langkah tambahan dalam alur kerja yang ada, atau hook postinstall npm

  3. Kumpulkan

    Rahasia Actions, GITHUB_TOKEN, token OIDC, kunci cloud, memori runner

  4. Kembalikan dan bersihkan

    commit hilang dalam hitungan menit, log dihapus

Empat langkah, dan tidak satu pun merupakan eksploit.

Apa yang diperlukan, dan apa yang ditinggalkannya

Stealer tersebut mengumpulkan secret dan variabel GitHub Actions, GITHUB_TOKEN milik workflow, token runtime OIDC dan Actions, kunci untuk layanan AI, serta file kredensial untuk AWS, Azure, GCP, Kubernetes, npm, PyPI, dan SSH. Pada runner yang di-host sendiri, ia juga membaca kredensial cloud dari metadata instans, status Docker, dan unit systemd.

Sebagian darinya dirancang untuk bertahan melewati rotasi: ia dapat menulis ulang kebijakan kepercayaan peran AWS untuk membuka peran tersebut ke akun AWS mana pun, dan menambahkan kredensial identitas federasi berawalan wfx-ci- ke aplikasi Azure AD, sehingga repo yang dikompromikan dapat masuk ke Azure tanpa rahasia tersimpan apa pun. Itulah sebabnya responsnya bukan "rotasi token" melainkan "anggap seluruh alur kerja telah dikendalikan penyerang".

Bodoh sekali, dan sepenuhnya dapat dicegah

Tidak ada yang merupakan zero-day di sini. Ini adalah akses tulis ditambah runner alur kerja, dua hal yang sudah dimiliki setiap repositori.

Saran Aikido tidak ambigu: akun mana pun yang membuka salah satu pull request pengujian tersebut dianggap terkompromi bahkan jika stealer tidak pernah berjalan, jadi cabut token, grant OAuth, kunci SSH, dan sesinya, aktifkan 2FA, dan rotasi setiap secret dan variabel yang dapat dibaca repositori. Siapa pun yang menjalankan npm install pada commit yang terdampak harus menganggap mesin itu terkompromi.

ABN Asia membangun perangkat lunak untuk organisasi yang tidak dapat menanggung risiko menjadi studi kasus. Artinya, file alur kerja ditinjau seperti kode produksi, secret dibatasi pada job yang membutuhkannya, bukan seluruh repositori; kredensial sementara OIDC, bukan kunci cloud berumur panjang; penyematan dan peninjauan pada setiap dependensi; serta deteksi dengan nama yang tercantum pada peringatan.

Anda tidak hanya mendapatkan perangkat lunak — Anda mendapatkan perangkat lunak yang aman. Jika CI Anda menyimpan kredensial ke hal apa pun yang penting, hubungi kami: [email protected].

Sumber: The Hacker News, 12 November 2026, melaporkan analisis oleh Aikido Security dan SafeDep.

Harap dicatat bahwa versi bahasa Indonesia didukung oleh AI dan karena itu mungkin terjadi kesalahan kecil.

Penulis

Ai-Banking-NetworkSecurity (ABN), ABN ASIA didirikan oleh orang-orang dengan akar yang kuat di dunia akademis, dengan pengalaman kerja di Amerika Serikat, Belanda, Hungaria, Jepang, Korea Selatan, Singapura, dan Vietnam. ABN Asia adalah tempat di mana akademik dan teknologi bertemu dengan peluang. Dengan solusi terdepan kami dan layanan pengembangan perangkat lunak yang kompeten, kami membantu bisnis untuk meningkatkan level dan bersaing di panggung global. Komitmen kami: Lebih Cepat. Lebih Baik. Lebih handal. Dalam kebanyakan kasus: Lebih murah juga.

Jangan ragu untuk menghubungi kami jika Anda membutuhkan layanan IT, konsultasi digital, solusi perangkat lunak siap pakai, atau jika Anda ingin mengirimkan permintaan proposal (RFP). Anda dapat menghubungi kami di [email protected]. Kami siap membantu Anda dengan semua kebutuhan teknologi Anda.

ABNAsia.org

© ABN ASIA