Skip to content

Latest commit

 

History

History
188 lines (152 loc) · 15.6 KB

File metadata and controls

188 lines (152 loc) · 15.6 KB

Praktik Keamanan Terbaik MCP 2025

Panduan komprehensif ini menjelaskan praktik keamanan penting untuk mengimplementasikan sistem Model Context Protocol (MCP) berdasarkan Spesifikasi MCP 2025-06-18 terbaru dan standar industri terkini. Praktik ini mencakup kekhawatiran keamanan tradisional serta ancaman spesifik AI yang unik untuk penerapan MCP.

Persyaratan Keamanan Kritis

Kontrol Keamanan Wajib (Persyaratan HARUS)

  1. Validasi Token: Server MCP TIDAK BOLEH menerima token apa pun yang tidak secara eksplisit diterbitkan untuk server MCP itu sendiri.
  2. Verifikasi Otorisasi: Server MCP yang menerapkan otorisasi HARUS memverifikasi SEMUA permintaan masuk dan TIDAK BOLEH menggunakan sesi untuk autentikasi.
  3. Persetujuan Pengguna: Server proxy MCP yang menggunakan ID klien statis HARUS mendapatkan persetujuan eksplisit dari pengguna untuk setiap klien yang didaftarkan secara dinamis.
  4. ID Sesi Aman: Server MCP HARUS menggunakan ID sesi yang aman secara kriptografis, non-deterministik, yang dihasilkan dengan generator angka acak yang aman.

Praktik Keamanan Inti

1. Validasi & Sanitasi Input

  • Validasi Input Komprehensif: Validasi dan sanitasi semua input untuk mencegah serangan injeksi, masalah confused deputy, dan kerentanan injeksi prompt.
  • Penegakan Skema Parameter: Terapkan validasi skema JSON yang ketat untuk semua parameter alat dan input API.
  • Penyaringan Konten: Gunakan Microsoft Prompt Shields dan Azure Content Safety untuk menyaring konten berbahaya dalam prompt dan respons.
  • Sanitasi Output: Validasi dan sanitasi semua output model sebelum disajikan kepada pengguna atau sistem downstream.

2. Keunggulan Autentikasi & Otorisasi

  • Penyedia Identitas Eksternal: Delegasikan autentikasi ke penyedia identitas yang sudah mapan (Microsoft Entra ID, penyedia OAuth 2.1) daripada membuat autentikasi khusus.
  • Izin yang Terperinci: Terapkan izin spesifik alat yang terperinci sesuai dengan prinsip hak akses minimum.
  • Manajemen Siklus Hidup Token: Gunakan token akses berumur pendek dengan rotasi yang aman dan validasi audiens yang tepat.
  • Autentikasi Multi-Faktor: Wajibkan MFA untuk semua akses administratif dan operasi sensitif.

3. Protokol Komunikasi Aman

  • Keamanan Lapisan Transportasi: Gunakan HTTPS/TLS 1.3 untuk semua komunikasi MCP dengan validasi sertifikat yang tepat.
  • Enkripsi Ujung ke Ujung: Terapkan lapisan enkripsi tambahan untuk data yang sangat sensitif saat transit dan saat disimpan.
  • Manajemen Sertifikat: Kelola siklus hidup sertifikat dengan proses pembaruan otomatis.
  • Penegakan Versi Protokol: Gunakan versi protokol MCP terkini (2025-06-18) dengan negosiasi versi yang tepat.

4. Pembatasan Tingkat Lanjut & Perlindungan Sumber Daya

  • Pembatasan Tingkat Multi-Lapisan: Terapkan pembatasan tingkat pada tingkat pengguna, sesi, alat, dan sumber daya untuk mencegah penyalahgunaan.
  • Pembatasan Tingkat Adaptif: Gunakan pembatasan tingkat berbasis pembelajaran mesin yang beradaptasi dengan pola penggunaan dan indikator ancaman.
  • Manajemen Kuota Sumber Daya: Tetapkan batas yang sesuai untuk sumber daya komputasi, penggunaan memori, dan waktu eksekusi.
  • Perlindungan DDoS: Terapkan perlindungan DDoS yang komprehensif dan sistem analisis lalu lintas.

5. Logging & Pemantauan Komprehensif

  • Logging Audit Terstruktur: Terapkan log yang terperinci dan dapat dicari untuk semua operasi MCP, eksekusi alat, dan peristiwa keamanan.
  • Pemantauan Keamanan Real-time: Gunakan sistem SIEM dengan deteksi anomali berbasis AI untuk beban kerja MCP.
  • Logging yang Mematuhi Privasi: Catat peristiwa keamanan sambil menghormati persyaratan dan regulasi privasi data.
  • Integrasi Respons Insiden: Hubungkan sistem logging ke alur kerja respons insiden otomatis.

6. Praktik Penyimpanan Aman yang Ditingkatkan

  • Modul Keamanan Perangkat Keras: Gunakan penyimpanan kunci yang didukung HSM (Azure Key Vault, AWS CloudHSM) untuk operasi kriptografi penting.
  • Manajemen Kunci Enkripsi: Terapkan rotasi kunci, segregasi, dan kontrol akses yang tepat untuk kunci enkripsi.
  • Manajemen Rahasia: Simpan semua kunci API, token, dan kredensial dalam sistem manajemen rahasia khusus.
  • Klasifikasi Data: Klasifikasikan data berdasarkan tingkat sensitivitas dan terapkan langkah-langkah perlindungan yang sesuai.

7. Manajemen Token Lanjutan

  • Pencegahan Passthrough Token: Secara eksplisit melarang pola passthrough token yang melewati kontrol keamanan.
  • Validasi Audiens: Selalu verifikasi klaim audiens token sesuai dengan identitas server MCP yang dimaksud.
  • Otorisasi Berbasis Klaim: Terapkan otorisasi terperinci berdasarkan klaim token dan atribut pengguna.
  • Pengikatan Token: Ikat token ke sesi, pengguna, atau perangkat tertentu jika diperlukan.

8. Manajemen Sesi Aman

  • ID Sesi Kriptografis: Hasilkan ID sesi menggunakan generator angka acak yang aman secara kriptografis (bukan urutan yang dapat diprediksi).
  • Pengikatan Spesifik Pengguna: Ikat ID sesi ke informasi spesifik pengguna menggunakan format aman seperti <user_id>:<session_id>.
  • Kontrol Siklus Hidup Sesi: Terapkan mekanisme kedaluwarsa, rotasi, dan pembatalan sesi yang tepat.
  • Header Keamanan Sesi: Gunakan header HTTP keamanan yang sesuai untuk perlindungan sesi.

9. Kontrol Keamanan Spesifik AI

  • Pertahanan Injeksi Prompt: Terapkan Microsoft Prompt Shields dengan teknik spotlighting, delimiter, dan datamarking.
  • Pencegahan Peracunan Alat: Validasi metadata alat, pantau perubahan dinamis, dan verifikasi integritas alat.
  • Validasi Output Model: Pindai output model untuk potensi kebocoran data, konten berbahaya, atau pelanggaran kebijakan keamanan.
  • Perlindungan Jendela Konteks: Terapkan kontrol untuk mencegah peracunan jendela konteks dan serangan manipulasi.

10. Keamanan Eksekusi Alat

  • Sandboxing Eksekusi: Jalankan eksekusi alat dalam lingkungan terisolasi yang terkontainerisasi dengan batas sumber daya.
  • Pemisahan Hak Istimewa: Eksekusi alat dengan hak istimewa minimal yang diperlukan dan akun layanan terpisah.
  • Isolasi Jaringan: Terapkan segmentasi jaringan untuk lingkungan eksekusi alat.
  • Pemantauan Eksekusi: Pantau eksekusi alat untuk perilaku anomali, penggunaan sumber daya, dan pelanggaran keamanan.

11. Validasi Keamanan Berkelanjutan

  • Pengujian Keamanan Otomatis: Integrasikan pengujian keamanan ke dalam pipeline CI/CD dengan alat seperti GitHub Advanced Security.
  • Manajemen Kerentanan: Secara rutin pindai semua dependensi, termasuk model AI dan layanan eksternal.
  • Pengujian Penetrasi: Lakukan penilaian keamanan secara rutin yang secara khusus menargetkan implementasi MCP.
  • Tinjauan Kode Keamanan: Terapkan tinjauan keamanan wajib untuk semua perubahan kode terkait MCP.

12. Keamanan Rantai Pasokan untuk AI

  • Verifikasi Komponen: Verifikasi asal, integritas, dan keamanan semua komponen AI (model, embedding, API).
  • Manajemen Dependensi: Pertahankan inventaris terkini dari semua perangkat lunak dan dependensi AI dengan pelacakan kerentanan.
  • Repositori Tepercaya: Gunakan sumber yang diverifikasi dan tepercaya untuk semua model AI, pustaka, dan alat.
  • Pemantauan Rantai Pasokan: Pantau secara terus-menerus untuk kompromi pada penyedia layanan AI dan repositori model.

Pola Keamanan Lanjutan

Arsitektur Zero Trust untuk MCP

  • Jangan Pernah Percaya, Selalu Verifikasi: Terapkan verifikasi berkelanjutan untuk semua peserta MCP.
  • Mikro-segmentasi: Isolasi komponen MCP dengan kontrol jaringan dan identitas yang terperinci.
  • Akses Bersyarat: Terapkan kontrol akses berbasis risiko yang beradaptasi dengan konteks dan perilaku.
  • Penilaian Risiko Berkelanjutan: Evaluasi postur keamanan secara dinamis berdasarkan indikator ancaman saat ini.

Implementasi AI yang Melindungi Privasi

  • Minimasi Data: Hanya ekspos data minimum yang diperlukan untuk setiap operasi MCP.
  • Privasi Diferensial: Terapkan teknik yang melindungi privasi untuk pemrosesan data sensitif.
  • Enkripsi Homomorfik: Gunakan teknik enkripsi canggih untuk komputasi aman pada data terenkripsi.
  • Pembelajaran Terfederasi: Terapkan pendekatan pembelajaran terdistribusi yang menjaga lokalitas dan privasi data.

Respons Insiden untuk Sistem AI

  • Prosedur Insiden Spesifik AI: Kembangkan prosedur respons insiden yang disesuaikan dengan ancaman spesifik AI dan MCP.
  • Respons Otomatis: Terapkan penanganan dan remediasi otomatis untuk insiden keamanan AI umum.
  • Kemampuan Forensik: Pertahankan kesiapan forensik untuk kompromi sistem AI dan pelanggaran data.
  • Prosedur Pemulihan: Tetapkan prosedur untuk pemulihan dari peracunan model AI, serangan injeksi prompt, dan kompromi layanan.

Sumber Daya & Standar Implementasi

Dokumentasi Resmi MCP

Solusi Keamanan Microsoft

Standar & Kerangka Keamanan

Panduan & Tutorial Implementasi

Sumber Daya Keamanan Lanjutan

Kepatuhan & Tata Kelola

DevSecOps & Otomasi

Pemantauan & Respons Insiden

🔄 Peningkatan Berkelanjutan

Tetap Terkini dengan Standar yang Berkembang

  • Pembaruan Spesifikasi MCP: Pantau perubahan spesifikasi resmi MCP dan pemberitahuan keamanan.
  • Intelijen Ancaman: Berlangganan feed ancaman keamanan AI dan basis data kerentanan.
  • Keterlibatan Komunitas: Berpartisipasi dalam diskusi komunitas keamanan MCP dan kelompok kerja.
  • Penilaian Rutin: Lakukan penilaian postur keamanan triwulanan dan perbarui praktik sesuai kebutuhan.

Berkontribusi pada Keamanan MCP

  • Riset Keamanan: Berkontribusi pada riset keamanan MCP dan program pengungkapan kerentanan.
  • Berbagi Praktik Terbaik: Bagikan implementasi keamanan dan pelajaran yang didapat dengan komunitas.
  • Pengembangan Standar: Berpartisipasi dalam pengembangan spesifikasi MCP dan pembuatan standar keamanan.
  • Pengembangan Alat: Mengembangkan dan membagikan alat serta pustaka keamanan untuk ekosistem MCP

Dokumen ini mencerminkan praktik terbaik keamanan MCP per 18 Agustus 2025, berdasarkan Spesifikasi MCP 2025-06-18. Praktik keamanan harus secara rutin ditinjau dan diperbarui seiring dengan perkembangan protokol dan lanskap ancaman.

Penafian:
Dokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI Co-op Translator. Meskipun kami berupaya untuk memberikan hasil yang akurat, harap diperhatikan bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang berwenang. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan manusia profesional. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.