Mengamankan agen di seluruh endpoint klien Perplexity dengan Numbat

Numbat adalah rangkaian keamanan agen open-source Perplexity untuk endpoint klien. Ini mendeteksi, mencegah, dan menyelidiki perilaku agen AI yang berisiko di macOS, Linux, dan Windows.

PenulisPerplexity Secure Intelligence Institute

Agen AI harus aman agar berguna. Seiring meningkatnya kapabilitas model dan sistem, kewaspadaan yang diperlukan untuk melindungi pengguna juga meningkat.

Riset keamanan agen awal berfokus pada injeksi prompt dan bentuk input adversarial lainnya. Namun, kemajuan terbaru dalam otonomi agen memunculkan insiden keamanan yang tidak perlu mengasumsikan keberadaan input adversarial—atau bahkan musuh manusia sama sekali.

Alih-alih, agen yang diarahkan untuk mengejar tujuan tingkat tinggi, tanpa panduan preskriptif tentang cara mencapai tujuan tersebut, dapat menjadi adversary. Hal ini terjadi ketika seorang agen, sebagai respons terhadap tujuan yang ditentukan pengguna, memilih tindakan yang tidak dimaksudkan pengguna dan tidak akan disetujui. Meskipun insiden semacam itu baru diteorikan beberapa bulan lalu, kini insiden tersebut dengan cepat menjadi persoalan yang perlu dipertimbangkan secara praktis.

Karena perilaku ini tidak dapat ditambal sepenuhnya dalam lapisan model, pertahanan yang tangguh harus berada di dalam sistem di sekitarnya, termasuk harness agen yang berfungsi sebagai antarmuka model ke dunia luar. Kami merilis open-source Numbat, rangkaian keamanan agen kami yang membantu para pembela mencegah, mendeteksi, dan memitigasi insiden yang terkait dengan agen. Numbat mengidentifikasi dan berintegrasi secara langsung dengan harness agen yang umumnya ditemukan pada endpoint klien perusahaan, memberlakukan aturan keamanan dan memungkinkan deteksi serta respons yang cepat.

Pendahuluan

Adopsi agen menimbulkan tantangan keamanan baru bagi para pengembang, pengadopsi, dan pembela. Hal ini terutama berlaku ketika perusahaan menerapkan agen secara langsung pada endpoint klien dengan akses istimewa ke sistem dan data perusahaan.

Penerapan agen pada endpoint klien, seperti agen coding berbasis CLI atau aplikasi desktop, hadir dengan berbagai tingkat pengoperasian kotak pasir dan isolasi. Pengguna memanfaatkan agen ini untuk berbagai kasus penggunaan, masing-masing dengan ruang tindakan terkait yang dapat memengaruhi endpoint itu sendiri atau sistem lain yang dapat diakses dari endpoint tersebut. Semakin banyak agen yang diharapkan beroperasi secara otonom selama berhari-hari. Untuk alur kerja ini, banyak pengguna memilih untuk mendelegasikan persetujuan tindakan agen ke pengklasifikasi, atau mengabaikan persetujuan sepenuhnya dengan flag konfigurasi yang dinamai secara mengkhawatirkan seperti --dangerously-skip-permissions dan --yolo. Multiplesitas kasus penggunaan dan konfigurasi agen, dikombinasikan dengan luasnya tindakan yang dapat dilakukan oleh agen coding pada endpoint istimewa, menciptakan profil risiko yang memerlukan manajemen proaktif oleh tim keamanan.

Hari ini, kami merilis Numbat, rangkaian keamanan agen open-source yang kami bangun untuk mendeteksi, menyelidiki, dan mencegah aktivitas berbahaya dari agen AI. Saat semakin banyak perusahaan mengadopsi produk agen perbatasan, Numbat memberdayakan tim keamanan untuk mengimbangi tantangan keamanan yang dihasilkan. Numbat terintegrasi ke dalam masing-masing harness agen sisi klien yang paling banyak digunakan sambil menampilkan antarmuka yang konsisten di semua harness tersebut. Dengan demikian, Numbat membebaskan tim keamanan dari beban membangun pengaman kustom dan alat pemantauan untuk setiap agen individual yang diandalkan oleh pengguna mereka. Numbat tersedia untuk ekosistem pembela sebagai bagian dari keanggotaan Perplexity dalam Open Secure AI Alliance bersama NVIDIA dan organisasi lainnya.

