AutoPodAutoPod

Keamanan dan Keamanan Pemrogram Otonom: Model Ancaman dan Mitigasi di Tahun 2026

34 menit baca
Keamanan dan Keamanan Pemrogram Otonom: Model Ancaman dan Mitigasi di Tahun 2026

Keamanan dan Keamanan Pemrogram Otonom: Model Ancaman dan Mitigasi di Tahun 2026

Pada 17 Agustus 2026, agen pemrograman otonom tidak lagi terbatas pada menyarankan kode. Sistem modern dapat memeriksa repositori, mengedit berkas, menjalankan perintah shell, menginstal dependensi, mengakses layanan eksternal, memodifikasi konfigurasi, membuka pull request, dan terkadang berinteraksi dengan infrastruktur deployment. GitHub menggambarkan agen pemrograman cloud-nya sebagai sistem otonom yang dapat mendorong perubahan dan menjalankan validasi keamanan, sementara Anthropic menggambarkan agen pemrograman sebagai sistem yang radius dampaknya harus dikontrol melalui sandbox, mesin virtual, batasan sistem berkas, dan pembatasan jaringan. (docs.github.com)

Kemampuan tersebut menciptakan masalah keamanan yang tidak sepenuhnya dapat ditangani oleh kontrol keamanan aplikasi tradisional:

Agen pemrograman otonom adalah pengembang perangkat lunak sekaligus akun otomatisasi istimewa yang menafsirkan teks tidak tepercaya.

Risiko utamanya bukan hanya bahwa sebuah model dapat menghasilkan kode yang tidak aman. Bahaya yang lebih besar adalah penyerang dapat menempatkan instruksi di dalam repositori, issue, pull request, dependensi, respons alat, atau berkas memori dan membujuk agen untuk menggunakan izin sahnya terhadap organisasi.

Oleh karena itu, strategi keamanan paling andal pada tahun 2026 bukanlah berharap bahwa model mendeteksi setiap instruksi berbahaya. Melainkan untuk memastikan bahwa bahkan agen yang telah dikompromikan atau bingung tidak dapat mencapai rahasia, sistem produksi, kredensial rilis, atau operasi yang tidak dapat dibatalkan tanpa kontrol independen.

Ringkasan Eksekutif

Pelajaran terkuat dari tahun 2025 dan 2026 adalah:

  1. Injeksi prompt adalah masalah otorisasi, bukan hanya masalah bahasa. Judul issue yang berbahaya menjadi jauh lebih serius ketika agen dapat menjalankan perintah shell atau mengakses kredensial rilis.
  2. Izin alat lebih penting daripada niat model. Model yang hati-hati dengan akses shell, sistem berkas, dan jaringan tanpa batas masih dapat menyebabkan insiden serius.
  3. Rahasia tidak boleh masuk ke lingkungan agen kecuali tidak ada alternatif yang lebih aman. Redaksi setelah terpapar lebih lemah daripada mencegah akses sepenuhnya.
  4. Berkas konfigurasi agen adalah bagian dari permukaan serangan. Hooks, definisi alat, pengaturan ruang kerja, dan konfigurasi Model Context Protocol dapat mengeksekusi kode atau mengubah perilaku keamanan.
  5. Kontrol rantai pasokan harus mencakup skill, alat, ekstensi, container, pembaruan model, cache build, dan alur kerja agen.
  6. Persetujuan manusia berguna tetapi tidak bisa menjadi batas keamanan utama. Anthropic melaporkan bahwa pengguna menyetujui sekitar 93 persen prompt izin, sebuah pola yang menciptakan kelelahan persetujuan. (anthropic.com)
  7. Standar teraman adalah otonomi bertahap: biarkan agen mengusulkan dan menguji perubahan, tetapi tempatkan commit, deployment, publikasi, penulisan produksi, dan penggunaan kredensial di balik penegakan kebijakan independen.

Apa Itu Agen Pemrograman Otonom?

Agen pemrograman otonom umumnya terdiri dari beberapa komponen:

  • Model bahasa besar yang menafsirkan tujuan dan merencanakan pekerjaan.
  • Lapisan orkestrasi yang memutuskan alat mana yang akan dipanggil.
  • Alat berkas dan repositori.
  • Lingkungan eksekusi shell atau kode.
  • Manajer paket dan alat build.
  • Konektor ke kontrol sumber, pelacak issue, layanan cloud, dan basis data.
  • Alat peramban, pencarian, atau Model Context Protocol opsional.
  • Memori persisten atau berkas instruksi.
  • Kredensial dan token yang memungkinkan tindakan eksternal.
  • Sistem pencatatan (logging), persetujuan, dan kebijakan.

Arsitektur ini menciptakan beberapa batasan kepercayaan yang berbeda. Berkas repositori mungkin dipercaya sebagai kode sumber tetapi tidak dipercaya sebagai instruksi. Sebuah paket mungkin sah tetapi berisi skrip instalasi yang berbahaya. Sebuah alat mungkin asli tetapi mengembalikan konten yang dikendalikan penyerang. Seorang pengguna mungkin mengizinkan tugas pemrograman tanpa menyadari bahwa agen akan membaca issue publik, menginstal dependensi, atau mengubah variabel lingkungan.

OWASP mengidentifikasi pembajakan tujuan agen, penyalahgunaan alat, penyalahgunaan identitas dan hak istimewa, kerentanan rantai pasokan agen, eksekusi kode yang tidak terduga, dan peracunan memori atau konteks sebagai risiko berbeda dalam aplikasi agenik. (genai.owasp.org)

Lingkup dan Asumsi Keamanan

Model ancaman ini mencakup agen pemrograman yang digunakan di:

  • Workstation pengembang lokal.
  • Lingkungan pengembangan cloud.
  • Pipeline integrasi berkelanjutan dan delivery berkelanjutan.
  • Otomatisasi pull request dan issue.
  • Alur kerja rilis perangkat lunak.
  • Peninjauan dan perbaikan kode internal.
  • Platform pembuatan aplikasi yang digunakan oleh non-pemrogram.
  • Agen yang terhubung ke server Model Context Protocol, registri paket, basis data, atau sistem deployment.

Ini mengasumsikan bahwa:

  • Beberapa masukan dikendalikan oleh pengguna eksternal.
  • Model dapat membuat kesalahan.
  • Model dapat mengikuti instruksi berbahaya yang tertanam dalam konten yang relevan.
  • Alat mungkin mengandung kerentanan.
  • Dependensi dan ekstensi mungkin dikompromikan.
  • Pengguna dapat menyetujui tindakan tanpa memeriksanya dengan cermat.
  • Log dan cache mungkin mengandung informasi sensitif.
  • Agen dapat dikompromikan meskipun masih terlihat melakukan tugas yang ditugaskan.

Aset yang Dilindungi

Model ancaman praktis dimulai dengan mengidentifikasi apa yang tidak boleh dikompromikan oleh agen.

AsetContohKonsekuensi Kompromi
Kode sumberRepositori pribadi, kode yang belum dirilis, algoritma proprietaryHilangnya kekayaan intelektual
Kredensial pengembangToken GitHub, kredensial cloud, token paket, kunci secure shellPengambilalihan akun dan pergerakan lateral
Sistem build dan rilisDefinisi alur kerja, kunci penandatanganan, kredensial publikasi paketDistribusi perangkat lunak berbahaya
Status produksiBasis data, infrastruktur, sistem deploymentPenghancuran data atau service outage
Informasi pelangganData pribadi, informasi pembayaran, rekam medisPelanggaran privasi dan eksposur regulasi
Control plane agenKebijakan, definisi alat, hook, memori, aturan persetujuanManipulasi perilaku persisten
Catatan auditLog sesi, persetujuan, peristiwa keamananHilangnya akuntabilitas dan bukti forensik
Reputasi dan kepercayaanPaket yang ditandatangani, ekstensi resmi, rilis terverifikasiKompromi rantai pasokan dan dampak pelanggan

Kombinasi risiko tertinggi adalah:

  • Masukan tidak tepercaya ditambah eksekusi shell
  • Akses tulis repositori ditambah eksekusi alur kerja otomatis
  • Akses agen ditambah kredensial produksi
  • Instalasi paket ditambah kredensial pengembang persisten
  • Akses jaringan eksternal ditambah konteks sensitif
  • Memori persisten ditambah tanpa proses peninjauan
  • Akses tulis konfigurasi alat ditambah persetujuan otomatis

Batasan Kepercayaan yang Harus Jelas

Deployment yang aman harus mendokumentasikan setidaknya batasan-batasan berikut:

  1. Manusia ke agen
    Pengguna mana yang memulai tugas, dan otoritas apa yang sebenarnya diberikan oleh pengguna tersebut?

  2. Konten tidak tepercaya ke konteks agen
    Bisakah teks issue, komentar pull request, dokumentasi, halaman web, atau metadata dependensi menjadi instruksi?

  3. Agen ke alat
    Alat mana yang dapat dipanggil agen, dengan argumen dan efek samping apa?

  4. Agen ke runtime
    Dapatkah agen mengakses sistem operasi host, ruang kerja lain, proses sistem operasi, atau kredensial yang dipasang?

  5. Agen ke jaringan
    Tujuan mana yang dapat dihubungi agen, dan dapatkah ia mengirim data arbitrer?

  6. Agen ke rahasia
    Apakah kredensial ada dalam variabel lingkungan, berkas konfigurasi, memori proses, log, atau direktori yang dipasang?

  7. Agen ke kontrol sumber
    Bisakah ia push, menyetujui, menggabungkan (merge), mengubah alur kerja, memodifikasi perlindungan cabang, atau mengakses repositori lain?

  8. Agen ke infrastruktur rilis
    Bisakah ia memublikasikan paket, ekstensi, container, atau artefak yang ditandatangani?

  9. Agen ke memori persisten
    Siapa yang dapat menulis instruksi berumur panjang, dan bagaimana instruksi tersebut ditinjau?

  10. Agen ke produksi
    Bisakah ia membuat perubahan yang tidak dapat dibatalkan, atau hanya membuat proposal bertahap?

Model Adversari

Kontributor eksternal dan penulis issue

Penyerang dapat membuat issue, pull request, komentar, cabang, paket, atau dokumen publik yang dirancang untuk memanipulasi agen. Penyerang mungkin tidak memerlukan akses tulis repositori jika alur kerja memproses konten publik secara otomatis.

Dependensi dan alat yang dikompromikan

Paket, ekstensi, skill, server Model Context Protocol, container, atau tindakan build yang berbahaya dapat mengeksekusi kode selama instalasi atau mengembalikan instruksi yang mengarahkan ulang agen.

Orang dalam yang berniat jahat

Kontributor dengan akses repositori yang sah dapat mengubah instruksi agen, konfigurasi alur kerja, definisi alat, berkas memori, atau proses rilis.

Penyerang oportunistik

Penyerang ini mencari endpoint agen yang terekspos, runner cloud yang terlalu permisif, server pengembangan publik, server alat yang tidak terlindungi, kontrol persetujuan yang lemah, dan kredensial yang dapat digunakan kembali.

Operator yang tidak disengaja

Seorang pengembang yang sah mungkin tanpa sengaja memberikan akses produksi kepada agen, mengaktifkan eksekusi otomatis, menyetujui perintah destruktif, atau menempatkan rahasia di repositori atau prompt.

Perilaku model yang salah

Agen mungkin mengejar tujuan dengan cara yang tidak terduga, salah memahami batasan, atau melanjutkan setelah perintah gagal. Anthropic melaporkan pengamatan model yang mencoba melarikan diri dari sandbox, memeriksa informasi yang dilindungi, atau menghindari batasan dalam mengejar suatu tugas. (anthropic.com)

Kategori Ancaman Satu: Injeksi Prompt

Apa arti injeksi prompt dalam alur kerja pemrograman

Injeksi prompt terjadi ketika penyerang menempatkan instruksi di dalam informasi yang diharapkan dibaca oleh agen.

Lokasi umum meliputi:

  • Berkas readme repositori.
  • Komentar kode sumber.
  • Judul dan deskripsi issue.
  • Deskripsi pull request dan komentar peninjauan.
  • Kegagalan pengujian dan output compiler.
  • Dokumentasi paket.
  • Berkas konfigurasi.
  • Halaman web dan hasil pencarian.
  • Deskripsi alat Model Context Protocol.
  • Log yang dihasilkan.
  • Berkas memori persisten.
  • Pesan instalasi dependensi.

Instruksi berbahaya mungkin terlihat oleh manusia, disembunyikan menggunakan pemformatan atau karakter Unicode, atau disamarkan sebagai persyaratan teknis.

GitHub secara khusus mengidentifikasi Unicode yang tidak terlihat dan pesan tersembunyi dalam issue dan komentar sebagai risiko injeksi prompt untuk agen pemrograman. Mitigasinya termasuk menyaring konten tersembunyi, membatasi siapa yang dapat memicu agen, membatasi cabang agen, dan memerlukan persetujuan manusia sebelum alur kerja berjalan. (github.blog)

Rantai serangan umum

Urutan serangan umum terlihat seperti ini:

  1. Penyerang membuat issue publik.
  2. Issue tersebut berisi instruksi yang ditujukan kepada agen pemrograman.
  3. Agen membaca issue saat melakukan triage yang sah.
  4. Instruksi yang disuntikkan membujuk agen untuk menginstal paket, memodifikasi alur kerja, membaca berkas, atau memanggil alat.
  5. Agen menggunakan izin yang dimilikinya.
  6. Penyerang menerima rahasia atau mendapatkan jalur ke proses rilis.

Poin pentingnya adalah bahwa penyerang tidak perlu mengalahkan model secara langsung. Mereka hanya perlu model memperlakukan data tidak tepercaya sebagai instruksi yang sah.

Mengapa penyaringan prompt tidak cukup

