Yapay zeka araçlarının hızla yaygınlaşmasıyla birlikte, bunların güvenliğini sağlamak hayati önem taşıyor. Bu güvenlik kontrol listesi, geliştiricilerin, büyük dil modellerini (LLM’ler) harici araçlara ve veri kaynaklarına bağlamada kritik bir köprü haline gelen Model Bağlam Protokolü (MCP) ile ilgili potansiyel riskleri belirlemesine ve azaltmasına yardımcı olmayı amaçlamaktadır.
Arka Plan
Bu güvenlik kontrol listesi, blok zinciri ve yapay zeka ekosistemlerinin güvenliğini artırmayı amaçlayan @SlowMist_Team tarafından yazılmış ve sürdürülmektedir. Bu listeye değerli katkılarından dolayı FENZ.AI’ye teşekkür ederiz.
Genel Bakış
2024’ün sonlarında yayınlanmasından bu yana MCP, Claude Desktop, Cursor gibi ana yapay zeka uygulamalarında yaygın olarak kullanılmıştır. Ancak MCP’nin hızlı bir şekilde benimsenmesi, yeni güvenlik zorluklarını da beraberinde getirmiştir. Mevcut MCP mimarisi, Host (yerel olarak çalışan AI uygulama ortamı), Client (Sunucu ile iletişim ve araç çağrıları için sorumlu bileşen) ve Sunucu (MCP eklentisine karşılık gelen sunucu tarafı) olmak üzere üç bölümden oluşur. Kullanıcılar Host aracılığıyla AI ile etkileşim kurar, İstemci kullanıcı isteklerini ayrıştırır ve araç çağrılarını veya kaynak erişimini yürütmek için MCP Sunucusuna iletir. Çoklu örnekli, çok bileşenli işbirliği senaryolarında, bu mimari, özellikle kripto para birimi işlemleri veya LLM özel eklenti adaptasyonu gibi hassas senaryolarda bir dizi güvenlik riski oluşturur ve yönetmek için uygun güvenlik önlemleri gerektirir.
Bu nedenle, kapsamlı bir MCP güvenlik kontrol listesi oluşturmak ve takip etmek çok önemlidir. Bu kontrol listesi, kullanıcı etkileşim arayüzleri, istemci bileşenleri, hizmet eklentileri, çoklu MCP işbirliği mekanizmaları ve kripto para birimi senaryoları gibi belirli alanlardaki güvenlik ana noktalarını kapsar ve geliştiricilerin potansiyel riskleri sistematik olarak belirlemesine ve zamanında önlemesine yardımcı olmayı amaçlar. Bu güvenlik önlemlerinin uygulanmasıyla, MCP sisteminin genel kararlılığı ve kontrol edilebilirliği etkili bir şekilde artırılabilir ve AI uygulamalarının hızlı gelişimiyle aynı anda güvenliğinin de garanti altına alınması sağlanabilir.
Nasıl Kullanılır
Bu kontrol listesi, MCP projelerinin denetiminde karşılaşılan olası risk noktalarına dayanmaktadır ve geliştiricilerin MCP uygulamalarının güvenliğini sağlamasına yardımcı olmayı amaçlamaktadır. Öğelerin önemini belirtmek için 3 öncelik düzeyi kullanıyoruz:
- 🟢️ Belirli durumlarda atlanabilen, ancak önerilen öğeleri gösterir.
- 🔶 Şiddetle tavsiye edilen öğeleri gösterir, ancak özel durumlarda atlanabilir, atlanması güvenliği olumsuz etkileyebilir.
- 🟥️ Hiçbir koşulda atlanmaması gereken öğeleri gösterir, bu öğelerin kaldırılması sistem arızalarına veya güvenlik açıklarına neden olabilir.
MCP Sunucusu (MCP Eklentisi) Güvenliği
MCP hizmeti, AI tarafından çağrılmak üzere araçlar, kaynaklar ve işlevler sağlayan harici bir hizmettir. Genellikle kaynaklar, araçlar ve istemler içerir. MCP sunucusunun güvenliğini sağlamak için dikkat edilmesi gerekenler şunlardır:
API Güvenliği
- Giriş Doğrulaması: 🟥️ Enjeksiyon saldırılarını ve yasa dışı parametreleri önlemek için tüm API girişlerini sıkı bir şekilde doğrulayın. Bu, veri türlerini, uzunluklarını ve biçimlerini doğrulamayı ve girişleri temizlemeyi ve kaçırmayı içerir.
- API Hız Sınırlaması: 🔶 Kötüye kullanımı ve saldırıları önlemek için API çağrı hızı sınırlamaları uygulayın. Bu, kötü niyetli kullanıcıların çok sayıda istek göndererek sunucuyu çökertmesini önleyebilir.
- Çıktı Kodlaması: 🔶 Çapraz site komut dosyası (XSS) saldırılarını önlemek için API çıktılarını doğru şekilde kodlayın. Bu, HTML, JavaScript ve URL’ler gibi çıktıları kodlamayı içerir.
Sunucu Kimlik Doğrulaması ve Yetkilendirme
- Erişim Kontrolü: 🟥️ Kaynak erişimini kısıtlamak ve minimum ayrıcalık ilkesini uygulamak için rol tabanlı erişim kontrolü uygulayın. Yalnızca yetkili kullanıcılar belirli kaynaklara erişebilir.
- Kimlik Bilgisi Yönetimi: 🟥️ Hizmet kimlik bilgilerini güvenli bir şekilde yönetin ve saklayın, sabit kodlamadan kaçının, anahtar yönetim hizmetleri kullanın. Bu, kimlik bilgilerini depolamak için şifreleme kullanmayı ve kimlik bilgilerini düzenli olarak döndürmeyi içerir.
- Harici Hizmet Kimlik Doğrulaması: 🟥️ Üçüncü taraf hizmetlerine kimlik doğrulaması yapmak için güvenli yöntemler kullanın. Bu, OAuth 2.0 veya SAML gibi güvenli protokoller kullanmayı içerir.
- Minimum Ayrıcalık: 🔶 Hizmet işlemleri, potansiyel saldırı yüzeyini ve ayrıcalık yükseltme riskini azaltmak için gerekli minimum ayrıcalıklarla çalışır. Bu, hizmetin yalnızca işlevini yerine getirmek için gereken ayrıcalıklara sahip olması gerektiği anlamına gelir.
- API Anahtarı Döndürme: 🔶 API anahtarlarını ve hizmet kimlik bilgilerini düzenli olarak otomatik olarak döndürün ve anahtar geçerlilik süresini sınırlayın. Bu, anahtar sızıntısı riskini azaltabilir.
- Hizmet Kimlik Doğrulaması: 🔶 İstemcilerin hizmet kimliğini doğrulamasını ve güvenli bir şekilde kullanmasını kolaylaştırmak için araç hizmet kimliğini doğrulama mekanizması sağlayın. Bu, istemcilerin güvenilir bir hizmetle iletişim kurduklarını doğrulamasına yardımcı olabilir.
Arka Plan Kalıcılık Kontrolü
- Yaşam Döngüsü Yönetimi: 🟥️ Sıkı MCP eklenti yaşam döngüsü yönetimi uygulayın ve istemciyle senkronize edin. Eklentiler, artık ihtiyaç duyulmadığında düzgün bir şekilde başlatılmalı ve durdurulmalıdır.
- Kapatma Temizliği: 🟥️ İstemci kapatıldığında tüm MCP arka plan işlemlerini zorunlu olarak temizleyin. Bu, kötü amaçlı eklentilerin istemci kapatıldıktan sonra çalışmaya devam etmesini önleyebilir.
- Sağlık Kontrol Mekanizması: 🔶 Anormal kalıcılığı belirlemek için MCP eklenti durumunu düzenli olarak kontrol edin. Bu, düzgün çalışmayan eklentileri belirlemeye yardımcı olabilir.
- Arka Plan Etkinlik İzleme: 🔶 Tüm MCP arka plan etkinliklerini izleyin ve kaydedin. Bu, kötü amaçlı etkinliği belirlemeye yardımcı olabilir.
- Etkinlik Sınırlaması: 🔶 MCP eklentilerinin arka planda gerçekleştirebileceği işlem türlerini ve sürelerini sınırlayın. Bu, kötü amaçlı eklentilerin neden olduğu hasarı azaltabilir.
Dağıtım ve Çalışma Zamanı Güvenliği
- Yalıtılmış Ortam: 🟥️ Hizmetler, kaçışı önlemek ve doğu-batı yönlü hareket saldırılarını önlemek için yalıtılmış bir ortamda (kapsayıcı, VM, sanal alan) çalışır. Bu, kötü amaçlı hizmetlerin diğer hizmetleri veya sistemleri etkilemesini önleyebilir.
- Kapsayıcı Güvenliği: 🟥️ Güçlendirilmiş kapsayıcı güvenlik yapılandırması kullanın ve kök olmayan bir kullanıcıyla çalıştırın, değişmez altyapı uygulayın, çalışma zamanı koruması. Bu, kapsayıcıların güvenliğini artırabilir.
- Güvenli Başlatma: 🔶 Hizmet başlatma işleminin bütünlüğünü doğrulayın, güvenli bir başlatma zinciri ve bütünlük kontrolü uygulayın. Bu, kötü amaçlı hizmetlerin başlatma sırasında enjekte edilmesini önleyebilir.
- Ortam Değişkeni Güvenliği: 🔶 Hassas ortam değişkenleri korunur ve günlüklere sızdırılmaz. Bu, kötü amaçlı kullanıcıların hassas bilgilere erişmesini önleyebilir.
- Kaynak Sınırlaması: 🔶 Büyük modellerin hata durumunda çok sayıda döngüsel tekrarlanan çağrısını önlemek için kaynak kullanım sınırlamaları uygulayın. Bu, kötü amaçlı hizmetlerin sistem kaynaklarını tüketmesini önleyebilir.
Kod ve Veri Bütünlüğü
- Bütünlük Doğrulama Mekanizması: 🟥️ Kodun değiştirilmediğinden emin olmak için dijital imzalar, karma denetimi gibi mekanizmalar kullanın. Bu, kötü amaçlı kullanıcıların kodu değiştirmesini önleyebilir.
- Uzaktan Doğrulama: 🔶 Kod bütünlüğünü uzaktan doğrulayan bir mekanizma desteği. Bu, uzak kullanıcıların kodun değiştirilip değiştirilmediğini doğrulamasını sağlar.
- Kod Karıştırma ve Sağlamlaştırma: 🟢️ Tersine mühendislik zorluğunu artırmak için kod karıştırma ve sağlamlaştırma teknikleri uygulayın. Bu, kötü amaçlı kullanıcıların kodu anlamasını ve değiştirmesini zorlaştırabilir.
Tedarik Zinciri Güvenliği
- Bağımlılık Yönetimi: 🟥️ Üçüncü taraf bağımlılıklarını güvenli bir şekilde yönetin. Bu, bağımlılıkları izlemeyi, güncel olduklarından emin olmayı ve güvenlik açıkları için taramayı içerir.
- Paket Bütünlüğü: 🟥️ Paketlerin bütünlüğünü ve gerçekliğini doğrulayın. Bu, kötü amaçlı kullanıcıların kötü amaçlı paketler enjekte etmesini önleyebilir.
- Kaynak Doğrulaması: 🔶 Tüm kodun ve bağımlılıkların kaynağını doğrulayın. Bu, kodun güvenilir bir kaynaktan geldiğinden emin olmaya yardımcı olabilir.
- Oluşturma Güvenliği: 🔶 Oluşturma işleminin güvenli olduğundan emin olun. Bu, güvenli oluşturma araçları kullanmayı ve oluşturma ortamının güvenli olduğundan emin olmayı içerir.
İzleme ve Günlük Kaydı
- Anormallik Tespiti: 🟥️ Anormal etkinlik kalıplarını tespit edin ve raporlayın. Bu, kötü amaçlı etkinliği belirlemeye yardımcı olabilir.
- Ayrıntılı Günlük Kaydı: 🟥️ Tüm hizmet etkinliklerini ve güvenlik olaylarını kaydedin. Bu, güvenlik olaylarını araştırmaya yardımcı olabilir.
- Güvenlik Olayı Uyarısı: 🟥️ Kritik güvenlik olayları için gerçek zamanlı uyarılar yapılandırın. Bu, güvenlik olaylarına zamanında yanıt vermeye yardımcı olabilir.
- Merkezi Günlük Yönetimi: 🔶 Günlükleri merkezi olarak toplayın ve analiz edin. Bu, güvenlik olaylarına daha kapsamlı bir bakış sağlayabilir.
- Günlük Bütünlüğü: 🔶 Günlük bütünlüğünü sağlayın, tahrifatı önleyin. Bu, kötü amaçlı kullanıcıların günlükleri silmesini veya değiştirmesini önleyebilir.
- Denetim Yeteneği: 🔶 Ayrıntılı denetim ve olay araştırmasını destekleyin. Bu, güvenlik olaylarının nedenini belirlemeye yardımcı olabilir.
Çağrı Ortamı Yalıtımı
- MCP’ler Arası Yalıtım: 🟥️ Birden çok MCP hizmeti arasındaki işlemlerin yalıtımını sağlayın. Bu, kötü amaçlı MCP hizmetlerinin diğer MCP hizmetlerini etkilemesini önleyebilir.
- Kaynak Erişim Kontrolü: 🟥️ Her MCP hizmeti için net kaynak erişim hakları sınırları atayın. Bu, kötü amaçlı MCP hizmetlerinin erişebileceği kaynakları sınırlayabilir.
- Araç İzinleri Ayrımı: 🔶 Farklı alanlardaki araçlar farklı izin kümeleri kullanır. Bu, kötü amaçlı araçların neden olduğu hasarı azaltabilir.
Platform Uyumluluğu ve Güvenliği
- Sistem Kaynak Yalıtımı: 🟥️ Farklı işletim sistemi özelliklerine göre uygun kaynak yalıtım stratejileri uygulayın. Bu, kötü amaçlı hizmetlerin diğer hizmetleri veya sistemleri etkilemesini önleyebilir.
- Çapraz Platform Uyumluluk Testi: 🔶 MCP hizmetlerinin farklı işletim sistemlerinde ve istemcilerde güvenlik davranışının tutarlılığını test edin. Bu, hizmetin tüm platformlarda güvenli olmasını sağlar.
- Platforma Özel Risk Değerlendirmesi: 🔶 Belirli platformların benzersiz güvenlik risklerini ve azaltma önlemlerini değerlendirin. Bu, platforma özel güvenlik risklerini belirlemeye ve azaltmaya yardımcı olabilir.
- İstemci Farklılıkları İşleme: 🔶 Güvenlik kontrollerinin çeşitli istemci uygulamalarındaki farklılıklara uyum sağlayabildiğinden emin olun. Bu, hizmetin tüm istemcilerle güvenli olmasını sağlar.
Veri Güvenliği ve Gizliliği
- Veri Minimizasyonu: 🟥️ Yalnızca gerekli verileri toplayın ve işleyin. Bu, veri ihlali riskini azaltabilir.
- Veri Şifreleme: 🟥️ Hassas veriler depolamada ve aktarımda şifrelenir. Bu, kötü amaçlı kullanıcıların hassas bilgilere erişmesini önleyebilir.
- Veri Yalıtımı: 🟥️ Farklı kullanıcıların verileri etkili bir şekilde yalıtılır. Bu, kötü amaçlı kullanıcıların diğer kullanıcıların verilerine erişmesini önleyebilir.
- Veri Erişim Kontrolü: 🟥️ Sıkı veri erişim kontrolü uygulayın. Bu, verilere erişimi kısıtlayabilir.
- Hassas Veri Tanımlama: 🟥️ Hassas verileri otomatik olarak tanımlayın ve özel olarak işleyin. Bu, hassas verilerin ihlal edilmesini önlemeye yardımcı olabilir.
Kaynak Güvenliği
- Kaynak Erişim Kontrolü: 🟥️ Ayrıntılı kaynak erişim kontrolü uygulayın. Bu, belirli kaynaklara erişimi kısıtlayabilir.
- Kaynak Sınırlaması: 🔶 Tek bir kaynağın boyutunu ve miktarını sınırlayın. Bu, kötü amaçlı kullanıcıların sistem kaynaklarını tüketmesini önleyebilir.
- Kaynak Şablonu Güvenliği: 🔶 Kaynak şablonu parametrelerinin doğrulandığından ve temizlendiğinden emin olun. Bu, kötü amaçlı kullanıcıların kötü amaçlı kod enjekte etmesini önleyebilir.
- Hassas Kaynak Etiketleme: 🔶 Hassas kaynakları etiketleyin ve özel olarak işleyin. Bu, hassas kaynakların ihlal edilmesini önlemeye yardımcı olabilir.
Araç Uygulama Güvenliği
- Güvenli Kodlama Uygulamaları: 🟥️ Güvenli kodlama standartlarına ve en iyi uygulamalara uyun. Bu, koddaki güvenlik açığı sayısını azaltabilir.
- Araç Yalıtımı: 🟥️ Araç yürütme, sistem düzeyinde etkiyi önlemek için kontrollü bir ortamda gerçekleşir. Bu, kötü amaçlı araçların diğer hizmetleri veya sistemleri etkilemesini önleyebilir.
- Giriş Doğrulaması: 🟥️ İstemciden gelen tüm girişleri sıkı bir şekilde doğrulayın. Bu, kötü amaçlı kullanıcıların kötü amaçlı kod enjekte etmesini önleyebilir.
- Araç İzinleri Kontrolü: 🟥️ Her araç, görevi tamamlamak için gereken minimum izinlere sahiptir. Bu, kötü amaçlı araçların neden olduğu hasarı azaltabilir.
- Veri Doğrulaması: 🟥️ Araç tarafından işlenen verileri doğrulayın, enjeksiyonu ve tahrifatı önleyin. Bu, kötü amaçlı kullanıcıların kötü amaçlı veri enjekte etmesini önleyebilir.
- Araç Davranışı Kısıtlaması: 🟥️ Araçların gerçekleştirebileceği işlemlerin kapsamını ve türünü sınırlayın. Bu, kötü amaçlı araçların neden olduğu hasarı azaltabilir.
- Üçüncü Taraf Arayüzü Dönüş Bilgileri Güvenliği: 🟥️ Arayüzün dönüş bilgilerinin beklentileri karşılayıp karşılamadığını doğrulayın, dönüş bilgilerini doğrudan bağlama eklemeyin. Bu, kötü amaçlı araçların üçüncü taraf arayüzlerini kullanmasını önleyebilir.
- Hata İşleme: 🔶 Hataları güvenli bir şekilde işleyin, hassas bilgileri ifşa etmeyin. Bu, kötü amaçlı kullanıcıların hata bilgilerini kullanmasını önleyebilir.
- Ad Alanı Yalıtımı: 🔶 Farklı araçlar için sıkı ad alanı yalıtımı uygulayın. Bu, araçlar arasındaki çakışmaları önleyebilir.
MCP İstemcisi/ MCP Ana Makine Güvenliği
Ana makine, AI uygulamalarını ve MCP istemcisini çalıştıran ortamdır ve son kullanıcıların AI sistemiyle etkileşim kurduğu giriş noktasıdır. İstemci, AI uygulamasının içindeki, MCP hizmetiyle iletişim kurmaktan, bağlamı, araç çağrılarını ve sonuç gösterimini işlemeye kadar sorumlu bir bileşendir. MCP istemcisini ve ana makineyi korumak için dikkat edilmesi gerekenler şunlardır:
Kullanıcı Etkileşimi Güvenliği
- Kullanıcı Arayüzü Güvenliği: 🟥️ Kullanıcı arayüzü, AI işlemlerinin izin kapsamını ve potansiyel etkilerini açıkça gösterir ve sezgisel güvenlik göstergeleri sağlar. Bu, kullanıcıların AI’ye verdikleri izinleri anlamalarına yardımcı olabilir.
- Hassas İşlem Onayı: 🟥️ Yüksek riskli işlemler (dosya silme, para transferi gibi) açık kullanıcı onayı gerektirir. Bu, kullanıcıların yanlışlıkla yüksek riskli işlemler gerçekleştirmesini önleyebilir.
- İzin İstekleri Şeffaflığı: 🟥️ İzin istekleri, amacını ve kapsamını açıkça belirtir, kullanıcıların bilinçli kararlar vermesine ve aşırı yetkilendirmeden kaçınmasına yardımcı olur. Bu, kullanıcıların AI’ye verdikleri izinleri anlamalarına yardımcı olabilir.
- İşlem Görselleştirmesi: 🔶 Araç çağrıları ve veri erişimi, kullanıcılar tarafından görülebilir ve denetlenebilir, ayrıntılı işlem günlükleri sağlar. Bu, kullanıcıların AI’nin gerçekleştirdiği işlemleri anlamalarına yardımcı olabilir.
- Bilgi Şeffaflığı: 🔶 Araçlar, kullanıcıların gizli etiketleri varsayılan olarak görüntüleyip görüntülememesine izin vermeli, kullanıcıların gördüğü bağlamın gerçekte oluşturulan ve çağrılan bağlamla eksiksiz ve tutarlı olmasını sağlamalı ve gizli etiketlerde kötü amaçlı mantığın bulunmasını önlemelidir.
- Durum Geri Bildirimi: 🔶 Kullanıcı, mevcut yürütülen MCP işlemlerini net bir şekilde anlayabilir.
AI Kontrolü ve İzleme
- İşlem Kaydı: 🟥️ Tüm önemli AI işlemlerini ve sonuçlarını kaydedin. Bu, güvenlik olaylarını araştırmaya yardımcı olabilir.
- Anormallik Tespiti: 🔶 Anormal araç çağrı kalıplarını veya istek dizilerini tespit edin. Bu, kötü amaçlı etkinliği belirlemeye yardımcı olabilir.
- Araç Çağrı Sınırlaması: 🔶 Araç çağrı sıklığı ve sayısı sınırlamaları uygulayın. Bu, kötü amaçlı kullanıcıların araçları kötüye kullanmasını önleyebilir.
Yerel Depolama Güvenliği
- Kimlik Bilgisi Güvenli Depolama: 🟥️ Yetkisiz erişimi önlemek için kimlik doğrulama kimlik bilgilerini korumak için sistem anahtar zincirini veya özel şifrelenmiş depolamayı kullanarak önemli kimlik bilgilerini güvenli bir şekilde depolayın. Bu, kötü amaçlı kullanıcıların kimlik bilgilerine erişmesini önleyebilir.
- Hassas Veri Yalıtımı: 🔶 Hassas kullanıcı verilerini normal verilerden ayrı olarak depolamak ve işlemek için veri yalıtım mekanizması uygulayın. Bu, kötü amaçlı kullanıcıların hassas verilere erişmesini önleyebilir.
Uygulama Güvenliği
- Uygulama Bütünlüğü: 🟥️ Değişiklikleri önlemek için uygulama ve MCP eklentisinin bütünlüğünü doğrulayın. Bu, kötü amaçlı kullanıcıların uygulamayı değiştirmesini önleyebilir.
- Güncelleme Doğrulaması: 🔶 Ana makine uygulama güncellemeleri dijital imza doğrulamasından geçer. Bu, güncellemenin güvenilir bir kaynaktan geldiğinden emin olabilir.
- Uygulama Sanal Alanı: 🟢️ Sistem erişimini sınırlamak için uygulamayı sanal alan ortamında çalıştırmayı deneyin. Bu, kötü amaçlı uygulamaların neden olduğu hasarı azaltabilir.
İstemci Kimlik Doğrulaması ve Yetkilendirme
- Zorunlu Kimlik Doğrulaması: 🟥️ Herhangi bir önemli MCP hizmetiyle iletişim kurmadan önce anonim erişimi önlemek için kimlik doğrulamasını zorunlu kılın. Bu, yetkisiz kullanıcıların hizmete erişmesini önleyebilir.
- OAuth Uygulaması: 🔶 En iyi uygulamaları ve güvenlik standartlarını izleyerek OAuth 2.1 veya daha yüksek bir sürüm sürecini doğru bir şekilde uygulayın. Bu, kimlik doğrulamasının güvenli olmasını sağlar.
- Durum Parametresi: 🔶 Bazı Web istemcileri için CSRF saldırılarını önlemek için durum parametresi uygulayın, her istek için benzersiz bir rastgele değer kullanın. Bu, çapraz site istek sahteciliği (CSRF) saldırılarını önleyebilir.
MCP Araçları ve Sunucu Yönetimi
- MCP Aracı Doğrulaması: 🟥️ Kayıtlı araçların gerçekliğini ve bütünlüğünü doğrulayın. Bu, kötü amaçlı araçların kaydedilmesini önleyebilir.
- Güvenlik Güncellemeleri: 🟥️ MCP istemcisi, düzenli olarak güvenlik güncellemelerini kontrol eder ve uygular, güncellenmiş araçların kötü amaçlı açıklamalar içerip içermediğini doğrular. Bu, araçların güncel olmasını ve kötü amaçlı kod içermemesini sağlar.
- Fonksiyon Adı Doğrulaması: 🟥️ Kayıtlı araçlardan önce ad çakışmalarını ve potansiyel kötü amaçlı geçersiz kılmayı kontrol edin. Bu, kötü amaçlı araçların mevcut araçları geçersiz kılmasını önleyebilir.
- Kötü Amaçlı MCP Tespiti: 🟥️ Potansiyel kötü amaçlı MCP’lerin davranış kalıplarını izleyin ve tanımlayın. Bu, kötü amaçlı MCP’leri belirlemeye yardımcı olabilir.
- MCP Aracı Adlandırma Kontrolü: 🔶 Ad çakışmalarını önlemek için ad alanını veya benzersiz bir tanımlayıcıyı benimseyin. Bu, araçlar arasındaki çakışmaları önleyebilir.
- Hizmet Dizini: 🔶 Güvenilir MCP hizmetlerinin ve araçlarının yetkili bir dizinini tutun. Bu, kullanıcıların güvenilir hizmetler bulmasına yardımcı olabilir.
- Çakışma Çözümü: 🔶 Aynı ada sahip araç çakışmalarını çözmek için net kurallar vardır.
- Alan Yalıtımı: 🔶 Farklı alanlardaki araçlar birbirinden yalıtılır ve çapraz etkiyi önler.
- Öncelik Mekanizması: 🔶 Kötü amaçlı geçersiz kılmayı önlemek için net fonksiyon önceliği kuralları oluşturun.
- Sürüm Kontrolü: 🔶 Fonksiyonlar ve araçlar için sürüm kontrolü uygulayın ve değişiklikleri tespit edin.
- Araç Kaydı ve İptal Mekanizması: 🔶 Miras kalan araçların güvenlik risklerini önlemek için araç kaydı ve iptal sürecini açıklığa kavuşturun.
- Çakışma Tespiti Mekanizması: 🔶 Çoklu MCP ortamlarında fonksiyon ve kaynak çakışmalarını tespit edin ve çözün.
- Araç Sınıflandırması: 🟢️ Araçları hassasiyet ve risk seviyelerine göre sınıflandırın.
İstem Güvenliği
- İstem Enjeksiyonu Savunması: 🟥️ Kritik yürütmeler için manuel doğrulama dahil olmak üzere, istem enjeksiyonu saldırılarını önlemek için çok katmanlı savunma önlemleri uygulayın.
- Kötü Amaçlı Talimat Tespiti: 🟥️ Sistem manipülasyonunu önlemek için potansiyel kötü amaçlı kullanıcı talimatlarını tespit etmek ve engellemek için bir mekanizma oluşturun, örneğin yerel başlatma sırasında önceden yüklenmiş kötü amaçlı talimatları ve üçüncü taraf MCP sunucularından gelen kötü amaçlı araçların gizli zararlı talimatları içerip içermediğini tespit edip engelleyin.
- Sistem İstem Koruması: 🟥️ Sistem istemi ve kullanıcı girişi, tahrifatı önlemek için açıkça ayrılmıştır.
- Hassas Veri Filtreleme: 🟥️ İstemlerden ve bağlamdan hassas kişisel verileri filtreleyin.
- Bağlam Yalıtımı: 🔶 Farklı kaynaklardan gelen bağlam içeriğinin birbirine yalıtıldığından emin olun, bağlam kirlenmesini ve bilgi sızıntısını önleyin.
- İstem Şablonu: 🔶 Enjeksiyon riskini azaltmak için güvenli istem şablonu kullanın.
- Araç Açıklaması Doğrulaması: 🔶 Araç açıklamasındaki potansiyel kötü amaçlı talimatları kontrol edin.
- İstem Tutarlılığı Doğrulaması: 🔶 Aynı istemin farklı ortamlarda tahmin edilebilir tutarlı sonuçlar üretmesini sağlayın.
- Geçmiş Bağlam Yönetimi: 🔶 Eski verilerin birikmesinin neden olduğu bilgi sızıntısı riskini önlemek için geçmiş bağlamın güvenli temizleme mekanizmasını açıklığa kavuşturun.
Günlükler ve Denetim
- İstemci Günlük Kaydı: 🟥️ MCP hizmetiyle tüm etkileşimleri, araç çağrılarını ve yetkilendirme etkinliklerini kaydedin.
- Güvenlik Olayı Kaydı: 🟥️ Yetkilendirme başarısızlıkları da dahil olmak üzere tüm güvenlik ile ilgili olayları kaydedin.
- Anormallik Uyarısı: 🔶 Anormal etkinlik kalıplarını tespit edin ve uyarın.
Sunucu Doğrulaması ve İletişim Güvenliği
- Sunucu Kimlik Doğrulaması: 🟥️ Kötü amaçlı sunuculara bağlanmayı önlemek için MCP sunucu kimliğini doğrulayın, sertifika sabitlemesini uygulayın.
- Sertifika Doğrulaması: 🟥️ Uzak sunucular için TLS sertifikalarını sıkı bir şekilde doğrulayın, ortadaki adam saldırılarını önleyin, sertifika zinciri bütünlüğünü kontrol edin.
- İletişim Şifrelemesi: 🟥️ Tüm istemci-sunucu iletişimi TLS 1.2+ şifrelemesi kullanır, zayıf şifreleme paketlerini devre dışı bırakır.
- Güvenlik Protokolü Yapılandırması: 🔶 Güvenli TLS parametrelerini yapılandırın, şifreleme algoritmalarını ve protokollerini düzenli olarak denetleyin ve güncelleyin.
İzin Jetonu Depolaması ve Yönetimi
- İzin Kapsamı Sınırlaması: 🟥️ Jetonun izin kapsamını kesinlikle sınırlayın, minimum ayrıcalık ilkesini uygulayın.
Otomatik Onay Kontrolü
- Otomatik Onay Sınırlaması: 🟥️ Otomatik olarak onaylanabilecek araçların ve işlemlerin kapsamını sıkı bir şekilde kontrol edin.
- Beyaz Liste Yönetimi: 🔶 Otomatik olarak onaylanabilecek araçların beyaz liste mekanizmasını açıkça tanımlayın.
- Dinamik Risk Değerlendirmesi: 🔶 Bağlama göre otomatik onay stratejisini dinamik olarak ayarlayın.
- Onay Süreci Denetimi: 🔶 Tüm otomatik onay kararlarını kaydedin ve denetleyin.
Örnekleme Güvenliği
- Bağlam İçerme Kontrolü: 🟥️ Örnekleme isteklerinde yer alan bağlam kapsamını sıkı bir şekilde kontrol edin.
- Hassas Veri Filtreleme: 🟥️ Örnekleme isteklerinden ve yanıtlarından hassas verileri filtreleyin.
- Örnekleme İsteği Doğrulaması: 🔶 Tüm örnekleme isteği parametrelerini ve içeriğini doğrulayın.
- Kullanıcı Kontrolü: 🔶 Kullanıcıların örnekleme istekleri ve sonuçları üzerinde net kontrole sahip olduğundan emin olun.
- Model Tercihi Güvenliği: 🔶 Model tercihi bilgilerini kötüye kullanımı önlemek için güvenli bir şekilde işleyin.
- Sonuç Doğrulaması: 🔶 Örnekleme sonuçlarının güvenlik standartlarına uygun olup olmadığını doğrulayın.
MCP’nin Farklı LLM’lerde Uyarlanması ve Çağrı Güvenliği
Farklı LLM arka uçlarının MCP’ye çağrı önceliği ve yürütme mantığı farklılık gösterebilir, bu nedenle LLM ile MCP arasındaki kombinasyon güvenliğine dikkat etmek gerekir.
LLM Güvenli Yürütme
- Öncelikli Fonksiyon Yürütme: 🟥️ LLM’nin doğru eklentinin fonksiyonunu öncelikli olarak yürütebildiğinden emin olun.
- Kötü Amaçlı İstem Koruması: 🟥️ LLM, kötü amaçlı senaryolarda enjekte edilen anımsatıcıların gerektirdiği davranışları tanıyabilir ve koruyabilir.
- Güvenli Çağrı: 🟥️ LLM, ilgili MCP fonksiyonlarını doğru ve güvenli bir şekilde çağırabilir.
- Hassas Bilgi Koruması: 🟥️ Hassas bilgilerin sızmasını önleyin.
Çok Modlu Güvenlik
- Çok Modlu İçerik Filtreleme: 🟥️ Çok modlu içerikteki zararlı veya hassas bilgileri filtreleyin (örneğin, resimlerdeki kötü amaçlı istemler).
Çoklu MCP Senaryo Güvenliği
Aynı anda birden fazla MCP sunucusu etkinleştirildiğinde, resmi denetim eksikliği nedeniyle, kullanıcılar kötü amaçlı MCP’ler yükleyebilir ve genel güvenlik için bir tehdit oluşturabilir.
- Çoklu MCP Ortam Güvenliği: 🟥️ Çoklu MCP ortamının genel güvenliğini sağlayın, yüklenen MCP’leri düzenli olarak tarayın ve kontrol edin.
- Fonksiyon Önceliği Gasp Koruması: 🟥️ Fonksiyon önceliğinin kötü amaçlı bir şekilde gasp edilmesini önlemek için olası kötü amaçlı istem ön ayarlarını kontrol edin.
- MCP’ler Arası Fonksiyon Çağrı Kontrolü: 🟥️ Kötü amaçlı MCP’nin diğer MCP’leri çağırmak ve hassas işlemleri yürütmek için kötü amaçlı istemler döndürmesini önlemek için MCP’ler arası fonksiyon çağrılarını güvenli bir şekilde kontrol edin.
Kripto Para Birimi İle İlgili MCP’lerin Özel Güvenlik Noktaları
Kripto para birimi ile ilgili MCP’ler genellikle kripto para birimi cüzdanlarını yönetme özelliğine sahiptir ve yüksek risk taşır.
- Özel Anahtar Koruması: 🟥️ Scrypt gibi özel anahtarların güvenli koruma önlemlerini güçlendirin.
- Cüzdan Oluşturma Güvenliği: 🟥️ Anımsatıcı kelimelerin veya cüzdan oluşturma sürecinin güvenlik garantisi.
- Cüzdan Bilgileri Gizliliği: 🟥️ Cüzdan bilgilerinin gizliliğini koruyun, üçüncü taraf arayüzlere cüzdan bilgileri talep ederken filtrelemeyi iyileştirin.
- Transfer Bilgileri Onayı: 🟥️ Zincir üzerinde veya borsa transfer imzalarının bilgileri eksiksiz bir şekilde görüntülenmeli ve onaylanmalıdır.
- Fon İşlemi Doğrulaması: 🟥️ Önemli fon işlemleri için Google Authenticator gibi ikincil doğrulama gerekir.
- Yerel Model Gizlilik Koruması: 🔶 Üçüncü taraf büyük model satıcılarının cüzdan bilgileriniz gibi hassas bilgilere erişmesini önlemek için yerel büyük bir model kullanın ve gizli verileri koruyun.
- Geleneksel Cüzdan Uyumluluğu: 🔶 Geleneksel cüzdanların güvenli uyumluluğu, örneğin geleneksel cüzdanlarla imza işlemlerini desteklemek gibi.