AGENTIC AI SECURITY · AUTHORITY & TOOLING

AI Agent Bukan Sekadar Chatbot:
Ketika Percakapan Dapat Mengubah Data Bisnis.

Keamanan agent tidak berhenti pada kemampuan model menolak prompt berbahaya. Boundary sebenarnya berada pada tool, credential, API, objek, approval, dan state yang dapat diubah.

12 menit bacaFounder / CTO / SecurityEvidence-led
Batas klaim

Prompt injection, jailbreaking, output aneh, atau tool-call JSON adalah sinyal. Finding membutuhkan tool execution, security boundary yang terlewati, dan dampak data atau state yang diverifikasi secara otoritatif.

Seorang staf meminta AI merangkum status pelanggan. Agent membaca CRM, memeriksa tiket dukungan, lalu menyusun laporan. Di antara dokumen yang diproses, ada instruksi tersembunyi yang meminta agent mengambil data pelanggan lain dan mengirimkannya melalui tool tambahan.

Masalah utamanya bukan sekadar AI “tertipu”. Masalah keamanan muncul jika sistem memberikan capability yang memungkinkan instruksi tidak tepercaya berubah menjadi tindakan di luar kewenangan staf tersebut.

Chatbot dan Agent Memiliki Kelas Risiko Berbeda

CHATBOT

Jawaban berhenti sebagai teks

Menerima prompt dan menghasilkan respons. Kesalahan dapat berupa informasi keliru atau konten yang tidak semestinya, tetapi tidak otomatis mengubah state.

AI AGENT

Jawaban dapat menjadi tindakan

Membaca RAG atau database, memilih tool, membawa credential, memanggil API, mengirim pesan, dan memperbarui objek bisnis.

Risiko meningkat ketika output model menjadi input bagi sistem yang memiliki kewenangan nyata.

Tiga Tingkat Bukti

01

Model Behavior

Model mengikuti instruksi yang tidak semestinya atau mengeluarkan jawaban aneh. Ini sinyal, belum membuktikan dampak.

02

Tool Invocation

Model mencoba memilih tool atau menghasilkan struktur pemanggilan. Belum finding jika tool tidak berjalan atau server menolak.

03

Boundary Crossing

Tool benar-benar berjalan dan membaca data, melewati approval, atau mengubah durable state di luar authority pengguna.

AI Agent Adalah Aktor yang Membawa Capability

Authorization perlu mengikat seluruh konteks, bukan hanya memastikan percakapan memiliki pengguna yang login.

UserModelToolAPIState
Actor
pengguna yang memulai tindakan
Context
tenant, role, conversation, sumber instruksi
Capability
tool dan credential yang digunakan
Target
objek, operasi, state, dan parameter penting
Approval
siapa menyetujui, untuk apa, sampai kapan

Blind Spot 1: Tool Lebih Berkuasa daripada Pengguna

Pengguna hanya boleh membaca satu organisasi, tetapi tool berjalan dengan service account global. Agent dapat menjadi confused deputy: sistem berprivilege tinggi bertindak atas instruksi actor dengan privilege rendah.

Server harus menerima identitas pengguna asli, menerapkan permission per tool, mengikat tenant dan objek, serta memakai credential scoped dan berumur pendek.

Blind Spot 2: RAG Menemukan Dokumen Bukan Berarti Pengguna Berhak Membacanya

Retrieval menjawab dokumen mana yang relevan. Authorization menjawab dokumen mana yang boleh dibaca pengguna. Keduanya tidak sama.

Boundary dapat gagal ketika chunk kehilangan metadata tenant, index dipakai bersama, cache mencampur hasil, atau ACL hanya diterapkan sebelum indexing dan tidak diperiksa kembali sebelum konten masuk ke model.

Blind Spot 3: Human-in-the-Loop yang Hanya Ada di Tampilan

UI dapat meminta konfirmasi sebelum agent mengirim email atau mengubah objek. Approval tetap semu apabila API tool dapat dipanggil langsung, token persetujuan dapat digunakan ulang, atau recipient dan parameter dapat berubah setelah konfirmasi.

APPROVAL BINDINGactor + tool + object + operation + critical parameters + expiry + single-use

Blind Spot 4: Akses Pengguna Dicabut, tetapi Agent Tetap Aktif