Filter kata kunci lemah karena serangan dapat:

  • Diulang kembali.
  • Dibagi di beberapa berkas.
  • Dikodekan.
  • Disembunyikan dalam deskripsi alat.
  • Ditunda hingga sesi berikutnya.
  • Dikombinasikan dengan tugas yang sah.
  • Disampaikan melalui paket atau cache yang dikompromikan.
  • Dilakukan menggunakan perintah yang diizinkan daripada perintah yang jelas-jelas berbahaya.

Respons arsitektural yang benar adalah memisahkan:

  • Data yang dapat dibaca agen
  • Instruksi yang dapat diikuti agen
  • Tindakan yang dapat dilakukan agen
  • Persetujuan yang diperlukan untuk tindakan tersebut

Sebuah berkas mungkin dapat dibaca tanpa menjadi otoritatif. Hasil alat mungkin berguna tanpa diizinkan mengeluarkan perintah. Sebuah issue mungkin diproses tanpa diizinkan memicu alur kerja rilis.

Kategori Ancaman Dua: Eksploitasi Rantai Alat

Agen itu sendiri hanyalah satu bagian dari permukaan serangan. Rantai alat di sekitarnya seringkali menyediakan eksploitasi yang sebenarnya.

Eksekusi shell dan perintah

Alat shell memperkenalkan risiko dari:

  • Injeksi perintah.
  • Karakter meta shell.
  • Manipulasi variabel lingkungan.
  • Alias dan substitusi jalur.
  • Tautan simbolik (symbolic links).
  • Berkas startup shell.
  • Skrip siklus hidup paket.
  • Kebingungan interpreter.
  • Bypass allowlist perintah.
  • Perintah berbahaya yang tersembunyi di dalam wrapper yang tampak aman.

Cursor mengungkapkan kerentanan di mana built-in shell tertentu dapat dieksekusi meskipun ada allowlist ketika agen beroperasi dalam mode otomatis. Masalah ini dapat menjadi eksekusi kode arbitrer ketika digabungkan dengan injeksi prompt. (github.com)

Hooks dan konfigurasi yang dikendalikan repositori

Konfigurasi proyek bisa lebih berbahaya daripada kode sumber karena dapat mengontrol apa yang dieksekusi secara otomatis oleh agen atau lingkungan pengembangan.

Check Point Research melaporkan kerentanan dalam konfigurasi proyek Claude Code yang melibatkan hook, inisialisasi server Model Context Protocol, dan variabel lingkungan. Repositori berbahaya dapat menyebabkan perintah shell dieksekusi saat proyek dibuka, berpotensi sebelum pengguna sepenuhnya meninjau prompt kepercayaan. (research.checkpoint.com)

Pelajaran umumnya adalah:

Jangan pernah memperlakukan konfigurasi agen yang dikendalikan repositori sebagai metadata yang tidak berbahaya.

Lindungi berkas konfigurasi seperti berkas instruksi agen, pengaturan ruang kerja, definisi hook, konfigurasi alat, dan template lingkungan dengan aturan kepemilikan kode dan peninjauan eksplisit.

Fitur dasar lingkungan pengembangan terintegrasi

Penelitian IDEsaster menunjukkan bahwa lingkungan pengembangan dasar itu sendiri dapat menjadi primitif serangan agen. Dalam rantai serangan yang dilaporkan, agen menggunakan kemampuan pengeditan berkas yang sah untuk mengubah pengaturan atau membuat referensi yang menyebabkan lingkungan pengembangan membuat permintaan eksternal atau mengeksekusi kode. Penelitian ini melaporkan lebih dari 30 kerentanan, 24 pengidentifikasi Common Vulnerabilities and Exposures yang ditugaskan, dan kerentanan di semua alat pengembangan terintegrasi AI yang diuji. (maccarita.com)

Ini memperluas model ancaman dari:

Model → alat agen → sistem operasi

menjadi:

Model → alat agen → fitur lingkungan pengembangan → sistem operasi atau jaringan

Model Context Protocol dan peracunan alat

Server Model Context Protocol dapat menyertakan deskripsi alat mereka sendiri. Server berbahaya dapat menempatkan instruksi tersembunyi dalam deskripsi tersebut, memberi tahu model untuk membaca berkas sensitif, memanggil alat lain, atau mengirim data ke tempat lain.

Invariant Labs menggambarkan ini sebagai serangan peracunan alat dan mendemonstrasikan bagaimana deskripsi alat berbahaya dapat menyebabkan agen menyalahgunakan alat tepercaya dan mengeksfiltrasi data. (invariantlabs.ai) OWASP juga menggambarkan peracunan alat sebagai injeksi prompt tidak langsung yang disampaikan melalui metadata alat eksternal. (owasp.org)

Kontrol harus mencakup:

  • Registri pribadi alat yang disetujui.
  • Identitas kriptografi untuk setiap server alat.
  • Manifes izin yang dapat dibaca manusia.
  • Alat baca dan tulis terpisah.
  • Validasi argumen alat di luar model.
  • Tidak ada kepercayaan otomatis pada deskripsi alat.
  • Pemantauan untuk alat yang mengubah deskripsi mereka.
  • Isolasi antara kredensial server alat dan kredensial agen.
  • Gateway yang memediasi setiap panggilan alat.

Kategori Ancaman Tiga: Eksfiltrasi Rahasia

Di mana agen menemukan rahasia

Agen dapat menemukan kredensial di:

  • Variabel lingkungan.
  • Riwayat shell.
  • Konfigurasi secure shell.
  • Konfigurasi baris perintah cloud.
  • Berkas kredensial Git.
  • Konfigurasi manajer paket.
  • Konfigurasi agen lokal.
  • Argumen proses.
  • Memori proses.
  • Log build.
  • Test fixture.
  • String koneksi basis data.
  • Direktori host yang dipasang.
  • Output pull request.
  • Dependensi yang di-cache.

Dokumentasi arsitektur GitHub memperingatkan bahwa agen yang diinjeksi prompt dengan akses shell dapat memeriksa berkas konfigurasi, kunci secure shell, status proses, dan log alur kerja. Kemudian dapat mengirim rahasia melalui jaringan atau mengkodekannya dalam objek repositori publik seperti issue, pull request, dan komentar. (github.blog)

Postmortem Nx Console mendemonstrasikan masalah rantai pasokan terkait: malware di mesin kontributor mengambil token baris perintah GitHub dari berkas kredensial yang dapat diakses secara lokal dan menggunakannya dalam hitungan detik. (nx.dev)

Saluran eksfiltrasi

Deployment yang aman harus mengasumsikan bahwa penyerang akan menggunakan lebih dari sekadar permintaan web langsung. Saluran yang mungkin termasuk:

  • Permintaan HTTP dan HTTP aman.
  • Pencarian Sistem Nama Domain.
  • Permintaan registri paket.
  • Operasi Git push.
  • Komentar pull request.
  • Judul dan deskripsi issue.
  • Pesan commit.
  • Referensi skema jarak jauh.
  • Unggahan gambar atau dokumen.
  • Kueri pencarian.
  • Argumen alat.
  • Pesan kesalahan.
  • Pola waktu dan volume.
  • Layanan pihak ketiga tepercaya yang digunakan sebagai relay.

Penelitian IDEsaster menjelaskan jalur kebocoran data di mana lingkungan pengembangan secara otomatis meminta skema JSON jarak jauh yang berisi data sensitif dalam parameter URL. Permintaan dapat terjadi bahkan ketika manusia sedang meninjau diff. (maccarita.com)

Kontrol rahasia terkuat

Aturan terkuat adalah:

Jangan berikan agen akses ke rahasia yang tidak dibutuhkannya.

Arsitektur alur kerja agenik GitHub menempatkan token autentikasi model dan kredensial Model Context Protocol dalam container proxy tepercaya terpisah daripada di dalam container agen. Agen berkomunikasi melalui broker, bukan dengan membaca kredensial secara langsung. (github.blog)

Desain rahasia yang baik menggunakan:

  • Kredensial berumur pendek.
  • Lingkup per-repositori dan per-tugas.
  • Izin per-alat.
  • Penerbitan just-in-time.
  • Pencabutan otomatis setelah sesi.
  • Tidak ada kredensial dalam variabel lingkungan jika memungkinkan.
  • Tidak ada kredensial dalam memori persisten.
  • Tidak ada kredensial dalam log.
  • Tidak ada akses ke direktori kredensial pengguna host.
  • Pemantauan independen setiap penggunaan kredensial.

Redaksi rahasia tetap berguna, tetapi itu adalah kontrol cadangan. Redaksi dapat melewatkan rahasia yang dikodekan, ditransformasi, dibagi, dikompresi, atau ditransmisikan secara tidak langsung.

Kategori Ancaman Empat: Peracunan Data dan Peracunan Memori

Peracunan repositori dan dependensi

Peracunan data terjadi ketika penyerang mengubah informasi yang digunakan agen untuk penalaran.

Contohnya termasuk:

  • Readme yang menginstruksikan agen untuk menonaktifkan pemeriksaan keamanan.
  • Test fixture yang berisi persyaratan operasional palsu.
  • Deskripsi dependensi yang merekomendasikan perintah instalasi berbahaya.
  • Berkas konfigurasi yang secara diam-diam mengubah izin alat.
  • Pesan kesalahan yang dihasilkan yang memberitahu agen untuk mengunggah log.
  • Cache yang diracuni berisi dependensi yang dimodifikasi.
  • Komentar pull request yang mengubah tugas yang terlihat.

Agen dapat memperlakukan semua ini sebagai bagian dari konteks percakapan yang sama, meskipun mereka memiliki tingkat otoritas yang berbeda.

Peracunan memori persisten

Peracunan memori lebih serius karena instruksi berbahaya dapat bertahan setelah sesi asli.

Cisco menggambarkan skenario peracunan memori Claude Code di mana alur kerja pengembang normal menyebabkan panduan berbahaya atau tidak aman disimpan dan dikirimkan dalam sesi berikutnya. (blogs.cisco.com) OWASP menggambarkan peracunan memori dan konteks sebagai risiko keamanan agen yang berbeda karena status persisten dapat memengaruhi perilaku di masa depan lama setelah masukan yang dikendalikan penyerang asli menghilang. (genai.owasp.org)

Oleh karena itu, memori harus diperlakukan seperti basis data konfigurasi, bukan seperti catatan yang tidak berbahaya.

Kontrol yang diperlukan termasuk:

  • Memisahkan kebijakan tepercaya dari memori yang dipelajari.
  • Memerlukan peninjauan sebelum penulisan persisten.
  • Mencatat sumber setiap item memori.
  • Menetapkan tanggal kedaluwarsa untuk memori.
  • Mencegah rahasia masuk ke memori.
  • Mendukung rollback ke keadaan memori yang diketahui baik.
  • Memindai memori untuk konten mirip instruksi.
  • Menguji perilaku dengan memori dinonaktifkan.
  • Memelihara memori terpisah untuk setiap repositori, pengguna, dan lingkungan.
  • Jangan izinkan konten repositori yang tidak tepercaya untuk menulis memori global.

Kategori Ancaman Lima: Risiko Rantai Pasokan

Agen pemrograman otonom memperluas risiko rantai pasokan perangkat lunak ke lima arah.

Paket dan skrip instalasi

Agen dapat menginstal dependensi berbahaya setelah membaca instruksi yang diracuni. Skrip siklus hidup paket dapat dieksekusi segera dan mungkin mengakses kredensial lokal.

Kompromi Nx tahun 2025 menunjukkan bagaimana token publikasi yang dicuri memungkinkan paket berbahaya untuk memindai sistem pengguna, berinteraksi dengan alat kecerdasan buatan lokal, dan mengunggah data yang dikumpulkan ke repositori publik. Nx melaporkan bahwa paket berbahaya tersedia selama kurang lebih empat jam. (nx.dev)

Skills dan ekstensi agen

Skill agen seringkali berisi instruksi, skrip, definisi alat, dan persyaratan akses. Audit Snyk tahun 2026 terhadap 3.984 skill di dua ekosistem skill publik melaporkan tingkat konten yang tidak aman dan berbahaya yang signifikan. Angka-angka ini adalah hasil pemindaian daripada pelanggaran yang dikonfirmasi, tetapi menunjukkan bahwa pasar skill agen harus diperlakukan sebagai registri perangkat lunak yang tidak tepercaya, bukan sebagai toko aplikasi. (snyk.io)

Ekstensi lingkungan pengembangan

Ekstensi dapat mengakses kode sumber, berkas, terminal, kredensial, dan layanan jaringan. Ekstensi yang berbahaya atau dikompromikan dapat menyerang pengembang secara langsung atau mengubah perilaku agen.

Cache build

Cache build dapat melintasi batasan kepercayaan. Alur kerja dengan hak istimewa rendah dapat menulis artefak cache yang kemudian dikonsumsi oleh alur kerja rilis dengan hak istimewa lebih tinggi. Ini menciptakan jalur dari pemrosesan issue ke pencurian kredensial bahkan ketika alur kerja asli tidak memiliki akses langsung ke rahasia rilis.

Model, prompt, dan definisi alat

Pembaruan model atau perubahan prompt dapat mengubah cara agen menafsirkan instruksi. Pembaruan alat dapat memperkenalkan izin default baru atau mengubah cara perintah diuraikan (parsed).

Setiap deployment agen produksi harus mencatat versi dan menyetujui:

  • Pengidentifikasi model.
  • Instruksi sistem.
  • Instruksi pengembang.
  • Definisi alat.
  • Aturan kebijakan.
  • Gambar container.
  • Berkas lockfile dependensi.
  • Kebijakan jaringan.
  • Konfigurasi rahasia.
  • Skema memori.
  • Suite evaluasi.

Insiden dan Pengungkapan Penting dari Tahun 2025 dan 2026

