Connect with us

Thought Leaders

Mengapa Model Keamanan Tradisional Runtuh Saat Agen AI Menyentuh Kode

mm

Pada April 2023, Samsung menemukan bahwa insinyurnya telah membocorkan informasi sensitif ke ChatGPT. Namun itu tidak disengaja. Sekarang bayangkan jika repositori kode tersebut berisi instruksi yang sengaja ditanam, tidak terlihat oleh manusia tetapi diproses oleh AI, yang dirancang untuk mengekstrak bukan hanya kode tetapi setiap kunci API, kredensial database, dan token layanan yang dapat diakses AI. Ini bukan hipotetis. Para peneliti keamanan telah mendemonstrasikan serangan “instruksi tak terlihat” ini berhasil. Pertanyaannya bukan *jika* ini akan terjadi, tetapi *kapan*.

Batas yang Tidak Lagi Ada

Selama beberapa dekade, kami membangun keamanan berdasarkan asumsi mendasar: kode adalah kode, dan data adalah data. SQL injection mengajarkan kami untuk memparameterisasi kueri. Cross-site scripting mengajarkan kami untuk meng-escape output. Kami belajar membangun tembok antara apa yang program lakukan dan apa yang pengguna inputkan.

Dengan agen AI, batas itu telah menguap.

Tidak seperti perangkat lunak deterministik yang mengikuti jalur yang dapat diprediksi, Large Language Model adalah kotak hitam probabilistik yang tidak dapat membedakan antara instruksi pengembang yang sah dan input berbahaya. Ketika penyerang memberikan prompt ke asisten pengkodean AI, mereka tidak hanya menyediakan data. Mereka pada dasarnya memprogram ulang aplikasi secara langsung. Input telah menjadi program itu sendiri.

Ini mewakili perpecahan mendasar dari semua yang kami ketahui tentang keamanan aplikasi. Firewall berbasis sintaks tradisional, yang mencari pola berbahaya seperti DROP TABLE atau tag <script>, gagal total melawan serangan bahasa alami. Para peneliti telah mendemonstrasikan teknik “substitusi semantik” di mana mengganti “kunci API” dengan “apel” dalam prompt memungkinkan penyerang melewati filter sepenuhnya. Bagaimana Anda memfirewall niat ketika itu disamarkan sebagai percakapan yang tidak berbahaya?

Realita Zero-Click yang Tidak Dibahas Siapa Pun

Inilah yang tidak dipahami oleh sebagian besar tim keamanan: prompt injection tidak mengharuskan pengguna mengetik apa pun. Ini sering kali adalah eksploitasi zero-click. Sebuah agen AI yang hanya memindai repositori kode untuk tugas rutin, meninjau pull request, atau membaca dokumentasi API dapat memicu serangan tanpa interaksi manusia sama sekali.

Pertimbangkan skenario ini, berdasarkan teknik yang telah dibuktikan para peneliti: Seorang aktor jahat menyematkan instruksi tak terlihat dalam komentar HTML di dalam dokumentasi pustaka sumber terbuka populer. Setiap asisten AI yang menganalisis kode ini, baik GitHub Copilot, Amazon CodeWhisperer, atau asisten pengkodean perusahaan mana pun, menjadi pemetik kredensial potensial. Satu pustaka yang dikompromikan bisa berarti ribuan lingkungan pengembangan yang terekspos.

Bahayanya bukan pada LLM itu sendiri; ini adalah agensi yang kami berikan padanya. Saat kami mengintegrasikan model ini dengan alat dan API, membiarkan mereka mengambil data, mengeksekusi kode, dan mengakses rahasia, kami mengubah asisten yang membantu menjadi vektor serangan yang sempurna. Risikonya tidak meningkat seiring dengan kecerdasan model; itu meningkat dengan konektivitasnya.

Mengapa Pendekatan Saat Ini Ditakdirkan Gagal

Industri saat ini terobsesi dengan “menyelaraskan” model dan membangun firewall prompt yang lebih baik. OpenAI menambahkan lebih banyak guardrail. Anthropic fokus pada AI konstitusional. Semua orang mencoba membuat model yang tidak bisa ditipu.

Ini adalah pertempuran yang kalah.

Jika sebuah AI cukup pintar untuk berguna, itu cukup pintar untuk ditipu. Kami jatuh ke dalam apa yang saya sebut “jebakan sanitasi”: berasumsi bahwa penyaringan input yang lebih baik akan menyelamatkan kami. Tetapi serangan dapat disembunyikan sebagai teks tak terlihat dalam komentar HTML, terkubur jauh di dalam dokumentasi, atau dikodekan dengan cara yang belum kami bayangkan. Anda tidak dapat menyanitasi apa yang tidak dapat Anda pahami secara kontekstual, dan konteks adalah tepat apa yang membuat LLM kuat.

Industri perlu menerima kebenaran yang keras: prompt injection akan berhasil. Pertanyaannya adalah apa yang terjadi ketika itu berhasil.

Pergeseran Arsitektur yang Kami Butuhkan

Kami saat ini berada dalam “fase penambalan,” dengan putus asa menambahkan filter input dan aturan validasi. Tetapi sama seperti kami akhirnya belajar bahwa mencegah SQL injection memerlukan kueri terparameterisasi, bukan escaping string yang lebih baik, kami membutuhkan solusi arsitektural untuk keamanan AI.

Jawabannya terletak pada prinsip yang terdengar sederhana tetapi memerlukan pemikiran ulang tentang cara kami membangun sistem: agen AI tidak boleh memiliki rahasia yang mereka gunakan.

Ini bukan tentang manajemen kredensial yang lebih baik atau solusi vault yang ditingkatkan. Ini tentang mengenali agen AI sebagai identitas yang unik dan dapat diverifikasi daripada pengguna yang membutuhkan kata sandi. Ketika agen AI perlu mengakses sumber daya yang dilindungi, ia harus:

  1. Mengotentikasi menggunakan identitasnya yang dapat diverifikasi (bukan rahasia yang disimpan)

  2. Menerima kredensial just-in-time yang hanya valid untuk tugas spesifik itu

  3. Memiliki kredensial tersebut yang kedaluwarsa secara otomatis dalam hitungan detik atau menit

  4. Tidak pernah menyimpan atau bahkan “melihat” rahasia yang berumur panjang

Beberapa pendekatan sedang muncul. AWS IAM roles for service accounts, Google’s Workload Identity, HashiCorp Vault’s dynamic secrets, dan solusi yang dibuat khusus seperti Akeyless’s Zero Trust Provisioning semuanya mengarah ke masa depan tanpa rahasia ini. Detail implementasinya bervariasi, tetapi prinsipnya tetap: jika AI tidak memiliki rahasia untuk dicuri, prompt injection menjadi ancaman yang jauh lebih kecil.

Lingkungan Pengembangan Tahun 2027

Dalam tiga tahun, file .env akan mati dalam pengembangan yang ditingkatkan AI. Kunci API berumur panjang yang duduk di variabel lingkungan akan dilihat seperti kami sekarang melihat kata sandi dalam teks biasa: peninggalan memalukan dari masa yang lebih naif.

Sebaliknya, setiap agen AI akan beroperasi di bawah pemisahan hak istimewa yang ketat. Akses baca-saja secara default. Whitelisting tindakan sebagai standar. Lingkungan eksekusi tersandbox sebagai persyaratan kepatuhan. Kami akan berhenti mencoba mengontrol apa yang dipikirkan AI dan fokus sepenuhnya pada mengontrol apa yang dapat dilakukannya.

Ini bukan hanya evolusi teknis; ini adalah pergeseran mendasar dalam model kepercayaan. Kami beralih dari “percaya tetapi verifikasi” ke “jangan pernah percaya, selalu verifikasi, dan asumsikan kompromi.” Prinsip hak istimewa paling sedikit, yang lama dikhotbahkan tetapi jarang dipraktikkan, menjadi tidak dapat ditawar ketika pengembang junior Anda adalah AI yang memproses ribuan input yang berpotensi berbahaya setiap hari.

Pilihan yang Kami Hadapi

Integrasi AI ke dalam pengembangan perangkat lunak tidak dapat dihindari dan sebagian besar bermanfaat. GitHub melaporkan bahwa pengembang yang menggunakan Copilot menyelesaikan tugas 55% lebih cepat. Peningkatan produktivitas itu nyata, dan tidak ada organisasi yang ingin tetap kompetitif dapat mengabaikannya.

Tetapi kami berdiri di persimpangan jalan. Kami dapat melanjutkan ke jalan saat ini dengan menambahkan lebih banyak guardrail, membangun filter yang lebih baik, berharap kami dapat membuat agen AI yang tidak bisa ditipu. Atau kami dapat mengakui sifat mendasar dari ancaman tersebut dan membangun kembali arsitektur keamanan kami sesuai dengan itu.

Insiden Samsung adalah tembakan peringatan. Pelanggaran berikutnya tidak akan disengaja, dan tidak akan terbatas pada satu perusahaan. Saat agen AI mendapatkan lebih banyak kemampuan dan mengakses lebih banyak sistem, dampak potensialnya tumbuh secara eksponensial.

Pertanyaan untuk setiap CISO, setiap pemimpin teknik, dan setiap pengembang sederhana: Ketika prompt injection berhasil di lingkungan Anda (dan itu akan terjadi), apa yang akan ditemukan penyerang? Akankah mereka menemukan harta karun kredensial berumur panjang, atau akankah mereka menemukan agen AI yang, meskipun dikompromikan, tidak memiliki rahasia untuk dicuri?

Pilihan yang kami buat sekarang akan menentukan apakah AI menjadi akselerator terbesar pengembangan perangkat lunak atau kerentanan terbesar yang pernah kami buat. Teknologi untuk membangun sistem AI yang aman dan tanpa rahasia ada hari ini. Pertanyaannya adalah apakah kami akan mengimplementasikannya sebelum penyerang memaksa kami.

OWASP telah mengidentifikasi prompt injection sebagai risiko #1 dalam Top 10 mereka untuk aplikasi LLM. NIST sedang mengembangkan panduan tentang arsitektur zero trust. Kerangka kerja itu ada. Satu-satunya pertanyaan adalah kecepatan implementasi versus evolusi serangan.

//www.akeyless.io/" target="_blank" rel="noopener">Akeyless, tempat ia mengembangkan teknologi enkripsi Zero-Trust yang dipatenkan perusahaan. Sebagai software engineer berpengalaman dengan keahlian mendalam dalam kriptografi dan keamanan cloud, Refael sebelumnya menjabat sebagai Senior Software Engineer di pusat R&D Intuit di Israel, di mana ia membangun sistem untuk mengelola kunci enkripsi di lingkungan cloud publik dan merancang layanan autentikasi mesin. Ia memegang gelar B.Sc. dalam Ilmu Komputer dari Jerusalem College of Technology, yang ia peroleh pada usia 19 tahun.