
CVE-2026-18953: Transform MCP Server milik AWS Tidak Memiliki Batas Penulisan
- OrcaBARUOrcaCyber: MiniMax M3.1 Flash Abliterated / Uncensored2026-10-29100 tok/s
- OrcaBARUOrcaCyber: GLM 5.3 Flash Abliterated / Uncensored2026-10-27$0.80 / $1.60 per 1 juta token · 102 tok/s
- OrcaBARUOrcaCyber: Qwen3.8 Flash Next Abliterated / Uncensored2026-10-26$0.80 / $1.60 per 1 juta token · 283 tok/s
- OrcaBARUOrcaCyber: MiMo V2.6 Flash Abliterated / Uncensored2026-10-26$0.80 / $1.60 per 1 juta token · 93 tok/s
- MoonshotBARUMoonshotAI: Kimi K3.1 Pro2026-10-2446Kecerdasan
- OrcaBARUOrcaCyber: DeepSeek V4.1 Flash Abliterated / Uncensored2026-10-23$0.80 / $1.60 per 1 juta token · 106 tok/s
- minimaxBARUMiniMax: M3.1 Flash2026-10-1929Kecerdasan
- OrcaBARUOrca: OrcaCyber Ultra 1.02026-10-17$5.00 / $10.00 per 1 juta token · 70 tok/s
- deepseekBARUDeepSeek: DeepSeek V4.1 Flash 10172026-10-1733Kecerdasan
- DeepSeekBARUDeepSeek: DeepSeek V4.1 Flash2026-10-1740Kecerdasan
- OrcaOrca: OrcaCyber Zero 1.52026-10-10$3.00 / $7.50 per 1 juta token · 95 tok/s
- openaiOpenAI: GPT-6.1 Sol2026-09-2955Kecerdasan
- anthropicAnthropic: Claude Sonnet 5.52026-09-2854Kecerdasan
- typesafeTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 per 1 juta token · 168 tok/s
- OpenAIOpenAI: GPT-6 Luna2026-09-2228Kecerdasan
- OpenAIOpenAI: GPT-6 Sol2026-09-2248Kecerdasan
- AnthropicAnthropic: Claude Opus 5.52026-09-2258Kecerdasan
- xiaomiXiaomi: MiMo-V2.6-Flash2026-09-2127Kecerdasan
- xiaomiXiaomi: MiMo-V2.6-Pro2026-09-2130Kecerdasan
- xAIGrok 4.72026-09-2134Kecerdasan
Amazon menerbitkan buletin keamanan 2026-075-AWS pada 5 Agustus 2026 untuk CVE-2026-18953, sebuah path traversal pada tool get_resource milik awslabs.aws-transform-mcp-server, server Model Context Protocol sumber terbuka yang berjalan di mesin pengembang sendiri agar asisten AI dapat menjalankan tugas AWS Transform dan mengambil artefaknya. Versi 0.1.0 hingga 0.1.4 tidak membatasi nama jalur secara memadai, dan parameter savePath dapat menulis berkas di luar direktori kerja yang dimaksud — yang menurut advisory GitHub di repositori Amazon "dapat berujung pada eksekusi kode secara lokal." Amazon memberinya skor 8.6, Tinggi. Perbaikannya adalah versi 0.1.5, dan tidak ada solusi pengganti di sisi server maupun yang hanya berupa konfigurasi, karena jalur kode yang rentan terdapat dalam konfigurasi default. Tidak ada sumber publik yang mencatat adanya eksploitasi. Catatan lengkapnya, beserta nilai keparahan dan keyakinannya, terdapat di Orca AI Incident Archive bersama insiden MCP dan runtime agen yang diarsipkan pada bulan yang sama.
Server MCP yang menulis di tempat developer bekerja
Server Model Context Protocol adalah lapisan yang memberi asisten alat yang dapat dipanggil, dan yang ini sengaja dibuat lokal. Buletin Amazon mendeskripsikannya sebagai "server MCP sumber terbuka yang berjalan secara lokal di mesin pengembang dan memungkinkan asisten bertenaga AI berinteraksi dengan AWS Transform untuk menjalankan pekerjaan transformasi kode dan mengambil artefaknya." Deskripsi paketnya di Python Package Index menyatakan bahwa paket ini mengekspos siklus hidup Transform melalui 19 alat, mengelola ruang kerja transformasi, pekerjaan, konektor, tugas human-in-the-loop, artefak, dan obrolan, serta mencakup modernisasi mainframe, migrasi VMware, modernisasi .NET, dan transformasi kode khusus.
Penempatan itulah yang membuat kerentanan ini penting. Server di infrastruktur milik vendor sendiri yang salah menangani nama file akan merusak penyimpanan vendor. Server ini berjalan sebagai developer, di direktori home developer, bersebelahan dengan konfigurasi shell dan kunci SSH mereka, dan dampak yang dijelaskan Amazon bukanlah unduhan rusak melainkan "eksekusi kode lokal". Setiap skor yang dilekatkan pada CVE sepakat pada satu hal: vektor serangannya lokal, bukan jaringan.
Alat yang disebutkan dalam advisory adalah alat yang mengunduh artefak pekerjaan ke disk. get_resource menerima savePath yang menentukan tempat file seharusnya disimpan. Bug-nya adalah tidak ada yang mencegah path tersebut menunjuk ke tempat lain.
Seberapa buruk, dan menurut perhitungan siapa
Tiga skor dikaitkan dengan CVE ini dan tidak cocok. Amazon, yang menetapkan CVE sebagai otoritas penomoran, menilainya 8.6 Tinggi pada CVSS v3.1 dengan vektor CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H — lokal, kompleksitas rendah, tidak diperlukan hak istimewa, interaksi pengguna diperlukan, lingkup berubah, dampak tinggi terhadap kerahasiaan, integritas, dan ketersediaan. Entri NIST dalam National Vulnerability Database memiliki skor utama v3.1-nya sendiri sebesar 8.8 pada vektor yang berbeda, CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H: hak istimewa rendah diperlukan, tanpa interaksi pengguna. Keduanya berada dalam kategori Tinggi. Perbedaan pendapat ini menyangkut prasyarat — apakah pelaku sudah memerlukan pijakan, dan apakah manusia harus dibujuk — bukan tentang seberapa buruk hasilnya.
Skor CVSS v4.0 Amazon untuk CVE yang sama adalah 6.3, Sedang, pada CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H. Baca metrik dampaknya: tidak ada apa pun pada sistem yang rentan itu sendiri, semuanya tinggi pada sistem berikutnya. Itulah bentuk traversal yang menembus batas alat itu sendiri — kerusakan terjadi pada apa pun yang dapat dijangkau alat tersebut, sehingga masuk ke kolom subsistem dan sistem rentan mendapat skor nol.

