OpenCode mengonfirmasi pada 17 Oktober 2026 bahwa akses tidak sah ke sistem Console-nya berdampak pada 1,4% pengguna Console, dan hanya mereka yang menautkan provider AI eksternal. Semua pengguna terdampak dikabari lewat email pada pagi yang sama, sementara Anthropic menyatakan sudah mencabut kunci Claude API yang diyakini terkena. Pengguna yang tidak menerima email dinyatakan tidak terdampak.
TL;DR
- Akses tidak sah terjadi di sistem legacy Console yang sedang dinonaktifkan, bukan di aplikasi CLI OpenCode yang dipasang di laptop.
- 1,4% pengguna Console terdampak, seluruhnya pengguna yang menyimpan kunci provider eksternal di workspace.
- Kunci yang dipakai langsung di aplikasi OpenCode tidak pernah sampai ke server perusahaan, jadi tidak ikut bocor.
- Tindakan wajib: cabut kunci di console tiap provider, terbitkan kunci baru, lalu audit pemakaian di dashboard provider, bukan di OpenCode.
Apa yang sebenarnya terjadi di OpenCode Console?
Email resmi menyebut perusahaan menemukan akses tidak sah ke sistem legacy yang sedang dalam proses dekomisioning, dan kunci provider pihak ketiga yang tersimpan di workspace pengguna mungkin terekspos. Email berjudul "Action Required: Potential provider key breach" itu meminta penerima segera mencabut kunci, menggantinya, memperbarui aplikasi yang memakai kunci tersebut, lalu memeriksa pemakaian terbaru untuk aktivitas yang tidak dikenali.
Yang perlu dicatat, kata "mungkin terekspos" bukan "terbukti dipakai". Sampai laporan ini disusun, OpenCode dan perusahaan induknya, Anomaly, belum menerbitkan pernyataan teknis lengkap. Halaman status mereka tidak menampilkan insiden, dan tidak ada security advisory baru di repositori GitHub mereka. Ini artinya ruang lingkup kerusakan belum bisa dipastikan dari sisi vendor.
Kronologinya sendiri cukup jelas. Isu mencuat lewat unggahan di X dari komentator keamanan Matt Johansen, yang membagikan tangkapan layar email pemberitahuan dari subreddit r/opencode. Setelah itu OpenCode mengonfirmasi lewat akun resminya pada 17 Oktober pukul 23.38 waktu India, dan menyebut insidennya masih berlangsung. Per 18 Oktober, perusahaan menyatakan sedang bekerja sama dengan Anthropic, Google, dan provider lain untuk remediasi.
Siapa yang perlu rotasi kunci dan bagaimana cara ceknya?
Yang perlu bertindak adalah pengguna yang pernah menyimpan kunci provider di OpenCode Console, bukan semua orang yang menginstal CLI-nya. Co-founder OpenCode, Dax Raad, menyatakan kunci yang dipakai di aplikasi OpenCode reguler tidak pernah mencapai perusahaan, hanya kunci yang tersimpan di Console. Jadi kalau kamu hanya memasang CLI dan mengisi kunci lewat file lokal, tidak ada kewajiban rotasi karena insiden ini.
Pembeda paling praktis ada di tabel berikut.
| Aspek | Aplikasi OpenCode (CLI/TUI) | OpenCode Console (web) |
|---|---|---|
| Lokasi kunci | File lokal di mesin developer | Tersimpan di workspace Console |
| Melewati server OpenCode | Tidak | Ya, Console meneruskan request |
| Tagihan provider | Langsung ke akunmu | Langsung ke akunmu juga |
| Terpapar insiden 17 Oktober | Tidak | Hanya 1,4% user dengan provider tertaut |
| Cara audit pemakaian | Dashboard provider | Dashboard provider, bukan laporan Console |
Untuk memeriksa kunci apa saja yang tercatat di mesin, buka file auth milik OpenCode. Di Linux dan macOS lokasinya di ~/.local/share/opencode/auth.json. Di Windows, file yang sama ada di folder profil pengguna pada jalur .local/share/opencode/auth.json. Setiap provider yang muncul di file itu adalah kredensial yang layak dipertimbangkan untuk dirotasi, terutama kalau kamu juga pernah login ke Console dengan akun yang sama.
Setelah daftar provider terkumpul, rotasi dilakukan di masing-masing console provider, bukan di OpenCode. Untuk Anthropic, kunci dikelola di halaman API keys Anthropic Console. Untuk Google, kunci AI Studio dikelola di AI Studio API keys. Cabut kunci lama lebih dulu, baru terbitkan yang baru, supaya tidak ada jendela waktu di mana dua kunci aktif bersamaan.
Kenapa serangan distillation bikin tagihan provider melonjak?
Distillation adalah praktik mengirim prompt dalam jumlah sangat besar ke model kuat, lalu memakai jawabannya untuk melatih model tandingan yang lebih murah. Kalau kunci API orang lain bisa dipakai, biaya inferensi untuk ribuan atau jutaan request itu jatuh ke tagihan pemilik kunci, bukan ke penyerang. OpenCode tidak menjelaskan hubungan langsung antara distillation dan akses ke sistem mereka, tapi dampak ekonominya jelas: kunci yang bocor adalah saldo berjalan di akun provider.
Ada satu jebakan yang perlu dipahami. Console hanya mencatat request yang lewat Console. Kalau kunci yang sama dipakai langsung ke API Anthropic atau Google, request itu tidak akan muncul di laporan pemakaian OpenCode dan tidak akan menyentuh budget workspace. Karena itu audit harus dilakukan di dashboard provider, tempat semua request kunci itu tercatat, termasuk yang tidak lewat OpenCode sama sekali.
Beberapa pengguna di X melaporkan kunci mereka terekspos, dan salah satunya menyebut spending limit menyelamatkan mereka dari kerugian besar. Laporan individual itu belum diverifikasi secara independen, jadi perlakukan sebagai indikasi pola, bukan bukti. Yang bisa dipegang adalah pernyataan vendor soal 1,4% dan pernyataan Anthropic soal pencabutan kunci.
Praktik yang layak diadopsi setelah insiden seperti ini: pasang spending limit per kunci di provider, pisahkan kunci per aplikasi supaya pencabutan tidak mematikan semua layanan sekaligus, dan aktifkan notifikasi pemakaian harian. Tiga langkah itu tidak mencegah kebocoran, tapi membatasi kerugian dan mempercepat deteksi.
Apa yang belum diketahui sampai sekarang?
Empat hal masih terbuka: siapa pelakunya, bagaimana kunci diambil, berapa lama akses berlangsung, dan sistem legacy mana yang dimaksud. OpenCode menyebut insiden masih berlangsung, jadi rincian teknis belum bisa dibuka tanpa mengganggu proses remediasi. Sampai ada laporan resmi, klaim bahwa "kunci pasti sudah dipakai" atau "hanya data lama yang kena" sama-sama spekulasi.
Yang juga belum jelas adalah angka absolut di balik 1,4%. Tanpa jumlah total pengguna Console, persentase itu tidak bisa diterjemahkan menjadi jumlah korban. Untuk perencanaan pribadi, angka itu tidak terlalu penting: kalau kamu pernah menyimpan kunci provider di Console, anggap kunci itu perlu diganti, terlepas dari kamu masuk kelompok 1,4% atau tidak.
Ada preseden yang perlu dicatat. OpenCode pernah memperbaiki bug penanganan kunci sebelumnya, termasuk kasus antarmuka web yang mengirim kunci API mentah ke browser. TechCity Authority menyebut tidak ada indikasi bug lama itu terhubung dengan insiden ini, yang dijelaskan vendor sebagai akses tidak sah ke sistem perusahaan. Dua kejadian berbeda, tapi keduanya menunjukkan bahwa menyimpan kunci di layanan perantara selalu menambah satu titik risiko.
Bagaimana urutan rotasi kunci yang aman?
Urutan yang paling aman adalah memetakan dulu, mencabut kemudian, baru menerbitkan ulang, dengan pengujian di antara langkah. Jangan mencabut semua kunci sekaligus tanpa daftar, karena kamu akan kehilangan jejak aplikasi mana yang berhenti bekerja. Ikuti urutan berikut.
- Buka file
auth.jsondi mesin dan catat setiap provider beserta nama kunci atau label yang terlihat. - Buka dashboard tiap provider dan cek pemakaian 7 sampai 14 hari terakhir. Cari lonjakan request, model yang tidak pernah kamu pakai, atau panggilan di jam ketika kamu tidak bekerja.
- Buat kunci pengganti dengan nama yang jelas, misalnya nama aplikasi plus tanggal, supaya jejak audit berikutnya mudah.
- Perbarui aplikasi yang memakai kunci lama, satu per satu, lalu uji satu request kecil untuk memastikan kunci baru valid.
- Cabut kunci lama setelah semua konsumen pindah. Jangan menunggu, karena kunci lama yang dibiarkan aktif tetap menjadi risiko.
- Pasang spending limit dan notifikasi pemakaian pada kunci baru. Ini yang membatasi kerugian kalau ada kebocoran berikutnya.
- Simpan catatan tanggal rotasi. Tanpa catatan, audit berikutnya akan mengulang pekerjaan yang sama dari nol.
Untuk tim, langkah nol yang sering terlewat adalah inventaris. Kebanyakan tim keamanan tidak punya daftar developer mana yang memakai agent coding apa, dan provider mana yang ditautkan. StepSecurity menyarankan memakai pemindaian mesin developer untuk menemukan binary OpenCode, direktori konfigurasi, dan konfigurasi MCP server, lalu menindaklanjutinya dengan bertanya langsung ke pemilik mesin. Detail prosedurnya ada di panduan respons StepSecurity.
Kalau kamu butuh kronologi lengkap beserta kutipan pernyataan vendor, rangkuman paling rapi ada di laporan TechCity Authority. Laporan itu juga mencatat bahwa pernyataan resmi OpenCode sejauh ini hanya berupa unggahan di X, tanpa advisory di GitHub dan tanpa entri di halaman status.
Apa pelajaran untuk tim yang memakai agent coding dengan kunci bersama?
Insiden ini memperlihatkan bahwa risiko terbesar bukan pada aplikasi yang jalan di laptop, tapi pada layanan perantara yang menyimpan kunci untuk banyak pengguna. Selama kunci disimpan di server pihak lain, kebocoran di sisi mereka menjadi kebocoran di sisi kamu, tanpa ada perubahan apa pun di mesinmu.
Ada tiga pola yang layak dipertimbangkan. Pertama, sebisa mungkin pakai kunci yang hanya hidup di lingkungan lokal atau di secret manager milik sendiri, bukan di dashboard vendor pihak ketiga. Kedua, kalau harus memakai layanan perantara, batasi scope dan budget kunci itu, jangan pakai kunci produksi yang sama untuk eksperimen. Ketiga, siapkan prosedur rotasi tertulis sebelum insiden terjadi, karena saat insiden berlangsung tidak ada waktu untuk menyusun prosedur dari nol.
Untuk pemakaian pribadi, perubahan paling murah adalah memisahkan kunci per alat. Satu kunci untuk agent coding, satu kunci untuk skrip otomasi, satu kunci untuk aplikasi produksi. Ketika satu kunci dicabut, yang lain tetap jalan, dan kerugian maksimalnya sudah dibatasi oleh budget kunci itu sendiri.
FAQ
Apakah semua pengguna OpenCode harus mengganti kunci API?
Tidak. Vendor menyatakan yang terdampak hanya pengguna OpenCode Console yang menautkan provider eksternal, sebesar 1,4% dari total pengguna Console. Pengguna CLI yang menyimpan kunci secara lokal dan tidak pernah memakai Console tidak termasuk cakupan insiden menurut pernyataan resmi.
Bagaimana kalau saya tidak menerima email dari OpenCode?
Menurut pernyataan vendor, pengguna yang tidak menerima email tidak termasuk kelompok terdampak, karena semua pengguna yang kena sudah dihubungi pada 18 Oktober pagi. Meski begitu, memeriksa file auth lokal dan audit pemakaian provider tetap langkah murah yang layak dilakukan sebagai kebiasaan.
Apakah tagihan akibat penyalahgunaan kunci muncul di OpenCode?
Belum tentu. Console hanya mencatat request yang melewati Console, jadi pemakaian kunci di luar jalur itu tidak akan muncul di laporan OpenCode dan tidak menyentuh budget workspace. Audit harus dilakukan di dashboard masing-masing provider, tempat seluruh pemakaian kunci tercatat.
Apakah insiden ini ada hubungannya dengan bug kunci lama OpenCode?
Tidak ada indikasi ke arah itu. Bug lama yang pernah diperbaiki terkait antarmuka web yang mengirim kunci mentah ke browser, sedangkan insiden ini dijelaskan vendor sebagai akses tidak sah ke sistem legacy perusahaan. Keduanya peristiwa terpisah dengan jalur penyebab berbeda.
💬 Komentar (0)
Belum ada komentar. Jadilah yang pertama! 💬