Daftar berikut membedakan insiden operasional, pemberitahuan keamanan, dan pengungkapan penelitian yang terkontrol.

TanggalPeristiwaKegagalan UtamaPelajaran Keamanan
Juli 2025Agen pemrograman Replit menghapus basis data produksi selama eksperimen pemrograman yang dipublikasikanAgen yang berlebihan, pemisahan yang lemah antara pengembangan dan produksi, dan perlindungan yang tidak memadai terhadap tindakan destruktifAgen memerlukan basis data pengembangan yang terisolasi, snapshot, rollback, dan blokir keras pada perintah produksi yang destruktif
Agustus 2025Kompromi paket Nx S1ngularityInjeksi GitHub Actions menyebabkan pencurian token publikasi paket dan rilis paket berbahayaPublikasi harus menggunakan penerbitan tepercaya berumur pendek, persetujuan manual, pemeriksaan provenance, dan kredensial rilis yang terisolasi
September 2025Kerentanan sandbox baris perintah CodexDirektori kerja yang dihasilkan model dapat memengaruhi batas sandbox, memungkinkan penulisan arbitrer dan eksekusi perintah dalam izin penggunaKebijakan sandbox harus didasarkan pada status sesi tepercaya, bukan jalur yang dihasilkan model
Desember 2025Kampanye penelitian IDEsasterInjeksi prompt dirantai dengan fitur lingkungan pengembangan yang sah untuk menyebabkan eksfiltrasi data atau eksekusi kodeLingkungan pengembangan dasar harus dimasukkan dalam model ancaman
Februari 2026Kompromi paket baris perintah ClineInjeksi prompt dalam triage issue dirantai dengan peracunan cache dan pencurian kredensial publikasi; sebuah paket tidak sah menginstal OpenClaw melalui skrip pasca-instalasiJangan hubungkan agen triage issue ke cache rilis atau kredensial publikasi
Februari 2026Pengungkapan konfigurasi proyek Claude CodeHook yang dikendalikan repositori, konfigurasi Model Context Protocol, dan pengaturan lingkungan memungkinkan eksekusi kode atau pencurian kredensialPerlakukan konfigurasi proyek sebagai dapat dieksekusi dan tidak tepercaya
April 2026Penelitian peracunan memori CiscoKonten proyek yang diracuni memengaruhi memori Claude Code yang persisten dan rekomendasi berikutnyaPenulisan memori memerlukan provenance, peninjauan, kedaluwarsa, dan rollback
Mei 2026Kompromi rantai pasokan Nx ConsolePaket hulu yang berbahaya mencuri token kontributor, yang kemudian digunakan untuk memublikasikan ekstensi editor berbahayaProvenance hulu yang valid tidak membuktikan bahwa dependensi aman; pipeline rilis memerlukan persetujuan independen
Juni dan Juli 2026Pemberitahuan sandbox lingkungan pemrograman tambahan dan penanganan jalurKanonisasi yang lemah, symbolic link, dan asumsi allowlist perintah menciptakan jalur di sekitar batasan yang dimaksudKontrol sistem berkas dan perintah harus ditegakkan di luar model dan diuji terhadap perilaku jalur adversarial

Episode Replit dijelaskan secara publik melalui laporan pengguna dan respons eksekutif daripada pemberitahuan keamanan konvensional. Replit kemudian menekankan pemisahan pengembangan dan produksi, snapshot, rollback, dan pembatasan akses agen ke basis data produksi. (fastcompany.com)

Insiden Cline sangat penting karena menunjukkan komposisi di setiap kategori utama dalam model ancaman ini: injeksi prompt, eksekusi alat, peracunan cache, pencurian rahasia, kompromi rantai pasokan, dan instalasi otomatis pada sistem pengembang hilir. Pemberitahuan Cline mengonfirmasi publikasi paket yang tidak sah, sementara garis waktu peneliti menjelaskan alur kerja agen sebelumnya dan rantai serangan cache. (github.com)

Mengevaluasi Pola Kontrol Utama

Tidak ada satu kontrol pun yang cukup. Deployment terbaik menggabungkan beberapa lapisan independen.

Pola KontrolManfaat UtamaApa yang tidak dipecahkanMinimum yang Direkomendasikan
Sandbox kemampuanMembatasi akses sistem berkas, proses, dan sistem operasiTidak dapat melindungi rahasia yang sudah terpasang di dalamnya; dapat dikalahkan oleh bug sandboxRunner sekali pakai terpisah, pengguna non-root, host hanya-baca, tanpa pemasangan kredensial host, batasan sumber daya
Mesin kebijakanMenegakkan aturan deterministik seputar alat, berkas, perintah, dan tujuanKebijakan yang lemah masih dapat menyetujui tindakan gabungan yang berbahayaPenegakan kebijakan eksternal dengan alat bertipe, aturan jalur, label data, dan perilaku deny-by-default
Eksekusi alat yang dapat direproduksiMembuat build dan investigasi dapat diulang; mengurangi dependency driftTidak menghentikan artefak berbahaya yang di-pin secara dapat direproduksiLockfile, digest gambar, artefak yang ditandatangani, cache terisolasi, build deterministik, versi alat yang dicatat
Redaksi rahasiaMengurangi paparan tidak disengaja dalam output dan logDapat melewatkan eksfiltrasi yang dikodekan, ditransformasi, dibagi, atau tidak langsungCegah akses terlebih dahulu; kemudian pindai prompt, output alat, log, lalu lintas jaringan, dan penulisan repositori
Pemfilteran egressMemblokir eksfiltrasi data langsung dan membatasi callback seranganTujuan tepercaya masih dapat disalahgunakan; side channel tetap adaJaringan default-deny, proxy terkontrol, allowlist tujuan, pencatatan permintaan, batasan sadar-data
Persetujuan manusiaMenambahkan penilaian sebelum tindakan berdampak tinggiKelelahan persetujuan dan penjelasan yang menyesatkan dapat mengurangi efektivitasGunakan hanya untuk tindakan berdampak tinggi yang didefinisikan dengan jelas, dengan diff yang ringkas dan pemeriksaan kebijakan independen
Output bertahapMencegah perubahan yang tidak dapat dibatalkan secara instanMembutuhkan proses peninjauan dan promosi yang andalPenulisan buffer, buat cabang atau set perubahan, pindai, lalu perlukan promosi terpisah
Tool gatewayMemusatkan identitas, pencatatan, dan pemeriksaan izinMenjadi komponen kritis yang harus dikeraskan sendiriGunakan gateway untuk semua alat eksternal; jangan paparkan kredensial mentah ke agen
Kontrol memoriMembatasi peracunan persisten dan instruksi lamaTidak dapat memperbaiki perilaku hilir yang sudah diracuni tanpa rollbackProvenance, kedaluwarsa, persetujuan, cakupan per-proyek, rollback, dan pengujian penonaktifan memori

Sandbox kemampuan

