Peluncuran model AI canggih memicu kekhawatiran luas terkait kerentanan kode. Seiring penyerang mendapatkan akses ke kemampuan baru untuk membuat eksploitasi, tim keamanan berada di bawah tekanan waktu yang sangat besar untuk secara proaktif menemukan dan memperbaiki kerentanan sebelum penyerang mengeksploitasinya.
CodeMender adalah agen keamanan kode AI yang dapat menemukan, memverifikasi, dan memperbaiki kerentanan mendalam dalam codebase Anda. CodeMender membungkus harness yang telah di-fine-tune di sekitar LLM, menggunakan perintah, kemampuan, dan logika orkestrasi yang direkayasa Google DeepMind untuk mengubah model menjadi sistem agentik yang khusus dalam keamanan kode.
Cara kerjanya
CodeMender menangani skala dan keragaman lingkungan perusahaan modern, tempat kode mencakup berbagai bahasa dan jenis sistem:
- Menemukan kerentanan dengan memindai codebase Anda menggunakan LLM yang dipandu oleh agen, memanfaatkan alat khusus dan rekayasa prompt untuk memfokuskan model pada kelemahan keamanan. Atau, Anda dapat mengimpor daftar kerentanan dari alat pemindaian keamanan eksternal.
- Verifikasi kerentanan dengan membuat kode dan mencoba mengeksploitasi kerentanan yang ditemukan untuk memverifikasi apakah kerentanan tersebut dapat dieksploitasi. Hal ini membantu memprioritaskan kerentanan yang telah dikonfirmasi dan mengurangi rasio positif palsu.
- Perbaiki kerentanan dengan membuat dan menguji patch yang kompatibel dengan bahasa codebase Anda.
Selama ketiga tahap, Anda dapat memberikan konteks ke CodeMender untuk memastikan CodeMender memperhitungkan nuansa aplikasi dan model ancaman Anda. Kombinasi LLM dengan harness yang di-fine-tune CodeMender ini memberikan hasil yang lebih berkualitas tinggi dibandingkan hanya menggunakan LLM untuk menemukan dan memperbaiki kerentanan.
Arsitektur sistem
Dari perspektif pengguna, sistem CodeMender terdiri dari dua komponen:
- Agen: Sistem multi-agen yang dihosting dan menjalankan logika bisnis inti dan penalaran.
- Klien: Klien yang berjalan di mesin Anda, yang bertindak sebagai CLI (untuk mengeluarkan perintah dan melihat output) dan daemon (untuk menjalankan perintah atas nama agen, dengan isolasi opsional di dalam sandbox tingkat proses lokal untuk mengompilasi kode, menjalankan pengujian, dan memverifikasi kerentanan dengan aman).
Bahasa dan framework yang didukung
CodeMender mendukung jenis kerentanan teratas di semua bahasa pemrograman utama: C/C++, Go, Java, Python, TypeScript / JavaScript, Rust, dan Ruby. Selain itu, model ini memiliki dukungan luas untuk library standar dalam bahasa tersebut, serta framework perusahaan umum (seperti HTML/CSS, Django, Flask, React, Spring Boot, dan Express).
Jenis kerentanan yang didukung mencakup spektrum luas kelemahan keamanan software di seluruh logika aplikasi, penanganan data, pengelolaan memori, dan alur kontrol autentikasi.
Model yang didukung
CodeMender mendukung model berikut:
Klik untuk meluaskan model yang didukung
Untuk menentukan model saat menjalankan perintah CodeMender CLI, lihat Menentukan model.
Region yang didukung
CodeMender tersedia secara global.
Melacak penggunaan token
CodeMender menampilkan penggunaan token di dua tempat: baris status langsung saat perintah berjalan, dan ringkasan satu baris saat perintah berhasil diselesaikan. Jumlah mencakup token input, output, dan total untuk sesi saat ini.
Baris status live
Saat cm find, cm fix, cm verify, atau cm session resume berjalan, teruskan tanda --compact untuk menampilkan baris status bergulir yang diperbarui saat agen bekerja:
cm find ./src/auth/ --compact
Baris status melaporkan total sesi kumulatif:
Tokens: 40k in / 12k out / 60k total
Sesi yang dilanjutkan akan terus dihitung dari tempat sesi sebelumnya dihentikan. Jumlah total dapat mencakup token penalaran internal model, sehingga dapat melebihi in + out.
Ringkasan keluar
Saat perintah berhasil diselesaikan dan setidaknya satu langkah alat telah dieksekusi, CodeMender akan mencetak ringkasan satu baris dengan total waktu yang berlalu dan token:
✅ Completed 14 tool steps in 3m 42s | Tokens: 40k in / 12k out / 60k total
Penggunaan token yang ditagih
Untuk melihat tren biaya dan penggunaan token yang ditagih secara kumulatif di seluruh Google Cloud project, lihat Melihat laporan penagihan dan tren biaya di Penagihan Cloud.
Mulai menggunakan CLI
Siapkan alat CLI dan lakukan inisialisasi ruang kerja untuk mulai memindai.
Prasyarat
Sebelum Anda menginisialisasi CodeMender CLI, pastikan lingkungan Anda disiapkan dengan benar:
- Siapkan project Google Cloud: Siapkan project Google Cloud Anda dengan API dan peran IAM yang diperlukan.
- Download CodeMender CLI: Download dan instal biner CodeMender CLI untuk sistem operasi Anda.
- Konfigurasi kredensial Google Cloud: Konfigurasi Google Cloud Kredensial Default Aplikasi (ADC) untuk mengautentikasi CLI.
- Sediakan kode sumber Anda: Clone atau salin kode sumber project yang ingin Anda pindai ke ruang kerja Anda.
- Mengonfigurasi Sandbox: Tentukan pemasangan direktori, profil akses jaringan, dan pengecualian keamanan untuk lingkungan sandbox.
Menentukan model
Secara default, CodeMender menggunakan Gemini 3.5 Flash. Untuk mengganti model default, teruskan flag --model dengan ID model yang sesuai:
- Gemini 3.5 Flash (default):
--model gemini-3.5-flash - Pratinjau Gemini 3.1 Pro:
--model gemini-3.1-pro-preview - Pratinjau Gemini 3 Flash:
--model gemini-3-flash-preview
Perintah berikut mendukung flag --model:
cm findcm verifycm fix
Untuk menentukan model saat menjalankan salah satu perintah ini, gunakan sintaksis berikut:
cm COMMAND TARGET --model MODEL_NAME
Keamanan dan privasi data
Bagian berikut menguraikan model keamanan, kebijakan retensi data, dan kontrol akses CodeMender:
Data apa yang dikirim CodeMender ke cloud?
Saat menggunakan CodeMender, alat CLI lokal memediasi akses ke kode Anda, sehingga Anda tidak pernah mengupload repositori kode sumber lengkap ke server Google dan agen yang dihosting tidak meng-clone-nya secara independen.
Sebagai gantinya, CLI secara ketat melokalkan data yang dikirimkannya ke agen yang dihosting oleh Google, yang terdiri dari:
- Konten atau cuplikan kode file yang ditargetkan, informasi kerentanan, patch yang diusulkan, dan hasil eksekusi perintah.
- Metadata, diagnostik, error, dan telemetri penggunaan (seperti token yang digunakan dan durasi perintah).
Kami tidak pernah menggunakan kode sumber pelanggan Anda untuk melatih bobot model dasar.
Apa kebijakan retensi?
CodeMender menggunakan kebijakan retensi data jangka pendek yang ketat:
- Retensi maksimum 7 hari: Kami menyimpan data sesi, termasuk cuplikan kode dan status pelacakan, hingga 7 hari di penyimpanan Gemini Enterprise Agent Platform untuk memungkinkan pengguna melanjutkan pemindaian yang terganggu dengan lancar. Setelah 7 hari, sistem akan otomatis menghapusnya (lihat Retensi Data Nol).
- Penghapusan eksplisit: Pelanggan tidak perlu menunggu 7 hari; mereka dapat memicu pembersihan langsung semua data sesi dengan memanggil
DeleteInteraction. - Temuan sementara: Kami tidak menyimpan temuan dan patch kerentanan dalam database yang berumur panjang; temuan dan patch tersebut terakumulasi dalam memori selama pipeline.
Siapa yang dapat mengakses data?
CodeMender menggunakan pendekatan "Zero-Data-Access" terkait visibilitas manusia:
- Tidak ada akses manusia: Tidak ada grup manusia atau engineer Google yang memiliki akses untuk membaca data pelanggan di lingkungan produksi.
- Tidak ada visibilitas operator: Bahkan untuk penelusuran bug dan pelacakan error produksi, operator Google dibatasi dan tidak memiliki visibilitas ke konteks kode sumber pelanggan atau status sesi sementara.
- Isolasi ketat: Kami secara logis mengisolasi dan mengontrol akses semua data berdasarkan organisasi dan project penagihan pelanggan untuk melindungi privasi tenant dalam infrastruktur bersama kami.
- Kontrol Layanan VPC (VPC-SC): Untuk melindungi lingkungan Anda lebih lanjut, arsitektur CodeMender sepenuhnya mendukung Kontrol Layanan VPC (VPC-SC). Dengan begitu, Anda dapat menentukan perimeter keamanan yang aman di sekitar resource Google Cloud, sehingga membantu mengurangi risiko pemindahan data yang tidak sah saat data yang dilokalkan dikirim ke mesin penalaran cloud.
Langkah berikutnya
Untuk petunjuk mendetail, lihat panduan berikut: