Checklist Keamanan MCP Server untuk Developer

Batas autentikasi adalah tempat kebanyakan insiden serius bermula. MCP server yang menerima token yang tidak diterbitkan untuknya, atau yang meneruskan token yang diterima ke API di hilir, membiarkan penyerang meminjam otoritas orang lain. Spesifikasi MCP melarang token passthrough ini dan mewajibkan tiap server memvalidasi bahwa audience sebuah token cocok dengan dirinya.
Pada transport HTTP, validasi header Origin dan Host pada setiap permintaan dan blokir panggilan keluar ke alamat internal, terutama endpoint metadata cloud di 169.254.169.254. Ikat server ke localhost saat pengembangan alih-alih ke semua antarmuka, dan perlakukan setiap URL yang diberikan model sebagai input tak tepercaya yang harus dicek sebelum Anda mengambilnya.
Tool poisoning menyembunyikan instruksi jahat di dalam deskripsi sebuah tool, yang dibaca dan dipercaya model sebagai panduan. Serangan rug-pull yang terkait membuat sebuah server berperilaku normal saat ditinjau lalu menukar perilaku berbahaya kemudian. Menurut Cloud Security Alliance, keduanya adalah ancaman MCP yang nyata, jadi pin definisi tool, tinjau, dan tinjau ulang setiap kali server diperbarui.
Tidak. Menurut Cloud Security Alliance, banyak MCP server dirilis dengan autentikasi dibiarkan opsional, yang aman di laptop tetapi terbuka lebar begitu diekspos di jaringan. Jadikan autentikasi wajib dan fail closed, sehingga sebuah pengaturan yang salah atau terlupa menolak akses alih-alih memberikannya.
Lethal trifecta adalah kombinasi akses ke data privat, paparan pada konten tak tepercaya, dan kemampuan membuat permintaan keluar. Sebuah server dengan ketiganya bisa diubah menjadi saluran eksfiltrasi data hanya lewat prompt injection. Jika Anda tidak bisa menghapus salah satu dari ketiga kemampuan itu, isolasi dan sandbox server itu dengan ketat untuk membatasi kerusakan.

Ringkasan Utama
Sebuah MCP server mengekspos tool dan data ke AI client, sehingga ia menjadi permukaan serangan. Checklist ini mencakup hal esensial: validasi audience token untuk menghindari token passthrough, hasilkan session ID yang tidak bisa ditebak, blokir SSRF pada transport HTTP, sanitasi input stdio, dan pin definisi tool terhadap poisoning serta rug-pull.
Model Context Protocol memungkinkan sebuah AI client memanggil tool Anda dan membaca data Anda melalui sebuah server kecil. Kenyamanan itu juga sebuah beban risiko: setiap primitif yang Anda ekspos adalah sesuatu yang bisa dicoba diraih penyerang lewat model. Sebuah MCP server adalah perangkat lunak produksi, dan ia layak mendapat threat modeling yang sama seperti API publik mana pun.
Checklist ini menyatukan panduan dalam spesifikasi MCP dengan temuan terbaru dari Cloud Security Alliance dan OWASP. Kerjakan sebelum Anda menghubungkan server ke kredensial sungguhan atau merilisnya ke sebuah marketplace. Butir-butirnya berurutan dari kontrol berdampak tertinggi hingga kebersihan operasional.
Jika Anda tidak melakukan apa pun yang lain, lakukan ini. Setiap butir menutup lubang yang telah dieksploitasi pada deployment MCP sungguhan, dan tidak satu pun membutuhkan tooling yang eksotis.
Perlakukan ini sebagai daftar pra-terbang dan konfirmasi setiap baris sebelum server Anda menyentuh token sungguhan atau data pengguna sungguhan:
Kebanyakan insiden MCP yang serius bermula di batas autentikasi. Server yang menerima bearer token apa pun, atau yang meneruskan token yang diterimanya ke API di hilir, memberi penyerang cara meminjam otoritas orang lain. Spesifikasinya tegas soal ini: server hanya boleh menerima token yang diterbitkan untuk dirinya sendiri, dan tidak boleh meneruskan token ke layanan lain.
Ketika server Anda berada di depan sebuah penyedia OAuth, ia bisa menjadi confused deputy yang bertindak dengan hak lebih besar daripada yang seharusnya dimiliki pemanggil. Perbaikannya adalah pemeriksaan persetujuan dan audience yang ditegakkan di tepi. Sebuah profil pengerasan minimal untuk server Streamable HTTP terlihat seperti ini:
# Streamable HTTP MCP server hardening (env)
BIND_ADDRESS=127.0.0.1 # never 0.0.0.0 on a shared host
ALLOWED_ORIGINS=https://app.example.com
REQUIRE_AUTH=true # close the optional-auth gap
TOKEN_AUDIENCE=mcp.example.com # reject tokens minted for anything else
BLOCK_INTERNAL_IPS=169.254.169.254,127.0.0.1,::1 # stop SSRF to metadataTutup celah optional-auth sejak dini. Menurut Cloud Security Alliance, banyak MCP server dirilis dengan autentikasi dibiarkan opsional, sehingga server yang aman di laptop Anda menjadi terbuka lebar begitu diekspos di jaringan. Jadikan autentikasi wajib dan fail closed.
Dua transport yang umum gagal dengan cara berbeda, sehingga kontrolnya pun berbeda. Ketahui yang mana yang Anda jalankan dan pertahankan sesuai itu.
Tool yang diiklankan sebuah MCP server adalah instruksi yang akan dipercaya model, dan kepercayaan itulah permukaan serangannya. Dalam serangan tool poisoning sebuah deskripsi membawa instruksi tersembunyi; dalam rug-pull sebuah server berperilaku baik saat ditinjau lalu menukar perilaku jahat kemudian.
Menurut round-up eksploit Q1 2026 dari OWASP GenAI, teknik prompt injection dan tool poisoning terhadap tooling agen sedang dikatalogkan secara aktif, bukan dianggap teoretis. Tangani setiap MCP server pihak ketiga seperti dependensi yang belum diperiksa: pin versinya, tinjau definisi tool-nya, dan tinjau ulang saat ada pembaruan.
Waspadai lethal trifecta. Sebuah server yang menggabungkan akses ke data privat, paparan pada konten tidak tepercaya, dan kemampuan membuat permintaan keluar bisa diubah menjadi saluran eksfiltrasi hanya lewat prompt injection. Jika Anda tidak bisa menghapus salah satu dari ketiganya, isolasi server itu dengan ketat.
Lapisan terakhir adalah yang membosankan yang menyelamatkan Anda pada jam 3 dini hari. Kontrol ini tidak menghentikan sebuah eksploit tertentu; ia membatasi radius ledakan dan membuat insiden terlihat.
Keamanan MCP tidak eksotis; ia adalah keamanan aplikasi biasa yang diterapkan pada jenis pemanggil baru. Validasi token, ikat session, jaga transport Anda, jangan percaya tool pihak ketiga, dan catat semuanya. Jalankan checklist ini sekali sebelum peluncuran dan sekali lagi pada setiap kenaikan dependensi, dan sebagian besar berita krisis MCP berhenti membicarakan Anda.