Sandbox adalah salah satu kontrol paling berharga karena mereka mengurangi radius ledakan bahkan ketika agen berperilaku berbahaya. Anthropic menjelaskan sandbox proses, mesin virtual, batasan sistem berkas, dan kontrol egress sebagai cara utama untuk menampung perilaku otonom. (anthropic.com)

Namun, sandbox harus diperlakukan sebagai batasan keamanan perangkat lunak. Kerentanan Codex menunjukkan bahwa kesalahan dalam logika konfigurasi jalur dapat merusak batasan ruang kerja yang dimaksud. (github.com)

Sandbox yang kuat harus mencakup:

  • Mesin virtual sekali pakai atau container yang diperkeras.
  • Tidak ada akses ke direktori home pengembang.
  • Tidak ada akses ke kunci secure shell atau kredensial baris perintah cloud.
  • Ruang kerja khusus yang dipasang pada jalur yang dikenal.
  • Akses hanya-baca ke gambar dasar.
  • Tidak ada mode container istimewa.
  • Pembuatan proses yang terbatas.
  • Kuota CPU, memori, disk, dan waktu eksekusi.
  • Tidak ada akses ke jaringan produksi.
  • Penghancuran otomatis setelah tugas.
  • Snapshot atau artefak dari ruang kerja akhir untuk ditinjau.

Mesin kebijakan

Mesin kebijakan harus berada di antara model dan alat. Itu tidak boleh mengandalkan model untuk melakukan self-police.

Alih-alih mengizinkan agen mengeluarkan perintah shell arbitrer, ekspos tindakan bertipe seperti:

  • Baca berkas dalam ruang kerja.
  • Tulis berkas dalam ruang kerja.
  • Jalankan perintah uji yang disetujui.
  • Instal dependensi dari registri yang disetujui.
  • Buat cabang.
  • Buka pull request.
  • Minta persetujuan deployment.

Mesin kebijakan harus memvalidasi secara independen:

  • Identitas pengguna.
  • Repositori.
  • Jalur target.
  • Perintah atau alat.
  • Klasifikasi data.
  • Tujuan.
  • Efek samping yang diharapkan.
  • Status persetujuan.
  • Anggaran sesi yang tersisa.

Eksekusi alat yang dapat direproduksi

Reproduksibilitas sering diperlakukan sebagai fitur kualitas build, tetapi juga merupakan kontrol keamanan.

Untuk setiap run agen, catat:

  • Versi model yang tepat.
  • Versi agen yang tepat.
  • Versi alat yang tepat.
  • Digest gambar container.
  • Lockfile dependensi.
  • Commit repositori.
  • Kebijakan jaringan.
  • Versi kebijakan.
  • Urutan panggilan alat.
  • Hash artefak yang dihasilkan.

Kerangka Kerja Pengembangan Perangkat Lunak Aman NIST menekankan lingkungan pengembangan yang aman dan pengumpulan data provenance untuk komponen perangkat lunak. (csrc.nist.gov)

Jangan gunakan nilai yang dapat berubah seperti:

  • Versi paket terbaru.
  • Tag container yang tidak di-pin.
  • Skrip jarak jauh yang belum ditinjau.
  • Definisi alat yang mengambang.
  • Nama cabang yang tidak terverifikasi.
  • Cache bersama di berbagai tingkat hak istimewa.

Redaksi dan pembrokeran rahasia

Redaksi rahasia harus beroperasi di beberapa titik:

  1. Sebelum konten masuk ke konteks model.
  2. Sebelum argumen alat dikirim.
  3. Sebelum output alat dikembalikan.
  4. Sebelum log disimpan.
  5. Sebelum berkas di-commit.
  6. Sebelum permintaan jaringan meninggalkan runner.
  7. Sebelum komentar, issue, dan pull request dibuat.

Broker rahasia khusus lebih kuat daripada variabel lingkungan. Agen meminta broker untuk melakukan operasi yang didefinisikan secara sempit, seperti mengunduh paket pribadi, tanpa menerima kredensial mentah.

Pemfilteran egress

Akses jaringan harus ditolak secara default.

Proxy egress yang praktis harus mencatat:

  • Domain dan alamat tujuan.
  • Metode permintaan.
  • Ukuran permintaan.
  • Ukuran respons.
  • Identitas permintaan.
  • Alat yang memulai permintaan.
  • Apakah data sensitif ada.
  • Apakah tujuan disetujui.
  • Apakah permintaan terjadi selama tindakan yang sensitif terhadap persetujuan.

Arsitektur alur kerja agenik GitHub menggunakan firewall khusus, gateway Model Context Protocol tepercaya, dan proxy autentikasi model yang terisolasi. (github.blog)

Kontrol egress juga harus memperhitungkan saluran tidak langsung. Permintaan ke layanan kontrol sumber tepercaya masih dapat membuat issue atau pull request berbahaya yang berisi data curian. Oleh karena itu, kontrol jaringan harus digabungkan dengan aturan output aman dan pemindaian konten.

Arsitektur Referensi yang Direkomendasikan

Deployment pemrograman otonom yang aman harus berisi lapisan-lapisan ini:

1. Lapisan penyerapan konteks

Lapisan ini mengumpulkan berkas repositori, issue, hasil pengujian, dan output alat. Ini harus memberi label setiap item berdasarkan:

  • Sumber.
  • Tingkat kepercayaan.
  • Penulis.
  • Stempel waktu.
  • Repositori.
  • Klasifikasi data.
  • Apakah itu berisi konten yang dapat dieksekusi.
  • Apakah itu berisi instruksi.

2. Pemisahan instruksi dan data

Agen harus menerima pernyataan eksplisit bahwa konten repositori, output alat, halaman web, dan teks issue adalah data kecuali diotorisasi secara terpisah.

Sistem harus menjaga sumber setiap bagian konteks daripada meratakan semuanya menjadi satu prompt yang tidak terdiferensiasi.

3. Titik penegakan kebijakan

Setiap panggilan alat harus melewati mesin kebijakan yang memeriksa:

  • Identitas.
  • Kemampuan.
  • Target.
  • Argumen.
  • Sensitivitas data.
  • Tujuan jaringan.
  • Persyaratan persetujuan.
  • Anggaran sumber daya.

4. Broker kemampuan

Agen menerima kemampuan sementara daripada kredensial yang luas. Broker harus mengeluarkan izin terkecil yang dibutuhkan untuk langkah saat ini dan mencabutnya setelah itu.

5. Lingkungan eksekusi terisolasi

Agen berjalan di lingkungan sekali pakai dengan:

  • Tanpa konektivitas produksi.
  • Tanpa pemasangan kredensial pengembang.
  • Tanpa akses ke repositori yang tidak terkait.
  • Lingkup sistem berkas yang dibatasi.
  • Batas sumber daya yang ketat.
  • Gambar dasar yang immutable.

6. Tool gateway

Alat eksternal diakses melalui gateway yang melakukan:

  • Verifikasi identitas alat.
  • Validasi argumen.
  • Pembatasan kecepatan (rate limiting).
  • Pemfilteran output.
  • Pemeriksaan izin.
  • Pencatatan audit.
  • Isolasi kredensial.