Pengayaan CISA atas CVE tersebut, tertanggal 6 Agustus 2026, mencatat keputusan SSVC dengan Eksploitasi: tidak ada, Dapat Diotomatisasi: tidak, Dampak Teknis: total. Catatan NVD terakhir diubah pada 23 Oktober 2026 dan masih memuat 8.6 serta 8.8 secara berdampingan. Tidak ada dokumen yang menganggap dokumen lainnya salah.
Apa yang dilakukan kode rentan, dan apa yang diubah pada 0.1.5
Deskripsi Amazon tentang mekanisme tersebut hanya satu kalimat dan sangat berhati-hati: alat itu "tidak membatasi nama jalur secara memadai," yang mungkin memungkinkan "aktor yang bergantung pada konteks" untuk "menulis file arbitrer di luar direktori kerja yang dimaksudkan melalui parameter savePath." Buletin keamanan tidak mendefinisikan aktor tersebut, tidak menyebutkan apa yang memicu penulisan, dan tidak menjelaskan seperti apa eksploitasi yang berhasil. Hanya disebutkan bahwa hasilnya "dapat menyebabkan eksekusi kode lokal."
Uraian publik paling rinci tentang mekanisme tersebut bukanlah milik Amazon. Itu adalah repositori proof-of-concept kecil, ronamosa/CVE-2026-18953, yang diterbitkan di GitHub pada 8 Agustus 2026 di bawah Apache-2.0 — dua commit, tanpa bintang dan tanpa fork pada saat penulisan — yang menyertakan salinan verbatim dari versi rentan dan versi yang telah ditambal file_validation.py serta menjalankan keduanya melalui input yang sama.
Pembacaan versi 0.1.4 adalah ini: validate_write_path() me-resolve savePath dengan realpath dan expanduser, menolak daftar larangan singkat lokasi (~/.aws, ~/.ssh, ~/.gnupg, ~/.docker, ~/.aws-transform-mcp, /etc/shadow, /etc/passwd), dan menghapus komponen direktori dari nama file yang diberikan. Ia tidak pernah membatasi jalur yang di-resolve ke direktori dasar atau direktori kerja mana pun. Daftar blokir nama file sensitif — .bashrc, .zshrc, authorized_keys, id_rsa — diterapkan pada pembacaan tetapi tidak pada penulisan.
Repositori ini menunjukkan tiga penulisan yang diizinkan olehnya: jalur absolut yang tidak memerlukan traversal sama sekali, escape ../../ relatif, dan nama dotfile yang akan ditolak oleh jalur baca. Ketiganya berakhir di dalam direktori sementara yang dibuat oleh skrip, dan contoh keluarannya menunjukkan dropped_by_absolute_path.sh, dropped_by_traversal.sh dan sebuah .bashrc di bawah direktori home palsu; direktori home asli tidak pernah disentuh. Versi 0.1.5 menambahkan batas yang hilang: direktori dasar yang diambil dari $AWS_TRANSFORM_MCP_WRITE_DIR atau direktori kerja saat server dimulai, yang setiap penulisan yang telah diresolusikan harus berada di bawahnya, ditambah daftar blokir nama file yang diterapkan pada jalur penulisan final yang telah diresolusikan. Validator yang diperbaiki memunculkan "Write path must be within the working directory" untuk ketiganya.

