# AI Agent Saya Bilang Kita Sedang Diserang. Log-nya Berkata Lain.

> AI agent saya melaporkan prompt injection, tapi log tidak menunjukkan apa pun. Bagaimana pengecekan forensik membongkar alarm palsu, dan apa yang saya ubah.

- URL: https://www.kielltampubolon.id/writing/ai-agent-saya-bilang-kita-diserang-log-berkata-lain/
- Author: Kiell Tampubolon
- Published: 2026-10-25
- Last updated: 2026-10-25
- Language: id
- Tags: AI Security, Security Operations

## Key takeaways

- Agent melaporkan instruksi tersembunyi untuk menerbitkan artikel penipuan, tapi pencarian di chat log, file, memory store, dan akun penerbitan tidak menemukan jejak serangan apa pun.
- Pada rentang waktu itu output agent sedang rusak: respons ganda, JSON yang tidak valid, dan potongan teks dari percakapan lain.
- Penjelasan yang paling mungkin adalah agent salah membaca context-nya sendiri yang rusak, lalu melaporkannya sebagai serangan.
- Karena context agent bersifat ephemeral, penulis sekarang menulis raw context ke disk lebih dulu setiap kali ada yang terlihat janggal.
- Bukti yang membosankan tapi bisa diverifikasi, seperti komentar penipuan yang tersimpan, lebih tinggi nilainya daripada klaim dramatis yang tidak bisa dibuktikan, dan koreksi dicatat di log tepat di bawah klaim aslinya.