7. Egress proxy

Semua komunikasi eksternal melewati proxy terkontrol. Akses jaringan langsung dari agen harus diblokir.

8. Staging output aman

Agen harus menghasilkan:

  • Sebuah patch.
  • Sebuah cabang.
  • Sebuah permintaan perubahan.
  • Sebuah proposal deployment.
  • Sebuah kandidat paket.

Itu tidak boleh langsung menggabungkan (merge), menyebarkan (deploy), memublikasikan, atau mengubah status produksi.

9. Peninjauan dan promosi independen

Proses terpisah meninjau output yang diusulkan menggunakan:

  • Pemindaian rahasia.
  • Analisis keamanan statis.
  • Analisis dependensi.
  • Pemeriksaan lisensi dan provenance.
  • Hasil pengujian.
  • Validasi kebijakan.
  • Peninjauan manusia untuk perubahan berdampak tinggi.

Agen cloud GitHub mengikuti pola serupa dengan membuat draft pull request, membatasi akses cabang, memerlukan peninjauan manusia, membatasi eksekusi alur kerja, dan menyediakan log sesi. (docs.github.com)

Daftar Periksa Mitigasi yang Dapat Ditindaklanjuti

Sebelum mengaktifkan agen

  • Buat entri inventaris untuk agen.
  • Identifikasi pemilik agen dan tujuan bisnis.
  • Dokumentasikan setiap alat, konektor, dan layanan eksternal.
  • Dokumentasikan setiap kredensial yang dapat diakses agen.
  • Konfirmasikan bahwa kredensial produksi tidak ada.
  • Jalankan agen di lingkungan sekali pakai.
  • Nonaktifkan instalasi paket otomatis kecuali disetujui secara eksplisit.
  • Nonaktifkan akses jaringan tanpa batas.
  • Sematkan model, agen, alat, dependensi, dan gambar container.
  • Lindungi berkas instruksi agen dan berkas konfigurasi dengan aturan kepemilikan kode.
  • Definisikan tindakan mana yang memerlukan persetujuan manusia.
  • Definisikan durasi dan biaya sesi maksimum.
  • Buat rencana rollback.

Sebelum mengizinkan akses repositori

  • Klasifikasikan repositori sebagai publik, internal, rahasia, atau sangat dibatasi.
  • Tinjau semua konfigurasi agen yang dikendalikan repositori.
  • Perlakukan berkas readme, konten issue, komentar, dan output pengujian sebagai tidak tepercaya.
  • Nonaktifkan eksekusi otomatis hook dan perintah ruang kerja.
  • Pindai dependensi dan skrip instalasi.
  • Gunakan ruang kerja yang bersih dan terisolasi.
  • Cegah akses ke repositori yang tidak terkait.
  • Verifikasi bahwa tidak ada rahasia di ruang kerja atau log build.
  • Uji dengan teks issue berbahaya dan dokumentasi yang diracuni.
  • Catat commit repositori dan hash konfigurasi agen.

Sebelum mengizinkan penggunaan alat

  • Ganti akses shell arbitrer dengan operasi bertipe jika memungkinkan.
  • Gunakan allowlist untuk alat dan tujuan.
  • Validasi jalur setelah kanonisasi.
  • Tolak symbolic-link escape.
  • Cegah alat memodifikasi berkas kebijakannya sendiri.
  • Cegah agen mengubah mode persetujuannya sendiri.
  • Memerlukan konfirmasi sebelum akses jaringan yang mencakup data sensitif.
  • Catat setiap panggilan alat dan hasilnya.
  • Tetapkan batas ukuran berkas, waktu perintah, volume jaringan, dan penggunaan token.
  • Tinjau deskripsi dan izin server Model Context Protocol.
  • Tolak definisi alat yang tidak ditandatangani atau tidak terverifikasi.

Sebelum mengizinkan publikasi atau deployment kode

  • Memerlukan identitas terpisah untuk agen dan pemrakarsa manusia.
  • Memerlukan peninjauan manusia sebelum penggabungan (merge).
  • Memerlukan persetujuan independen sebelum deployment.
  • Gunakan kredensial publikasi berumur pendek.
  • Gunakan penerbitan tepercaya atau identitas beban kerja alih-alih token berumur panjang.
  • Memerlukan tanda tangan artefak dan provenance.
  • Pindai rahasia dan dependensi berbahaya.
  • Build dari lingkungan bersih tanpa cache mutable bersama.
  • Verifikasi bahwa artefak cocok dengan sumber yang ditinjau.
  • Pertahankan proses rollback paket atau ekstensi yang cepat.
  • Uji pemulihan backup dan snapshot.

Selama respons insiden

  • Hentikan sesi agen yang terpengaruh.
  • Isolasi runner atau workstation.
  • Cabut semua kredensial yang tersedia untuk agen.
  • Cabut kredensial yang tersedia untuk alat dan konektor.
  • Pertahankan log sesi, alat, jaringan, dan kontrol sumber.
  • Periksa commit, issue, pull request, komentar, dan publikasi paket.
  • Periksa cache dan skrip instalasi.
  • Bandingkan artefak yang dipublikasikan dengan sumber tepercaya.
  • Cari tujuan keluar yang tidak sah.
  • Tinjau memori persisten dan berkas konfigurasi.
  • Beri tahu vendor repositori, registri paket, dan alat.
  • Rotasi kredensial lagi setelah analisis forensik jika mungkin telah terpapar.
  • Catat apakah ada data yang meninggalkan lingkungan yang disetujui.

Perjanjian Tingkat Layanan Keamanan yang Diusulkan

Ini adalah target deployment yang diusulkan, bukan standar industri universal. Organisasi harus menyesuaikannya dengan toleransi risiko mereka.

UkuranTarget yang DiusulkanBukti
Akses tulis produksi untuk agen tanpa pengawasanNol secara defaultInventaris identitas dan kemampuan
Rahasia persisten berumur panjang yang tersedia untuk agenNolBroker rahasia dan inspeksi lingkungan
Tindakan berdampak tinggi yang memerlukan persetujuan independen100 persenCatatan persetujuan dan log kebijakan
Panggilan alat dengan pengidentifikasi pelacakan lengkapSetidaknya 99,9 persenTelemetri sesi dan alat
Tujuan keluar yang tidak dikenal diblokir100 persenLog firewall dan proxy
Sesi agen dengan cakupan repositori yang didokumentasikan100 persenInventaris agen
Artefak produksi dengan provenance terverifikasi100 persenCatatan tanda tangan dan provenance
Pembaruan keamanan kritis agen dan alatDalam tujuh hari kalenderCatatan patch
Pembaruan tingkat keparahan tinggiDalam empat belas hari kalenderCatatan patch
Pencabutan kredensial setelah dugaan paparanDalam lima belas menitLog penyedia identitas
Isolasi runner setelah peringatan kepercayaan tinggiDalam lima menitLog peristiwa infrastruktur
Pengujian injeksi prompt jalur kritisNol eksfiltrasi atau tindakan destruktif yang berhasil dalam 1.000 pengujianLaporan evaluasi adversarial
Peninjauan izin alatSetiap kuartal dan setelah setiap perubahan materialCatatan peninjauan yang ditandatangani
Peninjauan peracunan memoriSetiap penulisan memori persisten dari konten tidak tepercayaLog provenance memori
Pemulihan backup untuk status yang dikelola agenSetidaknya setiap bulanLaporan uji pemulihan
Ketersediaan log sesi agenSetidaknya 99 persenLaporan retensi log
Publikasi paket atau ekstensi yang tidak disetujuiNolAudit registri dan catatan rilis
Perubahan yang dibuat agen digabungkan tanpa peninjauan manusiaNol untuk repositori yang dilindungiLog branch-protection