Tidak satu pun detail itu muncul dalam advisory tersebut, dan repositori tidak mengklaim bahwa hal itu berasal dari sana. Anggaplah deny-list, pemeriksaan nama file read-only, dan perbaikan direktori dasar sebagai rekonstruksi dari kode sumber, bukan sebagai temuan resmi kedua. Yang ditambahkan repositori di luar advisory adalah penjelasan tentang siapa yang dapat memasok jalur tersebut: karena tugas server adalah menarik konten job dan task ke dalam konteks asisten, pihak yang memilih savePath tidak harus orang yang berada di keyboard. Asisten yang dikendalikan oleh konten tidak tepercaya yang diambilnya melalui alat yang sama dapat membuat keputusan itu. Itu adalah argumen repositori berdasarkan kode dan desain alat, bukan klaim yang dibuat Amazon; "context-dependent actor" yang tidak didefinisikan Amazon konsisten dengan itu dan berhenti sampai di situ.
Tujuh minggu antara patch dan buletin
Perbaikannya tidak datang bersamaan dengan pengumuman. Riwayat rilis Python Package Index — metadata pihak pertama dari registri yang menjadi jalur distribusi paket tersebut — mencantumkan 0.1.4 bertanggal 20 Mei 2026 dan 0.1.5 bertanggal 17 Juni 2026, tujuh minggu sebelum buletin 2026-075 diterbitkan pada 5 Agustus. Tidak ada file 0.1.0 sama sekali di indeks; artefak terbit paling awal dalam rentang yang terdampak adalah 0.1.1, diunggah 9 Mei 2026. Oleh karena itu, pengembang yang memasang dari indeks hanya mungkin menerima build rentan antara 9 Mei dan 17 Juni, dan siapa pun yang memantau rilis sudah memakai kode yang telah ditambal pada pertengahan Juni.