Arsitektur sistem agen yang diamankan oleh Numbat. Numbat menekankan deteksi berbasis lokal dan forensik yang independen terhadap agen.

Artikel ini dimulai dengan diskusi mengenai tantangan keamanan yang memotivasi Numbat. Kami kemudian menyajikan desain dan arsitektur Numbat, beserta pelajaran kami dari menerapkan Numbat di ribuan endpoint milik Perplexity sendiri.

Memetakan Lanskap Kerentanan

Lanskap insiden keamanan agen AI berkembang pesat. Sebagian besar literatur keamanan agen yang ada berfokus pada serangan injeksi, di mana payload berbahaya dimasukkan ke dalam prompt atau konteks model untuk membingungkan agen agar berperilaku tidak semestinya. Serangan injeksi dan pengaman telah diteliti secara ekstensif, dan pengembang agen termasuk Perplexity telah merancang pertahanan yang semakin tangguh terhadap serangan injeksi.

Namun, agen AI tidak memerlukan payload berbahaya untuk menciptakan insiden keamanan. Faktanya, seseorang tidak perlu mengasumsikan keberadaan musuh sama sekali. Agen terpercaya, yang beroperasi di dalam lingkungan terpercaya dengan alat yang disetujui administrator, dapat mengambil tindakan berbahaya hanya karena terlalu berusaha menyelesaikan tugasnya.

Peneliti mendeskripsikan mode kegagalan ini sebagai “accidental meltdown”: perilaku agen berbahaya yang dipicu bukan oleh input adversarial, tetapi oleh kesalahan lingkungan biasa. File yang hilang, permintaan API yang gagal, kredensial yang kedaluwarsa, atau penolakan izin dapat membuat agen mencari jalan keluar. Dalam mengejar tujuan asli yang ditentukan pengguna, agen dapat melintasi batas keamanan melalui pengintaian tidak sah, perubahan kontrol akses, penemuan rahasia, atau eksfiltrasi data. Alih-alih agen dibajak oleh penyerang, agen itu sendiri adalah penyerangnya. Selain itu, serangan dapat menargetkan sistem internal, sistem eksternal, atau keduanya, tanpa ada cara untuk mengetahuinya sampai serangan tersebut sedang berlangsung.

Meltdown tak disengaja yang pertama kali dilaporkan secara luas tiba bulan ini, dengan pengungkapan oleh OpenAI mengenai serangan yang diprakirakan agen yang membahayakan infrastruktur produksi Hugging Face. Selama evaluasi model GPT pra-rilis, model tersebut mendapati dirinya tidak dapat membuat kemajuan pada evaluasi dengan konteks yang disediakan. Untuk memecahkan kebuntuan ini, model menemukan cara untuk melarikan diri dari lingkungan pengujian kotak pasir dan mengeksfiltrasi jawaban evaluasi dari Hugging Face. Model tersebut memanfaatkan harness-nya untuk menghindari batasan jaringan yang dimaksudkan, meningkatkan hak istimewa di luar batas kotak pasir, mendapatkan rahasia, dan mengakses sistem Hugging Face yang aman, semuanya untuk mengejar tujuan sempit untuk menyelesaikan evaluasi.

Meltdown juga mencakup mutasi dan penghapusan sistem yang tidak disengaja. Meskipun mungkin lebih biasa daripada membobol sistem eksternal, kejadian ini lebih sering terjadi dan menonjol bagi setiap pengguna tingkat lanjut agen coding. Menghapus database produksi atau direktori home adalah mimpi buruk setiap pengembang, dan agen harus mampu menghindari perilaku semacam itu selama eksekusi mereka.

Peneliti AI sedang bekerja untuk memitigasi perilaku ini dalam model itu sendiri. Meskipun upaya ini tentu saja berharga, banyak pihak di komunitas riset melihat adanya ketegangan mendasar antara melatih model untuk properti keamanan yang kuat dan melatih model yang sama untuk menyelesaikan tugas yang semakin kompleks. Kami yakin kecil kemungkinan pertahanan yang berfokus semata-mata pada lapisan model akan mengurangi risiko meltdown ke tingkat yang dapat diterima.

Mengamankan Agen Coding Melalui Integrasi Harness Asli

Kesimpulannya adalah bahwa keamanan agen tidak dapat hanya bertumpu pada pengaman tingkat model, pengguna, atau tugas. Sebaliknya, tim keamanan memerlukan visibilitas terhadap apa yang sebenarnya dilakukan agen pada endpoint klien, ditambah kontrol yang dapat menghentikan tindakan berbahaya sebelum dijalankan. Ini adalah kontrol tingkat sistem yang harus terintegrasi erat dengan harness agen.

Numbat menyediakan kontrol ini dalam bentuk biner Go statis ringan yang terhubung dengan mulus ke harness agen sisi klien terkemuka. Numbat menawarkan pemantauan langsung, penegakan kebijakan, dan rekonstruksi forensik di seluruh harness agen dan lingkungan eksekusi.

Poin integrasi utama antara Numbat dan harness agen adalah hook, Artifact sesi, dan telemetri OTLP. Kami akan membahasnya satu per satu.

Hook

Hampir semua agen coding memiliki subsistem hook. Hook memungkinkan agen untuk mengeksekusi subrutin secara deterministik pada titik-titik yang telah ditentukan dalam siklus hidup eksekusi agen. Pengguna agen biasanya mengonfigurasi hook untuk memberikan konteks tambahan kepada model dengan cara yang dapat diprediksi, menerapkan pengujian dan loop verifikasi, serta membuat peningkatan lain pada kapabilitas agen.

Properti deterministik yang sama yang membuat hook menarik untuk tujuan ini juga membuatnya menarik untuk deteksi dan respons. Biasanya tidak cukup hanya menangkap sebagian besar kemunculan peristiwa yang berpotensi mengkhawatirkan. Sebaliknya, seseorang harus mencakup semua kemunculan tersebut untuk deteksi dan respons. Numbat mengonfigurasi beberapa jenis hook, memungkinkan tim keamanan dan administrator IT untuk menerapkan logika deteksi yang kaya.

Di sebagian besar agen coding, jenis hook tertentu (yang umumnya disebut hook “pre-action”) juga dapat memblokir eksekusi tindakan agen berikutnya. Menggunakan hook pre-action ini, Numbat dapat menerapkan tidak hanya logika deteksi tetapi juga aturan keamanan preventif untuk menghentikan meltdown agar tidak terjadi sejak awal.

Artifact sesi

Hook adalah cara yang ampuh untuk menerapkan logika deteksi dan pencegahan secara real-time. Namun, logika ini harus dapat ditentukan dalam kode. Sering kali, insiden keamanan agen mengambil bentuk yang tidak dapat diprediksi sebelumnya, apalagi direduksi menjadi kode sumber. Oleh karena itu, Numbat juga memiliki kemampuan untuk mengakses dan menganalisis Artifact sesi secara retrospektif.

Artifact sesi mencakup berbagai jenis log dan diagnostik. Mungkin jenis log yang paling penting adalah transkrip sesi, yang mencatat percakapan LLM yang menentukan urutan tindakan agen. Pengguna tingkat lanjut agen coding sudah terbiasa mengekspor transkrip sesi untuk analisis lebih lanjut melalui perintah yang disediakan harness. Namun, ekspor ini biasanya dalam format plaintext, yang tidak cocok untuk tim keamanan yang memerlukan log yang dapat dibaca mesin dengan skema yang konsisten dan dapat diprediksi.