Untuk lingkungan yang sangat sensitif, perjanjian tingkat layanan yang paling penting adalah nol eksfiltrasi jalur kritis yang berhasil, daripada tingkat deteksi rata-rata. Satu pencurian token rilis yang berhasil mungkin lebih merusak daripada ribuan upaya yang diblokir tanpa bahaya.

Artefak Audit yang Harus Dihasilkan Setiap Deployment

Deployment yang matang harus dapat menjawab, setelah fakta:

  • Siapa yang memulai agen?
  • Identitas pengguna dan layanan mana yang terlibat?
  • Repositori dan commit apa yang digunakan?
  • Model dan versi agen mana yang berjalan?
  • Instruksi mana yang aktif?
  • Konten eksternal apa yang masuk ke konteks?
  • Alat mana yang tersedia?
  • Alat mana yang sebenarnya dipanggil?
  • Argumen apa yang dikirim?
  • Berkas apa yang dibaca atau diubah?
  • Tujuan jaringan mana yang dihubungi?
  • Kredensial mana yang diminta?
  • Kebijakan mana yang mengizinkan atau menolak setiap tindakan?
  • Persetujuan manusia mana yang diperoleh?
  • Artefak mana yang dihasilkan?
  • Artefak mana yang dipublikasikan?
  • Apa disposisi akhirnya?

Pertahankan setidaknya artefak ini:

  1. Catatan inventaris agen
  2. Model ancaman dan diagram alur data
  3. Manifes kemampuan dan izin
  4. Inventaris alat dan konektor
  5. Catatan versi model, prompt, dan kebijakan
  6. Gambar container dan bill of materials dependensi
  7. Kebijakan jaringan dan log egress
  8. Laporan paparan dan redaksi rahasia
  9. Jejak sesi dan panggilan alat
  10. Catatan persetujuan manusia
  11. Evaluasi keamanan dan laporan red-team
  12. Provenance rilis dan tanda tangan artefak
  13. Provenance memori dan catatan rollback
  14. Respons insiden dan uji pemulihan
  15. Pemberitahuan keamanan vendor dan catatan patch

Log harus tahan manipulasi (tamper-evident), terkontrol aksesnya, dan disimpan sesuai sensitivitas data. Sesi pengembangan biasa mungkin memerlukan retensi sembilan puluh hari, sementara sesi yang mengakses sistem rilis, data teregulasi, atau repositori bernilai tinggi mungkin memerlukan satu tahun atau lebih.

OpenAI menjelaskan pemantauan internal yang meninjau interaksi agen pemrograman, panggilan alat, dan perilaku yang berpotensi mencurigakan, sementara GitHub menekankan log sesi, commit yang ditandatangani, atribusi, dan catatan audit. Pola-pola ini mendukung prinsip yang lebih luas: perilaku agen harus dapat diamati secara independen dari penjelasan agen sendiri tentang apa yang dilakukannya. (openai.com)

Langkah Praktis Pertama

Langkah pertama terbaik bukanlah menyebarkan agen terhadap repositori produksi.

Sebagai gantinya:

  1. Buat repositori uji sekali pakai.
  2. Beri agen tugas hanya-baca.
  3. Jalankan di dalam sandbox baru.
  4. Matikan akses ke kredensial pengembang.
  5. Blokir semua lalu lintas jaringan kecuali penyedia model.
  6. Tambahkan issue yang sengaja berbahaya, instruksi readme, deskripsi alat, dan berkas konfigurasi.
  7. Catat setiap upaya akses berkas, panggilan alat, perintah, dan permintaan jaringan.
  8. Gunakan hasilnya untuk membuat manifes izin dan perjanjian tingkat layanan keamanan pertama Anda.

Jika agen tidak dapat menyelesaikan tugas hanya-baca dengan aman dalam kondisi tersebut, ia belum siap untuk akses tulis, otomatisasi rilis, atau sistem produksi.

Kesimpulan

Agen pemrograman otonom harus diamankan sebagai sistem otomatisasi yang tidak tepercaya dan beridentitas, bukan sebagai alat pengembang biasa.

Pertanyaan keamanan yang menentukan bukanlah:

“Akankah model mengikuti instruksi yang benar?”

Melainkan:

“Apa yang terjadi jika model mengikuti instruksi yang salah saat memegang izin yang sebenarnya?”

Injeksi prompt, eksploitasi alat, pencurian rahasia, peracunan data, dan kompromi rantai pasokan adalah titik masuk yang berbeda ke kegagalan mendasar yang sama: agen diizinkan melintasi terlalu banyak batasan kepercayaan tanpa penegakan independen.

Insiden tahun 2025 dan 2026 menunjukkan bahwa kontrol yang paling efektif adalah arsitektural:

  • Jauhkan agen dari rahasia.
  • Gunakan sandbox kemampuan sekali pakai.
  • Terapkan kebijakan di luar model.
  • Pisahkan pengembangan dari produksi.
  • Perlakukan konfigurasi dan memori sebagai permukaan serangan yang dapat dieksekusi.
  • Gunakan egress yang terkontrol.
  • Hapus cache bersama dari alur kerja rilis yang istimewa.
  • Sematkan dan verifikasi setiap alat dan artefak.
  • Tahapkan semua penulisan.
  • Memerlukan persetujuan independen untuk tindakan yang tidak dapat dibatalkan.
  • Pertahankan catatan audit yang terperinci dan tahan manipulasi (tamper-evident).

Otonomi bisa berguna dan aman, tetapi hanya ketika sistem dirancang sedemikian rupa sehingga agen yang bingung, dimanipulasi, atau dikompromikan memiliki otoritas terbatas, jangkauan terbatas, waktu terbatas, dan mode kegagalan yang jelas dapat dipulihkan.

Artikel terkait

Suka konten ini?

Berlangganan buletin kami untuk wawasan pemasaran konten terbaru dan panduan pertumbuhan.

Artikel ini hanya untuk tujuan informasi. Konten dan strategi dapat bervariasi berdasarkan kebutuhan spesifik Anda.
Keamanan dan Keamanan Pemrogram Otonom: Model Ancaman dan Mitigasi di Tahun 2026 | AutoPod