Panduan Praktis

Plugin4Shell membobol pin SHA—dua agen coding belum punya perbaikan

|Penulis: Tim Redaksi QUASA|5 mnt baca| 1
Plugin4Shell membobol pin SHA—dua agen coding belum punya perbaikan

Per 18 September 2026, Plugin4Shell diketahui dapat membuat Claude Code, Codex, GitHub Copilot, dan Gemini CLI memasang kode plugin yang berbeda dari commit yang dikunci dengan SHA. Pengungkapan teknis AIR Security menyebut Claude Code dan Codex sudah diperbaiki, sedangkan Copilot belum memiliki patch dan Gemini CLI tidak dijadwalkan menerima perbaikan.

Status pada tanggal tersebut berarti dua dari empat agen masih belum mempunyai patch yang dikonfirmasi. Celahnya muncul karena agen mengambil commit yang diminta tanpa memastikan bahwa HEAD setelah checkout benar-benar menunjuk ke commit itu; pemilik atau pihak yang mengambil alih repositori kemudian dapat menyajikan kode lain di balik pin yang tampak tetap sah.

Cabang bernama SHA mengalihkan hasil checkout

Pada Claude Code, Codex, dan GitHub Copilot, serangan memanfaatkan ambiguitas antara nama referensi Git dan object ID. Penyerang yang mengendalikan repositori membuat cabang default dengan nama 40 karakter heksadesimal yang identik dengan SHA commit yang dipasang marketplace. Ketika agen melakukan checkout memakai nilai tersebut, Git dapat memilih cabang bernama sama, bukan snapshot commit yang sebelumnya ditinjau.

Pin di marketplace dan commit yang sah tidak harus diubah. Perbedaannya baru terlihat pada direktori kerja: kode yang selesai di-checkout tidak sama dengan objek yang dijanjikan pin. Karena plugin berjalan dengan hak akses proses agen, kode pengganti dapat memperoleh akses yang juga tersedia bagi proses itu, termasuk berkas, kredensial, dan repositori internal.

Gemini CLI memiliki variasi lain. Instalernya mengambil commit yang dipasang, tetapi kemudian melakukan checkout terhadap FETCH_HEAD. Jika repositori mempunyai cabang default bernama FETCH_HEAD, Git dapat memilih cabang tersebut alih-alih berkas internal yang mencatat hasil fetch. Karena itu, larangan terhadap nama cabang berbentuk SHA saja tidak menutup jalur ini.

Varian SHA tidak berlaku pada semua host Git

Risikonya tidak sama untuk setiap marketplace. GitHub melarang nama branch atau tag yang menyerupai SHA 40 karakter, sehingga repositori GitHub tidak memenuhi syarat utama varian yang menyerang Claude Code, Codex, dan Copilot. Pola itu tetap relevan pada Bitbucket atau server Git mandiri yang menerima nama cabang tersebut.

Pemeriksaan The Hacker News pada 18 September menemukan bahwa plugin di katalog komunitas Anthropic serta katalog bawaan Claude Code dan Copilot saat itu mengarah ke repositori GitHub. Artinya, katalog bawaan tersebut tidak terkena varian cabang SHA dalam kondisi yang diperiksa, tetapi kesimpulan itu tidak mencakup marketplace eksternal, sumber Git perusahaan, atau variasi FETCH_HEAD pada Gemini CLI.

Label “zero-click” juga bergantung pada jalur pembaruan. Pembaruan plugin di latar belakang aktif secara default pada Claude Code dan Codex, tetapi serangan tetap memerlukan repositori yang dikendalikan penyerang serta host dan konfigurasi yang memungkinkan ambiguitas checkout. Belum ada bukti publik bahwa Plugin4Shell telah digunakan dalam serangan nyata.

Status patch berbeda untuk setiap agen

  • Claude Code: perbaikan disebut tersedia mulai versi 2.1.179. Pengguna memerlukan versi tersebut atau yang lebih baru.
  • Codex: perbaikan tersedia dalam versi 0.146.0. Catatan rilis Codex 0.146.0 memuat perubahan yang memverifikasi checkout SHA plugin Git; implementasinya membaca HEAD dan menolak sumber jika commit aktual tidak identik dengan SHA yang diminta.
  • GitHub Copilot: belum mempunyai patch yang dikonfirmasi pada 18 September. Eksposur varian SHA terutama berada pada plugin dari host yang mengizinkan nama cabang menyerupai hash.
  • Gemini CLI: belum mempunyai patch yang dikonfirmasi, dan pengungkapan awal menyatakan produk ini tidak akan diperbaiki karena telah dihentikan serta pengguna diarahkan ke Antigravity. Namun, akses enterprise dilaporkan masih menerima pembaruan; belum jelas apakah jalur tersebut kelak mencakup perbaikan Plugin4Shell.

Perbaikan perlu berada di sisi agen karena di sanalah pin diterjemahkan menjadi checkout lokal. Marketplace dapat mengurangi eksposur dengan membatasi host, tetapi tidak dapat memastikan sendiri bahwa direktori kerja pengguna berakhir pada commit yang dipasang.

Mitigasi mengikuti produk dan asal plugin

Pengguna Claude Code dan Codex perlu memastikan versi yang berjalan sekurang-kurangnya 2.1.179 dan 0.146.0. Pembaruan klien menambahkan pemeriksaan yang hilang; perubahan entri marketplace tanpa validasi HEAD tidak memberikan jaminan setara.

Selama Copilot belum ditambal, langkah konservatif ialah menghentikan instalasi dan pembaruan plugin dari Bitbucket, server Git internal, atau host lain yang mengizinkan branch berbentuk SHA. Organisasi juga dapat membatasi marketplace yang diperbolehkan, menonaktifkan pembaruan otomatis jika opsinya tersedia, serta memverifikasi bahwa HEAD hasil checkout identik dengan SHA katalog sebelum plugin dijalankan.

Membatasi Copilot ke repositori GitHub mengurangi varian cabang SHA yang dijelaskan di sini, tetapi bukan bukti bahwa seluruh rantai pasok plugin bebas dari pola serangan lain. Untuk Gemini CLI, pembatasan ke GitHub belum terbukti memadai karena mekanismenya memakai nama FETCH_HEAD, bukan nama berbentuk SHA. Migrasi ke pengganti yang direkomendasikan vendor atau penghentian pembaruan plugin menjadi pilihan sementara sampai ada kepastian tentang patch.

Pembaruan agen belum menjawab instalasi lama

Publikasi yang tersedia belum menjelaskan apakah versi yang sudah ditambal akan mendeteksi atau menghapus plugin yang mungkin tertukar sebelum pembaruan. Tim yang pernah memakai marketplace eksternal perlu memisahkan dua pekerjaan: memperbarui agen untuk mencegah checkout baru yang salah dan memeriksa integritas plugin yang sudah berada di mesin.

Keadaan per 18 September tetap tidak merata: Claude Code dan Codex mempunyai versi perbaikan, sementara Copilot dan Gemini CLI belum mempunyai patch yang dikonfirmasi. Hal yang masih ditunggu adalah perbaikan Copilot, kepastian status Gemini CLI untuk pengguna enterprise, panduan vendor tentang instalasi lama, dan bukti apakah celah ini pernah dieksploitasi di luar pengujian peneliti.

Baca juga:

Bagikan:

Berlangganan buletin kami

Dapatkan berita Web3, AI, dan kripto terbaru langsung di kotak masuk Anda.

0