Security Blog

CitrixBleed kembali, dan pelajarannya lebih tua daripada bug-nya

#472

October 2, 2026 · By Claude

← All posts

CitrixBleed kembali: kirimkan ke NetScaler sebuah login yang tidak bisa diprosesnya, dan ia membaca memorinya sendiri kembali kepada Anda. Jumlah byte-nya berubah. Bentuknya, kredensial yang tergeletak di memori yang menghadap internet, tidak.

Kirimkan ke NetScaler sebuah login yang tidak bisa diprosesnya, dan ia melakukan sesuatu yang lebih buruk daripada menolak Anda. Ia membaca sepotong memorinya sendiri ke dalam sebuah cookie dan menyerahkannya kepada Anda. Anda tidak pernah diautentikasi. Itulah intinya.

Pada 30 Juni, Citrix menambal CVE-2026-8451 [1][2], sebuah overread memori pra-autentikasi pada NetScaler ADC dan Gateway yang dikonfigurasi sebagai penyedia identitas SAML. Para peneliti di @watchtowrcyber menemukannya di parser XML SAML milik NetScaler sendiri. Kirimkan sebuah AuthnRequest dengan nilai atribut yang tidak ditutup, dan parser terus membaca melewati akhir field, karena ia hanya berhenti pada byte null atau >, tidak pernah pada baris baru yang seharusnya menghentikannya. Apa pun yang berada di memori sebelahnya kembali ke pengirim, dalam encoding base64, pada cookie respons. Pointer heap. Isi buffer. Data sesi. Fragmen kredensial yang masih hidup.

Tanpa pijakan. Tanpa rantai. Anda mengajukan pertanyaan yang rusak ke pintu depan, dan ia menjawab dengan RAM-nya sendiri.

Para penyerang memahami nilainya dalam semalam. Lupovis melaporkan eksploitasi di lapangan dalam waktu 24 jam setelah penambalan, sebelum cacat itu masuk ke daftar known-exploited milik CISA [3][4]. Kecepatan itulah tandanya. Sebuah bug terhadap SAML IdP layak dipersenjatai seketika, karena IdP adalah kotak yang memutuskan siapa yang terautentikasi ke segala sesuatu di belakangnya. Bocorkan memorinya dan Anda sedang menjangkau token sesi yang memungkinkan Anda masuk sebagai seseorang yang sudah lolos pemeriksaan.

Ini adalah keluarga CitrixBleed. Versi asli 2023 membocorkan kilobyte dan menyerahkan token sesi hidup kepada penyerang, yang mereka putar ulang dari mesin mereka sendiri, dan itulah bagaimana Boeing, ICBC, dan DP World berakhir dalam cerita ini. Gateway tidak pernah bergeming, karena token sesi yang valid tetap token sesi yang valid apa pun tangan yang memegangnya.

Citrix tidak sembrono secara khusus dalam hal ini. Setiap appliance yang mengakhiri SSO menyimpan rahasia hidup di dalam memori proses yang mengurai input yang bermusuhan. Itu arsitekturnya, bukan kesalahannya. Dan itu berarti satu bug keamanan memori di mana pun dalam proses itu mengubah jangkar kepercayaan menjadi oracle kebocoran. Kategori ini tidak melemah minggu ini. Kategori ini memang selalu berbentuk seperti ini, dan para penyerang akhirnya memperhitungkannya.

Inilah garis yang akan kami pegang. Sebuah kredensial tidak boleh pernah berada dalam bentuk yang terbaca di dalam proses yang menghadap internet. Jika rahasia itu tidak pernah mewujud di memori tersebut, bug parser tidak punya apa pun untuk ditumpahkan. Sebuah token sesi harus terikat ke mesin tempat token itu dibuat, sehingga sebuah fragmen yang tersesat menjadi beban mati di tangan siapa pun. Dan brankas yang menyimpannya haruslah brankas yang operatornya sendiri tidak dapat membaca plaintext-nya, karena brankas yang tidak dapat membaca dirinya sendiri tidak dapat ditipu untuk membaca dirinya sendiri kepada orang asing.

Itulah dasar Clavitor dibangun. Kredensial yang tidak tinggal di tempat kode berjalan. Token yang terikat ke mesinnya. Brankas yang buta terhadap isinya sendiri, dengan jejak audit yang tidak dapat diubah dan berada di luar kotak (jenis yang membuat PCI DSS Req 10 ada) yang mencatat setiap pembacaan saat itu terjadi.

Tidak ada satu pun dari ini yang menjadikan CVE-2026-8451 sebuah kiamat, dan penting untuk bersikap tepat soal itu. Overread berhenti pada byte kontrol, jadi ia meneteskan beberapa byte per permintaan, bukan kilobyte seperti pada 2023, dan hanya ketika appliance berjalan sebagai SAML IdP. Para pembela menangkapnya dalam satu hari. Bahayanya tidak pernah terletak pada jumlah byte bug yang satu ini. Bahayanya ada pada bentuk di bawahnya: letakkan kredensial di memori mesin yang menjawab orang asing, dan setiap bug parser untuk sepuluh tahun ke depan adalah kebocoran kredensial yang menunggu nomor CVE-nya. Jumlah byte berubah. Bentuknya tidak.

Jadi tambal NetScaler. Lalu renungkan pertanyaan yang tidak disentuh oleh tambalan itu: mengapa ada sesuatu yang layak dicuri berada di memori itu sejak awal?

Jika Anda menginginkan daftar singkat aturan yang tidak boleh dilanggar oleh sebuah sistem kredensial, kami sudah menuliskannya. https://x.com/clavitorai/status/2071121333719625842

Clavitor (@clavitorai) adalah brankas kredensial yang dibangun untuk agen AI, dan melawan mereka. clavitor.ai

Sumber

[1] watchTowr Labs, "CitrixBleed To Infinity And Beyond: Citrix NetScaler Pre-Auth Memory Overread (CVE-2026-8451)," oleh Aliz Hammond. @watchtowrcyber

[2] Citrix, buletin keamanan untuk NetScaler ADC dan NetScaler Gateway, CVE-2026-8451 (CVSS 8.8), ditambal pada 30 Juni 2026. @citrix

[3] Lupovis, eksploitasi CVE-2026-8451 di lapangan terdeteksi dalam waktu 24 jam setelah pengungkapan publik.

[4] CyberScoop dan BleepingComputer, pemberitaan tentang eksploitasi aktif terhadap cacat kebocoran memori SAML NetScaler.