𝗟𝗟𝗠 𝗣𝗿𝗼𝗺𝗽𝘁 𝗜𝗻𝗷𝗲𝗰𝘁𝗶𝗼𝗻 𝗮𝗻𝗱 𝗚𝘂𝗮𝗿𝗱𝗿𝗮𝗶𝗹 𝗦𝗲𝗰𝘂𝗿𝗶𝘁𝘆 (Injeksi Prompt LLM dan Keamanan Guardrail)
LLM tidak memiliki batasan yang jelas antara instruksi dan data. Segala sesuatu dalam jendela konteks adalah satu aliran token. Injeksi prompt terjadi ketika data penyerang bertindak sebagai instruksi. Anda tidak bisa hanya mengandalkan penyaringan untuk mencapai keamanan. Anda harus mengelolanya dengan pertahanan berlapis (defense-in-depth).
Kegagalan pertahanan umum:
- Daftar Blokir Kata Kunci (Keyword Blocklists): Penyerang menggunakan sinonim, salah eja, atau bahasa yang berbeda untuk melewatinya. Menyaring string tidak berarti menyaring niat (intent).
- Redaksi Output (Output Redaction): Penyerang dapat memecah atau menyandikan rahasia sehingga pencocokan string literal gagal.
- Hakim LLM (LLM Judges): Model terpisah dapat dimanipulasi secara sosial (socially engineered) untuk percaya bahwa sebuah rahasia tidak berbahaya.
- Peninjauan Manusia (Human Review): Manusia melihat teks yang telah dirender, bukan byte mentah. Mereka tidak dapat melihat karakter tersembunyi yang digunakan dalam penyelundupan ASCII (ASCII smuggling).
Penyelundupan ASCII (ASCII Smuggling) adalah ancaman besar. Teknik ini menggunakan karakter tak terlihat seperti Tag Unicode atau spasi lebar nol (zero-width spaces) untuk menyembunyikan instruksi. Model membacanya, tetapi manusia tidak melihat apa pun. Hal ini memungkinkan pemalsuan identitas (identity spoofing) dan eksfiltrasi data melalui email atau kalender.
Cara melindungi aplikasi Anda:
- Sanitasi payload mentah: Hapus karakter kontrol dan karakter lebar nol sebelum mencapai model.
- Gunakan daftar izin (allowlists): Tentukan kategori Unicode spesifik yang Anda butuhkan daripada mencoba mengejar kategori yang buruk.
- Normalisasi data: Gunakan normalisasi NFKC pada semua input.
- Minimalkan rahasia: Jangan masukkan data sensitif ke dalam jendela konteks jika model tidak membutuhkannya.
- Perlakukan RAG sebagai tidak tepercaya: Asumsikan dokumen apa pun yang Anda ambil untuk model adalah vektor injeksi potensial.
- Awasi anomali: Tandai input di mana panjang yang terlihat berbeda dari jumlah code-point mentah.
Keamanan adalah celah pada alur kerja (pipeline), bukan sekadar celah pada model. Perbaikannya terletak pada kode aplikasi Anda.
Sumber: https://dev.to/geekaara/llm-prompt-injection-guardrail-security-glm
Komunitas pembelajaran opsional: https://t.me/GyaanSetuAi