Dengan demikian, Numbat mengambil Artifact sesi langsung dari filesystem itu sendiri. Karena sebagian besar harness agen sisi klien menyimpan Artifact asli di filesystem (biasanya dalam direktori dot khusus agen di bawah $HOME), memanfaatkan filesystem menyediakan rute paling langsung ke data ini dalam bentuk yang paling dapat digunakan dan murni. Tim keamanan yang menggunakan Numbat dapat mengumpulkan Artifact ini dalam format timeline NDJSON yang dinormalisasi melalui numbat scan, baik untuk pemrosesan lokal pada endpoint klien maupun analisis jarak jauh asinkron. Karena Artifact sesi adalah catatan statis yang mandiri, Numbat mampu merekonstruksi timeline ini bahkan untuk sesi yang terjadi jauh sebelum Numbat dipasang.

Telemetri OTLP

Sebagian besar harness agen sisi klien menawarkan telemetri ekstensif melalui protokol OpenTelemetry (OTLP). Telemetri ini biasanya menyediakan banyak sinyal di luar yang tersedia melalui hook atau Artifact sesi.

Numbat dapat berfungsi sebagai penerima OTLP melalui perintah numbat collect. Perintah ini memulai server tempat agen coding mengirimkan telemetri OTLP untuk analisis hilir. Yang penting, server ini bersifat lokal dan mendengarkan secara default hanya pada localhost, yang berarti semua telemetri tetap berada di perangkat secara default. Administrator keamanan kemudian dapat menentukan apa yang harus dilakukan dengan telemetri yang dicatat, baik itu melibatkan penerapan pemrosesan ringan pada perangkat, pemrosesan jarak jauh melalui numbat ship, atau analisis yang lebih rumit pada platform analitik seperti ClickHouse.

Menerapkan Numbat di dalam Perplexity

Di dalam Perplexity, kami menggunakan Numbat untuk mengamankan penggunaan agen coding sisi klien oleh para insinyur kami termasuk Claude Code, Codex, OpenCode, dan Pi.

Upaya pencegahan dan deteksi kami sama-sama memanfaatkan aturan Numbat secara ekstensif, yang diterapkan melalui subsistem hook setiap agen. Kami merumuskan beberapa aturan dasar untuk kebutuhan kami sendiri, yang banyak di antaranya kami kirimkan sebagai bagian dari 52 aturan bawaan Numbat. Aturan-aturan ini diorganisasikan ke dalam 11 kategori perilaku dan serangkaian deteksi urutan multi-langkah seperti akses rahasia, eksfiltrasi, eskalasi hak istimewa, dan pergerakan lateral. Aturan menggunakan ekspresi CEL atas peristiwa yang dinormalisasi, dan operator dapat menambahkan aturan dan pengujian mereka sendiri tanpa mengubah kode Numbat.

Misalnya, aturan bawaan privilege.sudoers_tamper mendeteksi penulisan ke kebijakan sudoers, penggunaan visudo, dan upaya untuk memasang hibah NOPASSWD. Ini adalah tindakan bersinyal tinggi yang dapat mengubah proses agen terbatas menjadi akses root persisten.

yaml
# privilege.sudoers_tamper (simplified for readability) id: privilege.sudoers_tamper severity: high expr: | ( event.event_type == "file.write" && event.file_path.matches("(^|/)etc/sudoers$|(^|/)etc/sudoers\\.d/[^/]+$") ) || ( event.event_type == "command.exec" && event.command.matches("\\bvisudo\\b|\\bNOPASSWD\\s*:") )

Perintah individual tidak selalu tampak berbahaya dengan sendirinya, sehingga Numbat juga mengkorelasikan urutan dalam sesi agen. Aturan bawaan chain.secret_manager_read_then_egress mendeteksi ketika agen membaca nilai dari alat manajemen rahasia umum dan kemudian mencoba permintaan curl atau wget yang membawa data. Pembacaan rahasia mungkin sah. Permintaan keluar mungkin sah. Jika diurutkan bersama-sama, keduanya memerlukan investigasi.