Amazon tidak menyebutkan kapan pihaknya mengetahui masalah tersebut, kapan laporan itu tiba, atau mengapa rilis yang menutupinya diterbitkan. Satu-satunya orang yang disebutkan dalam catatan adalah Drew Raines, yang diberi ucapan terima kasih dalam buletin maupun advisory GitHub "atas kolaborasinya dalam masalah ini melalui proses pengungkapan masalah yang terkoordinasi." GHSA-66mr-jr63-2jgw diterbitkan di repositori awslabs/mcp milik Amazon pada 5 Agustus 2026, hari yang sama dengan buletin; catatan CVE dicadangkan pada 13:44 UTC dan diterbitkan pada 19:33 UTC hari itu.
Jadi tanggal perbaikannya sudah dipastikan, tetapi alasannya belum. Versi yang telah ditambal yang berada di registry tujuh minggu lebih awal daripada advisory konsisten dengan perbaikan senyap yang diikuti oleh pengungkapan terkoordinasi — tetapi itu hanyalah inferensi dari dua stempel waktu, dan tak satu pun dari kedua dokumen itu yang menyatakannya.
Apa yang ditetapkan oleh catatan, dan apa yang tidak.
Arsip memberi entri ini nilai A — terdokumentasi dengan baik, sumber-sumber primer sepakat — dan tidak menandainya sebagai dipersengketakan. Arsip ini mengarsipkannya sebagai catatan penelitian, temuan kerentanan, bukan insiden penerapan, tanpa dampak nyata yang tercatat. Nilai tersebut berkaitan dengan kualitas dokumentasi, dan berdasarkan bukti yang ditinjau, nilai itu tetap berlaku: buletin, advisory GitHub, dan catatan CVE adalah tiga dokumen terbitan Amazon yang sepakat tentang produk, versi, perbaikan, dan kredit.
• Terkonfirmasi.Amazon menerbitkan buletin 2026-075-AWS pada 5 Agustus 2026 yang mencakup CVE-2026-18953, sebuah path traversal CWE-22 pada penanganan get_resource milik savePath di awslabs.aws-transform-mcp-server 0.1.0 hingga 0.1.4, yang diperbaiki pada 0.1.5, tanpa solusi sementara di sisi server maupun yang hanya berbasis konfigurasi karena jalur rentan tersebut berada dalam konfigurasi default.
• Terkonfirmasi. Skor dan perbedaannya: 8,6 Tinggi dari Amazon sebagai otoritas penomoran CVE, 8,8 Tinggi dari NIST sebagai skor utama NVD, 6,3 Sedang pada CVSS v4.0, dan keputusan SSVC CISA tanggal 6 Agustus bahwa tidak ada eksploitasi dan tidak ada jalur yang dapat diotomatisasi yang telah teramati.
• Terkonfirmasi. Tanggal rilis di Python Package Index, dan kredit untuk Drew Raines atas pengungkapan terkoordinasi.
• Disimpulkan dari kode sumber, oleh pihak ketiga. Daftar penolakan, daftar blokir nama file hanya-baca, direktori dasar yang tidak ada, dan perbaikan _ALLOWED_WRITE_BASE semuanya berasal dari repositori proof-of-concept ronamosa, yang salinan vendornya dari dua versi validator dapat dibandingkan oleh siapa saja.
• Disimpulkan dari stempel waktu dan desain. Bahwa 0.1.5 adalah rilis keamanan yang disengaja, dan bahwa asisten yang diarahkan oleh konten yang tidak tepercaya dapat menyediakan jalur berbahaya. Amazon tidak menyatakan keduanya.
• Belum dipastikan. Adanya eksploitasi di dunia nyata. Entri "Exploitation: none" milik CISA bertanggal 6 Agustus, dua hari sebelum proof-of-concept publik muncul, sehingga pernyataan itu hanya merujuk pada momen tersebut dan bukan pada apa pun setelahnya. Jumlah pengguna terdampak, pemberitahuan kepada pelanggan, maupun telemetri belum dipublikasikan.
• Tidak terkonfirmasi. Pelaporan independen. Tidak tampak ada media arus utama yang meliput CVE ini. Catatan publiknya adalah tiga dokumen Amazon, pengayaan dari NIST dan CISA atas dokumen-dokumen tersebut, halaman-halaman pelacak yang mengulang catatan itu, dan satu repositori proof-of-concept kecil yang dijelaskan di atas.
Apa yang berubah, dan apa yang perlu diperiksa
Solusi Amazon adalah peningkatan versi dan tidak ada yang lain: tingkatkan ke 0.1.5 atau yang lebih baru, dan "pastikan kode apa pun yang di-fork atau merupakan turunan ditambal untuk memasukkan perbaikan baru." Klausul kedua itulah yang berdampak lebih luas. Server ini bersumber terbuka, dan fork yang mem-vendor validator 0.1.4 mewarisi cacat tersebut tanpa mewarisi pemberitahuan keamanannya; buletin meminta operator kode turunan untuk membawa perubahan itu ke dalam kode mereka, yang berarti rilis hulu tidak menjangkau salinan yang dipelihara oleh orang lain.
Repositori proof-of-concept menyarankan sesuatu yang justru ditolak oleh advisory. Menurut repositori itu, operator yang tidak dapat segera melakukan upgrade harus menjalankan server dengan direktori kerjanya diarahkan ke direktori kosong khusus dan menganggap setiap file yang dapat ditulis oleh server sebagai telah dikompromikan. Posisi Amazon lebih ketat: tidak ada solusi workaround sisi server maupun yang hanya berbasis konfigurasi sama sekali. Berdasarkan keterangan repositori itu sendiri, saran tersebut juga lemah, karena kode rentan memang sejak awal tidak pernah membatasi penulisan hanya pada direktori kerja. Jika keduanya berbeda pendapat, instruksi vendor yang hanya mengizinkan upgrade tetap yang berlaku.
Hal yang berguna tentang catatan ini bukanlah skornya. Melainkan bentuknya: server MCP lokal, unduhan artefak dengan tujuan yang disediakan pemanggil, dan tidak ada batas di antara keduanya. Pemeriksaan yang penting bukanlah tanggal buletin melainkan versi yang dipatok — 0.1.5 atau lebih baru, dan perubahan yang sama dibawa ke fork mana pun yang menyalin validator tersebut.