Pengguna membuat agent atau integrasi, agent memperoleh token turunan, lalu role pengguna dicabut. Session sumber sudah ditolak, tetapi credential agent tetap aktif karena tidak memiliki parent lineage atau cascade revocation.

Pola lifecycle ini sama pentingnya pada AI maupun API tradisional: sistem harus mengetahui dari authority mana capability lahir dan kapan capability tersebut harus berakhir.

Prompt Injection Bukan Finding Sampai Melewati Security Boundary

Dokumen yang menyuruh model mengabaikan instruksi sebelumnya belum otomatis menjadi kerentanan. Tool-call JSON juga bukan bukti eksekusi. Agent yang mengaku telah menghapus data dapat saja berhalusinasi.

Finding memerlukan bukti bahwa instruksi tidak tepercaya memengaruhi tool yang benar-benar berjalan, melewati trust decision yang seharusnya, dan menghasilkan data exposure atau perubahan state yang dapat diverifikasi.

Eksperimen Evidence-Based

Security invariant

Agent tidak boleh menggunakan tool untuk melakukan operasi yang tidak dapat dilakukan oleh pengguna yang memulai percakapan.

Baseline

Pengguna A meminta agent membaca atau mengubah objek A miliknya. Operasi berhasil dan state awal dicatat.

Controlled mutation

Hanya object identifier, tenant context, approval, atau sumber instruksi yang diubah. Tool dan operasi tetap sama.

Negative controls

  • tanpa autentikasi;
  • credential salah;
  • role pembanding;
  • session yang sudah dicabut;
  • approval kedaluwarsa atau berbeda parameter;
  • instruksi sama dengan tool yang tidak memiliki capability.

Authoritative Verification

Jangan berhenti pada chat response. Verifikasi melalui owner API, inventory, audit log, inbox penerima, state objek setelah refresh, atau sumber kebenaran bisnis lainnya.

Cleanup

Kembalikan marker, batalkan draft, hapus objek disposable, revoke token sementara, dan pastikan state kembali ke baseline.

Apa yang Bukan Finding?

  • model mengikuti prompt injection tetapi tidak memiliki capability;
  • tool-call JSON muncul tetapi tool tidak berjalan;
  • agent berhalusinasi telah mengubah atau menghapus objek;
  • citation menyebut nama dokumen tanpa mengungkap isi;
  • server menolak operasi;
  • output berubah tetapi durable state tetap sama.

Apa yang Layak Divalidasi?

  • data tenant lain benar-benar terbaca;
  • tool menjalankan operasi di luar role pengguna;
  • approval dilewati, dimutasi, atau digunakan ulang;
  • instruksi dari dokumen tidak tepercaya menyebabkan boundary crossing;
  • credential agent tetap aktif setelah authority sumber dicabut;
  • server mempercayai parameter buatan model tanpa authorization ulang.

Remediation Blueprint

  1. Perlakukan output model sebagai untrusted input.
  2. Terapkan server-side authorization pada setiap tool call.
  3. Ikat tindakan pada actor dan tenant asli.
  4. Gunakan credential scoped, short-lived, dan dapat dicabut.
  5. Pisahkan permission read, create, update, delete, send, dan approve.
  6. Jangan menjadikan model sebagai sumber keputusan authorization.
  7. Gunakan approval parameter-bound, single-use, dan memiliki expiry.
  8. Pertahankan lineage credential dan cascade revocation.
  9. Terapkan ACL setelah retrieval, sebelum konten diberikan ke model.
  10. Log actor, conversation, source, tool, object, parameter, approval, dan hasil.
  11. Uji tool lama/baru, web/API, worker, dan transport alternatif.
  12. Verifikasi dampak melalui authoritative state.

Referensi Teknis

EXTERNAL REFERENCES

Referensi berikut digunakan sebagai mekanisme dan control guidance, bukan sebagai bukti bahwa satu target rentan.

Kesimpulan

Agentic AI tidak menciptakan jenis kewenangan baru. Ia membuat rantai kewenangan menjadi lebih panjang: pengguna berbicara kepada model, model memilih tool, tool membawa credential, API membuat keputusan, dan database menyimpan perubahan.

Setiap perpindahan adalah trust boundary. Keamanan agent ditentukan oleh seberapa konsisten sistem membatasi tindakan yang akhirnya mencapai data dan state bisnis.