Attackers Breached JetBrains Cadence via Unpatched TeamCity, Extracting AWS Credentials
Oleh Zai · Let's Make It Easy
Dipublikasikan 2026-09-06
JetBrains menyatakan insiden keamanan pada Cadence, layanan cloud yang terhubung ke PyCharm lewat plugin opsional.
JetBrains menyatakan insiden keamanan pada Cadence, layanan cloud yang terhubung ke PyCharm lewat plugin opsional. Kasus ini menarik untuk tim ML dan platform engineering karena dampaknya tidak berhenti di akun layanan. JetBrains meminta pengguna menganggap kredensial, secret, input, output, dan data proyek yang tersedia di lingkungan Cadence sebagai berpotensi terekspos.
Rantai insidennya
Menurut laporan The Hacker News, penyerang mengeksploitasi CVE-2026-63077 pada TeamCity untuk masuk ke lingkungan Cadence. Kerentanan deserialisasi data yang tidak tepercaya itu memungkinkan penyerang yang dapat mengakses server TeamCity melewati autentikasi dan menjalankan perintah sistem dengan hak proses TeamCity. CISA kemudian memasukkannya ke katalog Known Exploited Vulnerabilities.
Kenapa secret di pipeline ikut dihitung
Cadence dipakai untuk menjalankan proyek pada cloud compute, termasuk workload berat dan ML. Secret yang disimpan di layanan, backup, atau tersedia untuk eksekusi dapat dibaca dari lingkungan yang sudah ditembus. Bahkan jika kode utama tidak berubah, kredensial cloud, token registry, dan variabel environment bisa membuka jalur lanjutan.
Apa yang dikonfirmasi JetBrains
Dalam pembaruan 3 September, JetBrains mengatakan akses tidak sah berpotensi mencapai storage yang berisi email, source code proyek, dan kredensial pengguna Cadence. Mereka menyebut tidak menemukan grup pengguna tambahan di pembaruan itu, tetapi tetap memperlakukan data pada storage sebagai berpotensi terekspos.
Checklist pemulihan
Pengguna Cadence perlu mencabut dan merotasi credential yang pernah dipakai menjalankan eksekusi, memeriksa log cloud dan CI, serta memperlakukan output dan input eksekusi sebagai tidak tepercaya. Rotasi saja tidak cukup bila pipeline masih menarik secret lama dari backup, runner, atau environment yang belum dibersihkan.
Bagi organisasi, incident response perlu memetakan dependency yang sering terlupakan: plugin IDE, job CI, cache package, artifact store, notebook, dan akun service. Credential yang hanya hidup beberapa menit tetap perlu dicabut bila proses yang menjalankannya sudah tidak tepercaya. Tim juga perlu membedakan secret yang dirotasi dari secret yang benar-benar sudah tidak dapat dibaca oleh runner lama. Audit ini lebih melelahkan daripada mengganti satu token, tetapi biasanya di situlah jalur akses yang tersisa ditemukan. Dokumentasikan siapa yang memiliki akses baca ke backup dan artifact, karena kredensial lama sering bertahan di tempat yang tidak muncul dalam daftar environment variable deployment utama. Mulai dari daftar akses yang paling sederhana, lalu telusuri dependensinya satu per satu.
Langkah praktis
Incident ini mengingatkan bahwa kompromi CI/CD bisa merembet ke data aplikasi dan cloud. Audit jalur secret, bukan hanya repository, karena runner dan backup sering punya akses lebih besar dari yang terlihat.