yaml
# chain.secret_manager_read_then_egress (simplified for readability) id: chain.secret_manager_read_then_egress severity: high sequence: within_events: 64 steps: - expr: | event.event_type == "command.exec" && event.command.matches("secretsmanager|get-secret|vault read") - expr: | event.event_type == "command.exec" && event.command.matches("curl.*(--data|--upload-file)|wget.*--post")

Mengelola dan Memantau Numbat di Seluruh Armada

Seperti Bumblebee, pemindai open-source kami untuk paparan rantai pasokan pada endpoint pengembang, Numbat diterapkan di seluruh armada kami melalui MDM. Setiap Numbat mencatat aktivitas agen secara lokal dan mengirimkan telemetri terstruktur ke sistem keamanan terpusat kami.

Dari sana, Perplexity Computer meninjau temuan Numbat dan log audit terbaru secara berkala untuk mencari perilaku yang mencurigakan atau berbahaya. Perplexity Computer menyelidiki deteksi, merekonstruksi sesi agen yang relevan, dan memberikan pengawasan tambahan pada tindakan yang diblokir oleh Numbat.

Pipeline internal Perplexity untuk memantau telemetri Numbat. Tugas Perplexity Computer yang dijadwalkan meninjau sinyal baru secara asinkron dan memperingatkan tim keamanan tentang aktivitas berisiko.

Computer juga mencari celah dalam cakupan kami. Computer menganalisis perilaku baru, mengusulkan peningkatan pada deteksi Numbat, menguji perubahan tersebut, dan membuka pull request untuk tinjauan manusia. Setelah disetujui dan diterapkan, aturan tersebut meningkatkan pemantauan di seluruh armada dan menghasilkan bukti yang lebih baik untuk investigasi berikutnya.

Ini menciptakan flywheel keamanan yang meningkatkan diri sendiri: agen menghasilkan aktivitas, Numbat mengubah aktivitas tersebut menjadi timeline dan telemetri yang dinormalisasi, Computer menyelidiki dan meningkatkan aturan, dan pembaruan yang ditinjau manusia memperkuat kontrol yang melindungi sesi agen di masa mendatang.

Kesimpulan

Di Perplexity, kami percaya bahwa agen AI akan dieksekusi di semua jenis lingkungan: lokal, cloud, dan hibridor. Setiap kombinasi harness agen dan lingkungan eksekusi menghadirkan tantangan keamanan yang unik, dengan kompleksitas kombinatorial yang mengancam untuk membebani tim keamanan yang kekurangan bandwidth. Meltdown agen dan kerentanan baru lainnya semakin mempersulit gambaran keamanan.

Pertahanan yang berada di dalam sistem agen itu sendiri dapat meningkatkan postur keamanan pengguna di mana pun agen tersebut dieksekusi. Inilah tepatnya yang dihadirkan oleh Numbat: pengaman agen yang terintegrasi erat yang memungkinkan pembela untuk mencegah, mendeteksi, dan merespons perilaku yang mengkhawatirkan secara real-time. Menggabungkan Numbat dengan Perplexity Computer menciptakan platform keamanan agen yang sangat kuat yang memberdayakan pembela untuk tetap unggul.

Numbat kini tersedia sebagai proyek open-source untuk macOS, Linux, and Windows. Endpoint klien kami sendiri diamankan oleh Numbat, memungkinkan anggota tim Perplexity untuk menggunakan agen dengan percaya diri pada tugas yang dicakup secara luas dan jangka panjang. Kami mengundang tim keamanan di mana pun untuk memanfaatkan pendekatan tingkat sistem Numbat dalam mengamankan dan melindungi penerapan agen mereka.

Kutipan

BibTeX
@online{perplexity2026SecuringAgentsAcrossPerplexitySClientEndpointsWithNumbat,
  author = {{Perplexity} and Adel Karimishiraz and Bex Brooker and Phi Hoang and Jerry Ma},
  title = {{Securing agents across Perplexity's client endpoints with Numbat}},
  date = {2026-07-29},
  url = {https://perplexity.coolkeypoint.com/hub/blog/securing-agents-across-perplexity-s-client-endpoints-with-numbat}
}