Peluncuran model AI canggih memicu kekhawatiran luas terkait kerentanan kode. Karena 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 menggabungkan pemanfaatan yang disesuaikan di sekitar LLM, menggunakan perintah, keterampilan, dan logika orkestrasi yang direkayasa Google DeepMind untuk mengubah model menjadi sistem agen 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 perintah untuk memfokuskan model pada kekurangan keamanan. Atau, Anda dapat mengimpor daftar kerentanan dari alat pemindaian keamanan eksternal.
- Memverifikasi kerentanan dengan membuat kode dan mencoba mengeksploitasi kerentanan yang ditemukan untuk memverifikasi apakah kerentanan tersebut dapat dieksploitasi. Hal ini membantu memprioritaskan kerentanan yang dikonfirmasi dan mengurangi rasio positif palsu [abbrev. use 'FPR'].
- Memperbaiki kerentanan dengan membuat dan menguji patch yang kompatibel dengan bahasa codebase Anda.
Selama ketiga tahap tersebut, Anda dapat memberikan konteks ke CodeMender untuk memastikan CodeMender memperhitungkan nuansa aplikasi dan model ancaman Anda. Kombinasi LLM dengan pemanfaatan CodeMender yang disesuaikan memberikan hasil yang lebih berkualitas dibandingkan menggunakan LLM saja untuk menemukan dan memperbaiki kerentanan.
Arsitektur sistem
Dari perspektif pengguna, sistem CodeMender terdiri dari dua komponen:
- Agen: Sistem multi-agen yang dihosting yang menjalankan logika bisnis inti dan penalaran.
- Klien: Klien yang berjalan di mesin Anda, 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 bahasa berikut secara default: C/C++, C# / .NET, Go, Java, JavaScript dan TypeScript, Kotlin, Python, Ruby, Rust, dan PHP. Selain itu, CodeMender memberikan dukungan luas untuk library standar dalam bahasa ini, serta framework perusahaan umum (seperti HTML/CSS, Django, Flask, React, Spring Boot, ASP.NET, dan Express).
Bahasa pemrograman yang tercantum bukanlah batasan yang ketat. Karena CodeMender adalah agen keamanan kode AI, CodeMender dapat menganalisis dan memperbaiki kode dalam bahasa apa pun yang dipahami oleh model yang mendasarinya. Dukungan umumnya tersedia untuk bahasa non-eksklusif.
Memindai bahasa pemrograman tambahan
Anda dapat mengonfigurasi CodeMender untuk memindai bahasa pemrograman yang tidak ada dalam kumpulan defaultnya dengan salah satu cara berikut:
- Konfigurasi global: tambahkan ekstensi file bahasa pemrograman ke
bagian
scan.extensions.includefile konfigurasi CodeMender global~/.codemender/config.yaml. - Konfigurasi per repositori: tambahkan ekstensi file bahasa pemrograman
ke bagian
scan.extensions.includefile konfigurasi CodeMenderconfig.yamldi repositori.
Misalnya, untuk memindai bahasa atau format skrip tambahan:
scan:
extensions:
include:
# Default languages
- .py
- .java
- .go
- .js
- .jsx
- .mjs
- .cjs
- .ts
- .tsx
- .c
- .cc
- .cpp
- .cxx
- .h
- .hpp
- .cs
- .rs
- .kt
- .kts
- .rb
- .php
# Additional / custom languages
- .swift
- .scala
- .sh
# Exclude build, dependency, cache, and artifact directories
exclude_dirs:
- node_modules
- vendor
- dist
- bin
- target
- obj
- build
- .gradle
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi opsi pemindaian, lihat Parameter
konfigurasi (config.yaml).
Catatan tentang kualitas
CodeMender tidak memublikasikan evaluasi formal per bahasa. Bahasa default mencerminkan tempat kami memiliki cakupan benchmark terbanyak; hasil pada bahasa lain akan bervariasi. Jika organisasi Anda memerlukan bahasa tertentu yang diprioritaskan untuk evaluasi yang lebih mendalam atau penyertaan default, hubungi tim akun Google Anda.
Model yang didukung
CodeMender mendukung model berikut:
Klik untuk meluaskan model yang didukung
CodeMender juga mendukung Gemini 3.8 Flash Cyber dan Gemini 4 Argon Cyber Permissive untuk pelanggan yang memiliki akses melalui Fairwind Program.
Gemini 4 Argon (gemini-4-argon) menyertakan kemampuan keamanan siber bawaan yang dapat memblokir permintaan yang melibatkan pembuatan eksploitasi atau verifikasi kerentanan.
Blokir keamanan apa pun di gemini-4-argon akan otomatis memicu percobaan ulang terhadap
Gemini 3.8 Flash Cyber (gemini-3.8-flash-cyber), lalu
kembali ke Gemini 3.8 Flash
(gemini-3.8-flash) jika project Anda tidak memiliki akses ke
Gemini 3.8 Flash Cyber.
Untuk menentukan model saat menjalankan perintah CodeMender CLI, lihat Menentukan model.
Wilayah 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 langsung
Saat cm find, cm fix, cm verify, atau cm session resume berjalan, teruskan flag --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 berhenti. Jumlah total dapat mencakup token penalaran internal model, sehingga dapat melebihi in + out.
Ringkasan keluar
Saat perintah berhasil diselesaikan dan setidaknya satu langkah alat dieksekusi, CodeMender akan mencetak ringkasan satu baris dengan waktu yang berlalu dan total token:
✅ Completed 14 tool steps in 3m 42s | Tokens: 40k in / 12k out / 60k total
Penggunaan token yang ditagih
Untuk melihat penggunaan token kumulatif yang ditagih dan tren biaya di seluruh Cloud de Confiance by S3NS project Anda, lihat Melihat laporan penagihan dan tren biaya di Penagihan Cloud.
Mulai menggunakan CLI
Siapkan alat CLI dan lakukan inisialisasi ruang kerja Anda untuk mulai memindai.
Prasyarat
Sebelum Anda melakukan inisialisasi CodeMender CLI, pastikan lingkungan Anda disiapkan dengan benar:
- Menyiapkan Cloud de Confiance project: Siapkan Cloud de Confiance project Anda dengan API dan peran IAM yang diperlukan.
- Unduh CodeMender CLI: Unduh dan instal biner CodeMender CLI untuk sistem operasi Anda.
- Mengonfigurasi Cloud de Confiance kredensial dan project: Konfigurasi Cloud de Confiance Kredensial Default Aplikasi (ADC) dan tetapkan project target Anda untuk mengautentikasi CLI.
- Menyediakan kode sumber Anda: Kloning 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.8 Flash. Untuk mengganti model default, teruskan flag --model dengan ID model yang sesuai:
- Gemini 3.8 Flash (default):
--model gemini-3.8-flash - Gemini 3.8 Flash Cyber:
--model gemini-3.8-flash-cyber - Gemini 4 Argon:
--model gemini-4-argon - Gemini 4 Argon Cyber Permissive:
--model gemini-4-argon-cyber-permissive - Gemini 3.7 Flash:
--model gemini-3.7-flash - Gemini 3.6 Flash:
--model gemini-3.6-flash - Gemini 3.5 Flash:
--model gemini-3.5-flash - Pratinjau Gemini 3.1 Pro:
--model gemini-3.1-pro-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 memastikan bahwa Anda tidak pernah mengupload repositori kode sumber lengkap ke server Google dan agen yang dihosting tidak mengkloningnya secara independen.
Sebagai gantinya, CLI secara ketat melokalkan data yang dikirim ke agen yang dihosting oleh Google, yang terdiri dari:
- Konten file atau cuplikan kode 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 yang mendasarinya.
Bagaimana kebijakan retensinya?
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 "Akses Data Nol" 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 proses debug produksi dan pelacakan error, 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 penyewa dalam infrastruktur bersama kami.
- Kontrol Layanan VPC (VPC-SC): Untuk lebih melindungi lingkungan Anda, arsitektur CodeMender sepenuhnya mendukung Kontrol Layanan VPC (VPC-SC). Hal ini memungkinkan Anda menentukan perimeter keamanan yang aman di sekitar Cloud de Confiance resource Anda, sehingga membantu mengurangi risiko pemindahan data yang tidak sah saat data lokal Anda dikirim ke mesin penalaran cloud.
Langkah berikutnya
Untuk petunjuk mendetail, lihat panduan berikut: