OpenCode Ditelepon Distillation Attack, API Key Pengguna Bocor
Terbit 21 Oktober 2026
OpenCode mengonfirmasi pada 17 Oktober 2026 bahwa servernya diretas. API key milik 1,4% pengguna Konsol mungkin bocor dan harus dicabut di penyedia.

Pada 17 Oktober 2026 pukul 18.08 UTC, OpenCode mengonfirmasi bahwa servernya diretas. Pernyataan resminya menyebut insiden yang terjadi pada malam sebelumnya. OpenCode menyebutnya serangan distilasi skala besar, dan menyatakan dampaknya menimpa 1,4% pengguna OpenCode Console. Perusahaan itu mengirim email ke seluruh pengguna yang terdampak pada pagi hari 18 Oktober.
Korbannya bukan kode dan bukan repository. Korbannya adalah kunci API milik pengguna sendiri. Kalau kamu pernah menghubungkan akun OpenAI, Anthropic, atau Google ke OpenCode Console, periksa lagi. Kunci yang tersimpan di sana kemungkinan sudah disalin orang lain. OpenCode sendiri meminta pengguna mencabut dan menggantinya lewat dasbor penyedia, bukan menghapusnya di dalam OpenCode.
Poin terakhir itu yang paling sering dilupakan, dan justru itu yang menentukan apakah tagihanmu berhenti atau terus berjalan.
Kronologi: 14.35 sampai 18.08 UTC
Yang terekam publik dimulai dari sisi pengguna, bukan dari tim OpenCode. Urutannya menunjukkan bahwa mereka tahu soal insiden ini beberapa jam setelah kebocoran dimulai.
| Waktu UTC | Yang terjadi |
|---|---|
| 16-17 Oktober, malam | Akses tidak sah ke sistem yang sedang dinonaktifkan |
| 17 Oktober, 14.35 | Developer Chris Sinco memposting bahwa peringatan pengeluaran OpenAI, Anthropic, dan Google-nya menyala hampir bersamaan |
| 17 Oktober, 15.30 | Komentator keamanan Matt Johansen membagikan surel pelanggan OpenCode |
| 17 Oktober, 18.08 | OpenCode mengonfirmasi insiden ke publik, menyebut 1,4% pengguna Konsol terdampak |
| 17 Oktober, malam | Pendiri bersama Dax Raad menulis bahwa akun pribadinya juga sedang diserang |
| 18 Oktober, pagi | Email dikirim ke seluruh pengguna yang terdampak |
| 19 Oktober | Belum ada analisis akar penyebab, dan halaman status OpenCode belum mencantumkan insiden ini |
Isi surel itu menyebut bahwa pihak tidak berwenang mengakses sistem lama yang sedang mereka nonaktifkan. Kunci milik penyedia pihak ketiga yang tersimpan di ruang kerja pengguna disebut mungkin sudah terekspos.
Perhatikan baris terakhir tabel. Pada 18 Oktober, halaman status resmi OpenCode belum menampilkan insiden tersebut. Artinya orang yang mengecek halaman status, cara paling wajar untuk memastikan layanan aman, tidak diberi tahu apa pun dari sana.
Kenapa Kunci API Adalah Target yang Berbeda dari Kode
Biasanya kebocoran server berarti file bocor: source code, database, credential internal. Yang rusak adalah sistem yang memiliki file-file itu.
Struktur OpenCode berbeda. Console adalah lapisan antara developer dan penyedia model. Kunci API milik pengguna tersimpan di lapisan itu. Tool ini harus bisa mengirim permintaan ke OpenAI, Anthropic, atau Google atas nama orang tersebut. Begitu kunci ada di server pihak ketiga, server itu menjadi brankas, dan brankas itu isinya bukan milik pemilik brankas.
Perbandingan ini yang menjelaskan kenapa dampaknya tidak sebanding dengan ukuran insidennya.
| Aspek | Kebocoran source code biasa | Kebocoran kunci API di Console |
|---|---|---|
| Yang bocor | Properti intelektual perusahaan | Credential yang bisa dibelanjakan dari saldo orang lain |
| Batas eksploitasi | Berakhir saat kode diganti | Berlaku sampai dicabut, dan bisa dipakai dari mana saja |
| Ukuran kerugian | Biaya lisensi dan investigasi | Tagihan berjalan otomatis di akun orang lain |
| Cara terdeteksi | Diff dan review kode | Sering baru terasa di halaman tagihan |
Perhatikan baris ketiga. Kunci API yang bocor bisa dipakai dari komputer mana pun di dunia. Biayanya langsung masuk ke tagihan orang yang tidak tahu. Kunci yang sudah dihapus di dalam OpenCode tidak dicabut di mana pun juga. Itu sebabnya OpenCode eksplisit meminta pencabutan dilakukan di dasbor penyedia.
Serangan Distilasi Yang Sebenarnya Bermaksud
Kata yang dipakai OpenCode, serangan distilasi, bukan istilah teknis untuk membobol server. Itu istilah untuk menyalin kemampuan model.
Distilasi bekerja dengan cara sederhana. Kalau seseorang punya akses ke output model besar, dia bisa membuat ribuan pertanyaan lalu mengumpulkan jawabannya. Dia juga bisa mengumpulkan langkah berpikir model itu, lalu melatih model yang lebih kecil supaya menirunya. Kemampuannya pindah tanpa perlu menyalin bobot aslinya.
Inilah yang membuat kebocoran kunci API jadi target yang sangat spesifik. Yang dibutuhkan penyerang untuk distilasi dalam skala besar bukan akses ke server OpenCode, dan bukan pencurian data dari penyedia model. Yang dibutuhkan hanya satu hal: banyak panggilan API yang dibayar oleh orang lain.
Coba lihat ironinya. Distilasi adalah cara sah yang diakui industri untuk memindahkan kemampuan model. DeepSeek mengirim enam model turunan dari R1 di bawah lisensi MIT. Catatan rilisnya secara eksplisit memperbolehkan output API-nya dipakai untuk fine-tuning dan distilasi. Yang tidak sah adalah melakukan distilasi dengan tagihan orang lain.
Menarik kunci milik orang lain dan memanggil API-nya dalam jumlah besar, OpenCode menamainya serangan distilasi. Kata itu tepat, dan kata itu sendiri menjelaskan motifnya: ini bukan pencurian data, tapi pencurian kemampuan.
Yang Perlu Kamu Lakukan Sekarang
Kalau kamu tidak pernah menghubungkan kunci API ke OpenCode Console, tidak ada yang perlu kamu lakukan. OpenCode menyatakan ini secara langsung: yang tidak menerima email berarti tidak terdampak. Tapi ada satu hal yang perlu dicek sendiri, yaitu pemakaian akun penyedia kamu sejak 16 Oktober.
Kalau kamu memang terhubung, urutannya penting.
- Cabut kunci di dasbor penyedia. OpenAI, Anthropic, dan Google masing-masing punya halaman untuk mencabut kunci. Menghapus kunci di dalam OpenCode tidak menghentikan pemakaian dari pihak lain.
- Buat kunci baru dengan batas belanjaan yang masuk akal untuk pemakaianmu, supaya kebocoran berikutnya tidak menghasilkan tagihan tanpa batas.
- Periksa riwayat penggunaan sejak 16 Oktober 2026. Cari lonjakan yang tidak kamu kenali, terutama di jam-jam malam, karena itu pola yang dilaporkan pengguna.
- Periksa aplikasi lain yang memakai kunci itu. Kunci yang bocor bisa dipakai di mana saja, bukan cuma lewat OpenCode.
- Simpan bukti tagihan. Untuk pengaduian ke penyedia, riwayat penggunaan yang menunjukkan lonjakan tidak wajar jauh lebih kuat daripada klaim yang kosong.
Pengembalian biaya masih dirundingkan, dan per 19 Oktober 2026 belum ada kebijakan pengembalian yang dipublikasikan secara lengkap. Jadi jangan menunggu uang kembali sebelum mencabut kuncinya.
Analisis: Yang Belum Terjawab dan Kenapa Jangan Panik
Beberapa pertanyaan penting belum punya jawaban publik, dan pembaca berhak tahu itu. Berikut yang diketahui.
- Akar penyebab belum dipublikasikan. OpenCode menyebut insidennya masih berjalan dan belum bisa keras memberikan detail lain. Tidak ada analisis akhir, tidak ada rekaman waktu masuknya penyerang, dan tidak ada daftar data yang diakses.
- Tidak ada atribusi. Tidak ada kelompok yang mengklaim melakukan ini, dan tidak ada pola yang bisa dikaitkan ke negara tertentu. Yang ada hanya motif yang disebut, yaitu distilasi.
- Skala yang disebut adalah 1,4% pengguna Konsol. Angka itu berasal dari OpenCode sendiri dan belum diaudit pihak ketiga. Yang jelas, ini bukan semua orang yang memakai CLI OpenCode di laptop, dan bukan semua pengguna. Kunci yang dikonfigurasi secara lokal di mesin sendiri tidak disebut sebagai bagian dari sistem yang disusupi.
- Sistem yang tersusupi adalah sistem lama yang sedang dinonaktifkan. Kalimat itu yang paling perlu dicatat. Sistem yang sedang dinonaktifkan adalah tempat paling sering lupa diamankan. Tidak ada yang memiliki, tidak ada yang mengaudit, dan tidak ada yang memperbarui. Ini bukan kebetulan teknis, ini pola.
Poin terakhir itu yang paling penting. Insiden ini tidak terjadi karena AI-nya berbahaya. Ia terjadi karena ada server yang ditinggalkan, dan server yang ditinggalkan tidak peduli bahwa kamu menyimpan uang di dalamnya.
Ada satu sudut yang jarang dibahas, dan itu menjelaskan kenapa motif distilasi masuk akal secara ekonomi. Distilasi butuh volume. Satu kunci yang bocor memberi akses ke satu akun, dengan limit dan biaya. Ribuan kunci yang bocor dari satu server memberi akses ke ribuan akun sekaligus, dan tidak ada biaya komputasi sendiri.
Penyerang cukup membayar satu hal saja, yaitu waktu mengetik skrip pengambil output. Skala seperti itu mustahil dicapai dengan model yang dilatih sendiri. Biaya training mendominasi seluruh tagihan, dan tidak bisa ditekan ke bawah.
| Komponen | distillation sah | distillation lewat kunci bocor |
|---|---|---|
| Sumber output | API model milik sendiri | API orang lain |
| Biaya | unpaid | Ditanggung korban |
| Volume | Terbatas kuota resmi | Hampir tanpa batas |
| Jejak | Tercatat sebagai pemakaian resmi | Terlihat sebagai lonjakan tak wajar |
Baris kedua tabel itu yang paling penting bagi kamu sebagai pengguna. Distilasi yang sah meninggalkan jejak yang rapi: pemakaian tercatat, tagihan masuk ke akun yang kamu bayar. Distilasi lewat kunci bocor meninggalkan jejak yang tidak rapi, dan justru jejak tidak rapi itulah yang membuat ini bisa terdeteksi. Karena itu, memeriksa riwayat penggunaan bukan langkah opsional. Itu satu-satunya cara kamu bisa menemukan sendiri bahwa kuncimu dipakai orang lain.
Kabar baiknya satu. Kunci API yang dicabut berhenti bekerja seketika, dan penyedia model memblokir pencabutan dalam hitungan menit. Yang hilang bukan kuncinya, tapi uangnya. Dan uang itu bisa ditagih kembali ke bank dengan bukti.
Pola yang Lebih Besar: AI Agent Sebagai Pemegang Credential
Ada yang lebih menarik dari insiden tunggal ini, dan itu sebabnya insiden ini layak dibaca sebagai penjelasan, bukan sekadar berita.
OpenCode bukan kasus pertama, dan mekanismenya berulang. Pada 12 Januari 2026, CVE-2026-22812 dipublikasikan dengan skor CVSS 8,8. Sebelum versi 1.0.216, OpenCode otomatis menjalankan server HTTP tanpa autentikasi. Server itu memungkinkan proses lokal mana pun menjalankan perintah shell sembarang dengan hak pengguna. Website mana pun juga bisa lewat CORS yang longgar.
Pada September 2026, CVE-2026-88899 dengan skor 9,8 membahas jalur pada komponen Worktree.remove yang tidak tervalidasi. Payload bisa membuat direktori dihapus secara rekursif. Ada lagi temuan ketiga pada 10 September 2026. Soal header x-opencode-directory pada endpoint proxy yang membiarkan file di luar proyek ikut diolah.
Tiga temuan itu bukan masalah yang sama. Yang menyatukan ketiganya adalah arsitektur. Sebuah tool AI coding berjalan di antara developer dan penyedia model. Tool itu memegang credential, lalu menjalankan hal yang diminta. Otoritas sesungguhnya ada di sana.
Sembilan bulan kemudian, konfigurasi yang sama bocor bukan lewat port lokal yang terbuka, tapi lewat server yang sedang dinonaktifkan. Dua-duanya adalah pemegang credential yang menerima lebih banyak kepercayaan daripada yang seharusnya.
Dan itulah alasan praktisnya bagi orang yang bukan profesional keamanan. Setiap kali kamu menempelkan kunci API ke dalam tool pihak ketiga, kamu sedang menaruh uang di rumah orang lain. OpenCode bukan kasus khusus. OpenCode cuma kasus yang kebetulan meledak di depan umum. Angkanya bisa dihitung, dan tagihannya bisa ditunjukkan ke bank.
Ada satu hal yang tidak bisa dijawab dari luar, dan itu sendiri penting. Kita tidak tahu apakah data lain ikut diambil. Prompt pengguna, potongan kode, nama repository, semuanya bisa punya nilai buat sebagian orang. Tidak ada yang mengetahuinya, dan kekosongan informasi itu sendiri bagian dari risiko.
Yang bisa diketahui adalah sisi penyedia model. Mereka punya kemampuan mendeteksi penyimpangan pemakaian yang tidak wajar. OpenCode sendiri menyebut sedang bekerja sama dengan Anthropic, OpenAI, dan Google. Jadi ada mekanisme yang sedang berjalan di belakang layar, dan hasilnya belum dipublikasikan.
Itulah juga yang membuat angka 1,4% perlu dibaca dengan hati-hati. Angka itu berasal dari pihak yang dirugikan, dan belum ada pihak ketiga yang mengauditnya. Angka yang belum diaudit tetap layak dipakai sebagai indikasi arah, bukan sebagai angka pasti. Yang pasti hanyalah ada bagian pengguna yang terdampak, dan itu bagiannya bukan yang paling kecil.
Pada 19 Oktober 2026, belum ada jawaban resmi soal berapa lama akses itu berlangsung. Dua hal sudah jelas. Kunci harus dicabut di penyedia, dan sampai itu dicabut, tagihannya terus berjalan.
Tool terkait
Alat gratis di browser yang berguna untuk topik ini.
Bagikan artikel ini
Bagikan ke
Artikel terkait

2 November 2026
Google Cabut Jules, Pindah ke Antigravity
Google mencabut agen coding AI Jules dan memindahkannya ke Antigravity. Apa yang harus diketahui pengembang Indonesia tentang perubahan ini.

8 November 2026
Google Nano Banana 2 Gemini 4 Carbon: Generasi Baru AI Gambar Keamanan
Google rilis Nano Banana 2 (editor gambar AI viral gen-2) dan Gemini 4 Carbon (model keamanan siber frontier). Nano Banana 1 tarik 13 juta user baru Gemini 4 hari, generate 5 miliar gambar. Nano Banana 2 pakai Flash model lebih cepat murah.

7 November 2026
LingGuang: Aplikasi AI Virus Cina 2 Juta Unduhan 6 Hari
LingGuang dari Ant Group capai 1 juta unduhan 4 hari, 2 juta 6 hari — lewati ChatGPT Sora. Aplikasi vibe-coding generate app, website, konten interaktif dari prompt sederhana. Luncur Okt 2026.