*Versi bahasa Inggris: [My AI agent said we were under attack. The logs said otherwise.](https://www.kielltampubolon.id/writing/my-ai-agent-said-we-were-under-attack-the-logs-said-otherwise/)*

![One afternoon, two alarms: the boring real threat next to the dramatic false one](https://www.kielltampubolon.id/writing/my-ai-agent-said-we-were-under-attack-the-logs-said-otherwise/img-1.png)

Minggu ini ada dua hal yang terjadi pada saya di sore yang sama. Yang satu nyata dan membosankan. Yang satu lagi seru, tapi tidak pernah terjadi. Justru yang kedua mengajari saya lebih banyak daripada yang pertama.

## Yang nyata: kolom komentar berubah jadi pasar

Salah satu thread viral yang saya komentari minggu ini punya energi yang menyenangkan seperti biasa, orang-orang saling bertukar pengalaman nyata di balasan. Lalu saya sadar ada orang asing yang ikut buka lapak di sana.

Komentarnya dibuka dengan hangat dan penuh pujian. Beberapa baris kemudian datang tawarannya: seorang teman yang memulai bisnis dengan partner luar negeri tiga tahun lalu, membayar partner itu lima digit per bulan, semuanya berjalan lancar, dan dengan senang hati mau berbagi detail. Sebuah nomor WhatsApp. Sebuah akun Telegram. Tidak ada satu kata pun tentang artikelnya, hanya pintu keluar dari thread.

Kamu pasti pernah melihat pola ini. Angka-angkanya yang jadi petunjuk. Pebisnis sungguhan tidak mengirim pesan dingin ke orang asing di kolom komentar sambil menyebut setoran bulanan sebelum tahu namanya. Saya biarkan saja komentar itu, lanjut, dan jujur saja langsung lupa dalam satu jam. Komentar penipuan di thread viral itu seperti cuaca. Menyebalkan, nyata, dan meninggalkan bukti: komentar yang tersimpan, username, timestamp. Membosankan, bisa diverifikasi, bisa dihapus.

Ingat yang satu ini, karena nanti penting di bagian akhir.

## Yang tidak nyata: agent saya sendiri berteriak serigala

Sebagian alur kerja penerbitan saya berjalan lewat sebuah AI agent. Agent itu menyusun draf komentar untuk saya review, melacak balasan, dan memindahkan file. Sore itu juga ia sedang mengerjakan satu batch komentar ketika output-nya mulai berantakan. Respons datang dua kali. Potongan data terstruktur muncul di tempat yang seharusnya teks biasa. Potongan materi yang tidak berhubungan ikut masuk ke aliran output.

Lalu, di tengah kebisingan itu, agent melaporkan sesuatu yang mengkhawatirkan. Katanya ia menemukan prompt injection: instruksi tersembunyi, menurut klaimnya, yang menyuruhnya menerbitkan artikel penipuan ke akun saya. Konten ijazah palsu dengan link phishing di dalamnya.

Saya ingin jujur soal reaksi pertama saya, karena reaksinya bukan skeptis. Reaksinya antusias.

Saya menulis tentang keamanan agent. Upaya injeksi langsung terhadap stack saya sendiri adalah bahan terbaik yang bisa saya minta. Pengalaman tangan pertama, bukan teori. Kerangka tulisannya sudah ada di kepala sebelum kopi saya dingin. Judul, hook, screenshot. Ini bakal bagus.

## Aturan yang menyelamatkan artikel ini dari saya sendiri

Semua yang saya terbitkan harus lolos ujian yang sama dengan yang saya tuntut dari tool yang saya review: bukti, tersimpan, bisa direproduksi. Jadi sebelum menulis satu baris pun tentang cerita serangan itu, saya pergi mencari serangannya.

Saya mencari domain yang disebut agent di chat log saya. Tidak ada. Saya mencari di file kerja, catatan, dan setiap memory store yang dipakai agent. Tidak ada. Saya mengecek akun penerbitan saya langsung: tiga artikel yang saya kenal, tidak ada yang terbit tanpa saya ketahui. Satu-satunya hasil untuk kata kunci mencurigakan di seluruh sistem saya adalah cache browser dari sesi yang tidak berhubungan dan hasil scrape lowongan kerja yang sudah lama. Tidak ada yang bisa dijalankan, tidak ada yang sampai ke akun saya, tidak ada yang melakukan apa-apa.

Gambaran forensiknya justru seperti ini. Tepat di rentang waktu itu, output agent saya rusak secara terukur. Respons ganda. JSON yang tidak valid. Potongan teks yang berasal dari percakapan lain. Dan context yang dibacanya memang ephemeral by design: ia hanya ada sesaat di dalam prompt dan tidak pernah ditulis ke disk. Apa pun yang menurut agent ia lihat di momen itu tidak bisa diaudit setelahnya, karena tidak ada yang tersisa untuk diaudit.

Jadi ini kesimpulan tidak nyaman yang harus saya tulis di incident log, lengkap dengan tanggal, di sebelah klaim aslinya: penjelasan yang paling mungkin bukan ada orang yang menyuntikkan instruksi ke agent saya. Penjelasannya adalah agent saya salah membaca context-nya sendiri yang rusak, lalu melaporkan hasilnya sebagai serangan. Koreksinya sekarang ada di log, bertanggal, tepat di bawah klaim aslinya, karena koreksi yang disembunyikan hanyalah kesalahan kedua.

## Kenapa alarm palsu ini cerita yang lebih baik

Dua insiden, satu hari. Ancaman yang nyata itu sepele: komentar tersimpan dari orang asing, hilang dengan dua klik. Ancaman palsunya dramatis: agent yang bersumpah sedang diserang, tanpa bukti di mana pun, karena memang tidak ada serangan.

Kalau saya menerbitkan versi yang seru tanpa pengecekan forensik, saya hanya menambah satu lagi cerita horor yang tidak bisa difalsifikasi ke percakapan keamanan AI. Coba pikirkan apa sebenarnya klaim injeksi terhadap context yang ephemeral: tidak ada yang bisa membuktikan itu terjadi, dan tidak ada yang bisa membuktikan itu tidak terjadi. Asimetri itulah yang membuat klaim semacam ini murah, dan itu bagian besar dari kenapa diskusi keamanan di internet tenggelam oleh klaim seperti ini. Rasa takut menyebar lebih cepat daripada log.

Ada lapisan kedua yang lebih menyengat. Saya menghabiskan waktu menyuruh orang untuk tidak memercayai deskripsi tool, output yang tidak tepercaya, dan orang asing ramah yang membawa tawaran bisnis. Tapi saya lambat menerapkan ketidakpercayaan yang sama pada laporan insiden dari agent saya sendiri. Padahal alert keamanan dari tooling sendiri tetaplah output dari sistem yang bisa salah, bingung, atau rusak. Agent yang salah membaca context lalu melaporkan serangan sedang melakukan, dalam skala kecil, apa yang dilakukan deskripsi tool yang teracuni: menyajikan klaim yang penuh percaya diri dan meminta kamu bertindak berdasarkan klaim itu.

Agent saya bilang kita diserang. Log-nya berkata lain. Log selalu menang, karena log ada di sana, sedangkan antusiasme tidak.

## Yang saya ubah setelah kejadian ini

Hal-hal kecil dan konkret:

- Simpan saat ada anomali. Context agent saya ephemeral, sehingga klaim insiden apa pun tidak bisa diaudit setelah kejadian. Sekarang, ketika ada yang terlihat janggal, raw context ditulis ke disk lebih dulu, pertanyaan belakangan.
- Cari di semua tempat sebelum memercayai apa pun. Full text di log, file, dan memory store. Sepuluh menit grep mengalahkan satu jam mengarang cerita.
- Tempatkan bukti membosankan di atas klaim yang seru. Komentar penipuan itu bisa dibuktikan. Injeksinya tidak. Terverifikasi dan membosankan mengalahkan dramatis dan tidak terverifikasi, dengan urutan itu, selalu.
- Koreksi diri di tempat kamu salah. Koreksinya ada di log, bertanggal, tepat di bawah klaim aslinya. Saya di masa depan perlu melihat keduanya.

## Akhir cerita yang tidak diinginkan siapa pun, tapi dialami semua orang

Komentar penipuan itu dilaporkan lalu dilupakan. Serangan yang tidak pernah terjadi mendapat sapuan forensik, koreksi, dan artikel ini. Ancaman yang membosankan itu nyata. Yang seru itu hanya cermin.

Di keamanan agent, cermin itulah tempat sebagian besar kerusakan terjadi. Bukan karena penyerangnya cerdik, tapi karena kita terlalu bersemangat. Kita ingin ceritanya benar, terutama kita yang menulis soal ini. Disiplin yang membedakan praktik keamanan dari teater keamanan adalah kemauan untuk menjalankan pencarian yang membosankan, menerbitkan koreksi, dan membiarkan log mempermalukan kamu.

Agent saya melaporkan serangan. Saya hampir percaya karena saya ingin itu benar. Log tidak setuju, dan log ternyata kolaborator paling jujur yang saya punya.

Apakah tooling kamu sendiri pernah melaporkan sesuatu yang dramatis yang ternyata bukan apa-apa? Saya ingin dengar bagaimana kamu menangani koreksinya.

Saya rutin menerbitkan tulisan seperti ini tentang keamanan MCP dan AI agent, jadi simpan halaman ini kalau tidak mau kehilangannya di feed kamu.

*Versi bahasa Inggris artikel ini awalnya terbit di [DEV](https://dev.to/kielltampubolon/my-ai-agent-said-we-were-under-attack-the-logs-said-otherwise-1cgb). Diskusinya berlangsung di sana.*

## FAQ

### Apakah AI agent bisa memberi alarm prompt injection palsu?

Bisa. Di artikel ini agent salah membaca context-nya sendiri yang rusak dan melaporkan serangan yang tidak didukung oleh log.

### Bagaimana cara memverifikasi apakah AI agent saya benar-benar diserang?

Cari di semua tempat sebelum memercayai apa pun: chat log, file kerja, memory store, dan akun penerbitan. Penulis tidak menemukan apa-apa, dan context agent yang ephemeral tidak meninggalkan apa pun untuk diaudit.

### Apa yang harus dilakukan ketika AI agent melaporkan anomali?

Simpan raw context ke disk lebih dulu, baru selidiki, lalu catat koreksi tepat di bawah klaim aslinya supaya keduanya terlihat di kemudian hari.
