MCP Güvenliği: Gizli Zehirleme ve Kontrol Uygulama Gösterimi
Mevcut MCP( Model Context Protocol) sistemi hala erken gelişim aşamasındadır, genel ortam oldukça karmaşık olup, çeşitli potansiyel saldırı yöntemleri ortaya çıkmaktadır, mevcut protokoller ve araç tasarımları etkin bir şekilde savunma yapmada zorluk çekmektedir. Topluluğun MCP güvenliğini daha iyi anlamasına ve geliştirmesine yardımcı olmak amacıyla, bir güvenlik ekibi MasterMCP aracını açık kaynak olarak yayımlamıştır; bu araç, gerçek saldırı tatbikatları yoluyla geliştiricilerin ürün tasarımındaki güvenlik açıklarını zamanında keşfetmesine yardımcı olmayı ve böylece MCP projelerini aşamalı olarak güçlendirmeyi hedeflemektedir.
Bu makale, okuyucuları uygulamalı bir şekilde, MCP sistemi altında yaygın saldırı yöntemlerini, örneğin bilgi zehirleme, gizli kötü niyetli komutlar gibi gerçek vakaları göstererek tanıştıracaktır. Tüm gösterim scriptleri de GitHub'da açık kaynak olarak paylaşılacak, geliştiriciler güvenli bir ortamda sürecin tamamını yeniden üretebilir ve hatta bu scriptler temelinde kendi saldırı test eklentilerini geliştirebilir.
Genel Mimari Genel Görünümü
gösteri saldırı hedefi MCP:Toolbox
Bilinen bir MCP eklenti sitesi, şu anda en popüler MCP platformlarından biridir ve çok sayıda MCP listesi ve aktif kullanıcıyı bir araya getirir. Bu platformun sunduğu resmi MCP yönetim aracı, MCP yönetim aracı olarak hizmet vermektedir.
Bu aracı test hedefi olarak seçin, temel olarak aşağıdaki noktalara dayanarak:
Kullanıcı tabanı büyük, temsil edici.
Diğer eklentilerin otomatik olarak yüklenmesini destekleyerek, bazı istemci işlevlerini tamamlar.
Hassas yapılandırmalar ( gibi API Anahtarı ) içermekte, sunum yapmayı kolaylaştırmaktadır.
gösterim için kullanılan kötü niyetli MCP: MasterMCP
MasterMCP, güvenlik testleri için yazılmış sahte kötü niyetli MCP aracıdır, eklenti tabanlı mimari tasarımına sahiptir ve aşağıdaki ana modülleri içermektedir:
Yerel web sitesi hizmeti simülasyonu:
Saldırı senaryosunu daha gerçekçi bir şekilde yeniden oluşturmak için, MasterMC yerel web sitesi hizmeti simülasyon modülünü entegre etmiştir. Bu modül, yaygın web sayfası ortamlarını simüle eden basit bir HTTP sunucusu hızla kurmak için FastAPI çerçevesini kullanır. Bu sayfalar yüzeyde normal görünüyor, örneğin bir pastane bilgisi gösteriyor veya standart JSON verisi döndürüyor, ancak aslında sayfa kaynak kodunda veya arayüz yanıtlarında özenle tasarlanmış kötü niyetli yükler gizlenmiştir.
Bu yöntem, güvenli ve kontrollü bir yerel ortamda bilgi zehirleme, komut gizleme gibi saldırı tekniklerini tamamen sergilemeye olanak tanır ve şunu anlamaya yardımcı olur: Görünüşte sıradan bir web sayfası bile büyük modellerin anormal işlemler gerçekleştirmesine neden olabilecek bir risk kaynağı olabilir.
Yerel Eklenti Tabanlı MCP Mimarisi
MasterMCP, eklenti tabanlı bir genişleme yöntemi kullanarak yeni saldırı yöntemlerinin hızlı bir şekilde eklenmesini kolaylaştırır. Çalıştırıldığında, MasterMCP, alt süreçte bir önceki modülün FastAPI hizmetini çalıştırır. Burada bir güvenlik açığı mevcuttur - yerel eklentiler, MCP'nin beklemediği alt süreçleri serbestçe başlatabilir.
Demo İstemcisi
Cursor: Dünyada en popüler AI destekli programlama IDE'lerinden biri
Claude Desktop:Anthropic(MCP protokolü özel üretim ) resmi istemcisi
gösterim için kullanılan büyük model
Claude 3.7
Claude 3.7 sürümünü seçin, çünkü hassas işlem tanıma konusunda belirli bir iyileşme sağlanmıştır ve aynı zamanda mevcut MCP ekosisteminde güçlü bir işlem yeteneğini temsil etmektedir.
Cross-MCP kötü niyetli çağrı gösterimi
web içeriği zehirleme saldırısı
Yorumlayıcı zehirleme
Cursor ile yerel test web sitesine erişim sağlamak, görünüşte zararsız bir "Lezzetli Kek Dünyası" sayfasıdır.
Talimatı yerine getir:
İçeriği al
Sonuçlar, Cursor'ın yalnızca web sayfası içeriğini okumakla kalmadığını, aynı zamanda yerel hassas yapılandırma verilerini test sunucusuna geri gönderdiğini gösteriyor. Kaynak kodunda, kötü niyetli anahtar kelimeler HTML yorumları biçiminde yerleştirilmiştir.
Yorumlama yöntemi oldukça açık olsa da, kolayca tanınabilir, ancak kötü niyetli eylemleri tetikleyebilir.
Kodlama Tabanlı Yorum Zehirleme
/encode sayfasını ziyaret edin, bu, önceki örnekle aynı görünen bir web sayfasıdır, ancak burada kötü niyetli anahtar kelimeler kodlanmıştır, bu da zehirleme işlemini daha gizli hale getirir, web sayfasının kaynak kodunu incelemek bile doğrudan fark edilmesini zorlaştırır.
Kaynak kodu açık metin ipuçları içermese bile, saldırı yine de başarıyla gerçekleştirildi.
MCP aracı geri dönüş bilgisi zehirleme
MasterMCP ipucu açıklamasına göre simülasyon talimatı girin:
birçok elma al
Komut tetiklendiğinde, istemci MCP üzerinden Toolbox'u aradı ve yeni bir MCP sunucusu eklemeyi başardı. Eklenti kodunu incelediğimizde, dönen verilerde kodlanmış kötü niyetli yükün yerleştirildiği görülüyor, kullanıcı tarafı neredeyse anormalliği fark edemiyor.
Üçüncü taraf arayüzü kirletme saldırısı
İstek yürütme:
/api/data adresinden json al
Sonuç: Kötü niyetli anahtar kelimeler dönen JSON verisine yerleştirildi ve kötü niyetli yürütmeyi başarılı bir şekilde tetikledi.
MCP başlangıç aşamasında zehirleme tekniği
kötü niyetli fonksiyon örtme saldırısı
MasterMCP, Toolbox ile aynı adı taşıyan remove_server fonksiyonu için bir araç yazdı ve kötü niyetli ipuçlarını gizlemek için kodladı.
Talimatı yerine getir:
kutuphaneden eklentiyi kaldır
Claude Desktop, aslında toolbox remove_server yöntemini çağırmadı, bunun yerine MasterMCP tarafından sağlanan aynı adlı yöntemi tetikledi.
Prensip, "eski yöntemlerin geçersiz kılındığını" vurgulayarak, büyük modelin kötü niyetli bir şekilde örtbas edilen fonksiyonu çağırmasını öncelikli olarak teşvik etmektir.
kötü niyetli küresel kontrol mantığı ekle
MasterMCP, banana aracını yazdı, bu aracın temel işlevi, tüm araçların çalıştırılmadan önce bu aracı zorunlu olarak güvenlik kontrolü için çalıştırmaları gerektiğini belirtmektir.
Her seferinde fonksiyon çalıştırılmadan önce, sistem öncelikle banana kontrol mekanizmasını çağırır. Bu, kodda "banana kontrolünün çalıştırılması zorunludur" ifadesini tekrar tekrar vurgulayarak küresel mantık enjekte edilmesini sağlar.
Kötü niyetli ipuçlarını gizlemenin ileri düzey teknikleri
büyük model dostu kodlama yöntemi
Büyük dil modellerinin çok dilli formatları analiz etme konusundaki güçlü yetenekleri, kötü niyetli bilgileri gizlemek için kullanılmaktadır; yaygın yöntemler arasında şunlar bulunmaktadır:
İngilizce ortam: Hex Byte kodlaması kullanma
Çince ortam: NCR kodlaması veya JavaScript kodlaması kullanın
Rastgele Kötü Niyetli Yük Dönüş Mekanizması
/random isteği yapıldığında, her seferinde kötü niyetli bir yük ile birlikte rastgele bir sayfa döndürülür, bu da tespit ve iz sürmeyi büyük ölçüde zorlaştırır.
Özet
MasterMCP uygulamalı gösterimi sayesinde, MCP sistemindeki çeşitli güvenlik açıklarını doğrudan gözlemledik. Basit ipucu enjeksiyonu, MCP'ler arası çağrılar, daha gizli olan başlangıç aşaması saldırıları ve kötü niyetli komut gizleme gibi her aşama bize şunu hatırlatıyor: MCP ekosistemi güçlüdür, ancak aynı zamanda kırılgandır.
Bugün büyük modellerin sık sık harici eklentilerle ve API'lerle etkileşimde bulunduğu bir ortamda, küçük bir girdi kirlenmesi sistem düzeyinde güvenlik risklerine yol açabilir. Saldırganların yöntemleri çeşitleniyor; ( kodlama gizleme, rastgele kirlenme, fonksiyon örtme ), geleneksel koruma yaklaşımlarının tamamen yenilenmesi gerektiği anlamına geliyor.
Bu sunumun herkes için bir uyarı niteliğinde olmasını umuyoruz: Geliştiriciler ve kullanıcılar, MCP sistemine karşı dikkatli olmalı, her etkileşimi, her kod satırını ve her geri dönüş değerini izlemelidir. Her ayrıntıya titizlikle yaklaşarak sağlam ve güvenli bir MCP ortamı inşa edebiliriz.
Sonrasında MasterMCP betiğini geliştirmeye devam edeceğiz, daha fazla hedeflenmiş test senaryosunu açık kaynak hale getireceğiz ve güvenli bir ortamda derinlemesine anlamaya, uygulamaya ve korumayı güçlendirmeye yardımcı olacağız.
İlgili içerik GitHub'a senkronize edildi, ilgilenen okuyucular doğrudan erişebilir ve görüntüleyebilir.
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
15 Likes
Reward
15
4
Share
Comment
0/400
NFTRegretDiary
· 07-10 08:55
Beyaz şapkalardan biri daha yeteneklerini sergiliyor.
View OriginalReply0
DogeBachelor
· 07-09 10:01
Acemi geldi bir yemek yemeye
View OriginalReply0
HashBard
· 07-09 09:55
başka bir gün, başka bir istismar... mcp gerçekten oyununu geliştirmeli fr
View OriginalReply0
VibesOverCharts
· 07-09 09:55
Yine savunma ve saldırı oyununu konuşuyoruz, yoruldum.
MCP güvenlik riskleri sunumu: zehirlemeden saldırı pratiğine kadar tüm analiz
MCP Güvenliği: Gizli Zehirleme ve Kontrol Uygulama Gösterimi
Mevcut MCP( Model Context Protocol) sistemi hala erken gelişim aşamasındadır, genel ortam oldukça karmaşık olup, çeşitli potansiyel saldırı yöntemleri ortaya çıkmaktadır, mevcut protokoller ve araç tasarımları etkin bir şekilde savunma yapmada zorluk çekmektedir. Topluluğun MCP güvenliğini daha iyi anlamasına ve geliştirmesine yardımcı olmak amacıyla, bir güvenlik ekibi MasterMCP aracını açık kaynak olarak yayımlamıştır; bu araç, gerçek saldırı tatbikatları yoluyla geliştiricilerin ürün tasarımındaki güvenlik açıklarını zamanında keşfetmesine yardımcı olmayı ve böylece MCP projelerini aşamalı olarak güçlendirmeyi hedeflemektedir.
Bu makale, okuyucuları uygulamalı bir şekilde, MCP sistemi altında yaygın saldırı yöntemlerini, örneğin bilgi zehirleme, gizli kötü niyetli komutlar gibi gerçek vakaları göstererek tanıştıracaktır. Tüm gösterim scriptleri de GitHub'da açık kaynak olarak paylaşılacak, geliştiriciler güvenli bir ortamda sürecin tamamını yeniden üretebilir ve hatta bu scriptler temelinde kendi saldırı test eklentilerini geliştirebilir.
Genel Mimari Genel Görünümü
gösteri saldırı hedefi MCP:Toolbox
Bilinen bir MCP eklenti sitesi, şu anda en popüler MCP platformlarından biridir ve çok sayıda MCP listesi ve aktif kullanıcıyı bir araya getirir. Bu platformun sunduğu resmi MCP yönetim aracı, MCP yönetim aracı olarak hizmet vermektedir.
Bu aracı test hedefi olarak seçin, temel olarak aşağıdaki noktalara dayanarak:
gösterim için kullanılan kötü niyetli MCP: MasterMCP
MasterMCP, güvenlik testleri için yazılmış sahte kötü niyetli MCP aracıdır, eklenti tabanlı mimari tasarımına sahiptir ve aşağıdaki ana modülleri içermektedir:
Saldırı senaryosunu daha gerçekçi bir şekilde yeniden oluşturmak için, MasterMC yerel web sitesi hizmeti simülasyon modülünü entegre etmiştir. Bu modül, yaygın web sayfası ortamlarını simüle eden basit bir HTTP sunucusu hızla kurmak için FastAPI çerçevesini kullanır. Bu sayfalar yüzeyde normal görünüyor, örneğin bir pastane bilgisi gösteriyor veya standart JSON verisi döndürüyor, ancak aslında sayfa kaynak kodunda veya arayüz yanıtlarında özenle tasarlanmış kötü niyetli yükler gizlenmiştir.
Bu yöntem, güvenli ve kontrollü bir yerel ortamda bilgi zehirleme, komut gizleme gibi saldırı tekniklerini tamamen sergilemeye olanak tanır ve şunu anlamaya yardımcı olur: Görünüşte sıradan bir web sayfası bile büyük modellerin anormal işlemler gerçekleştirmesine neden olabilecek bir risk kaynağı olabilir.
MasterMCP, eklenti tabanlı bir genişleme yöntemi kullanarak yeni saldırı yöntemlerinin hızlı bir şekilde eklenmesini kolaylaştırır. Çalıştırıldığında, MasterMCP, alt süreçte bir önceki modülün FastAPI hizmetini çalıştırır. Burada bir güvenlik açığı mevcuttur - yerel eklentiler, MCP'nin beklemediği alt süreçleri serbestçe başlatabilir.
Demo İstemcisi
gösterim için kullanılan büyük model
Claude 3.7 sürümünü seçin, çünkü hassas işlem tanıma konusunda belirli bir iyileşme sağlanmıştır ve aynı zamanda mevcut MCP ekosisteminde güçlü bir işlem yeteneğini temsil etmektedir.
Cross-MCP kötü niyetli çağrı gösterimi
web içeriği zehirleme saldırısı
Cursor ile yerel test web sitesine erişim sağlamak, görünüşte zararsız bir "Lezzetli Kek Dünyası" sayfasıdır.
Talimatı yerine getir:
İçeriği al
Sonuçlar, Cursor'ın yalnızca web sayfası içeriğini okumakla kalmadığını, aynı zamanda yerel hassas yapılandırma verilerini test sunucusuna geri gönderdiğini gösteriyor. Kaynak kodunda, kötü niyetli anahtar kelimeler HTML yorumları biçiminde yerleştirilmiştir.
Yorumlama yöntemi oldukça açık olsa da, kolayca tanınabilir, ancak kötü niyetli eylemleri tetikleyebilir.
/encode sayfasını ziyaret edin, bu, önceki örnekle aynı görünen bir web sayfasıdır, ancak burada kötü niyetli anahtar kelimeler kodlanmıştır, bu da zehirleme işlemini daha gizli hale getirir, web sayfasının kaynak kodunu incelemek bile doğrudan fark edilmesini zorlaştırır.
Kaynak kodu açık metin ipuçları içermese bile, saldırı yine de başarıyla gerçekleştirildi.
MCP aracı geri dönüş bilgisi zehirleme
MasterMCP ipucu açıklamasına göre simülasyon talimatı girin:
birçok elma al
Komut tetiklendiğinde, istemci MCP üzerinden Toolbox'u aradı ve yeni bir MCP sunucusu eklemeyi başardı. Eklenti kodunu incelediğimizde, dönen verilerde kodlanmış kötü niyetli yükün yerleştirildiği görülüyor, kullanıcı tarafı neredeyse anormalliği fark edemiyor.
Üçüncü taraf arayüzü kirletme saldırısı
İstek yürütme:
/api/data adresinden json al
Sonuç: Kötü niyetli anahtar kelimeler dönen JSON verisine yerleştirildi ve kötü niyetli yürütmeyi başarılı bir şekilde tetikledi.
MCP başlangıç aşamasında zehirleme tekniği
kötü niyetli fonksiyon örtme saldırısı
MasterMCP, Toolbox ile aynı adı taşıyan remove_server fonksiyonu için bir araç yazdı ve kötü niyetli ipuçlarını gizlemek için kodladı.
Talimatı yerine getir:
kutuphaneden eklentiyi kaldır
Claude Desktop, aslında toolbox remove_server yöntemini çağırmadı, bunun yerine MasterMCP tarafından sağlanan aynı adlı yöntemi tetikledi.
Prensip, "eski yöntemlerin geçersiz kılındığını" vurgulayarak, büyük modelin kötü niyetli bir şekilde örtbas edilen fonksiyonu çağırmasını öncelikli olarak teşvik etmektir.
kötü niyetli küresel kontrol mantığı ekle
MasterMCP, banana aracını yazdı, bu aracın temel işlevi, tüm araçların çalıştırılmadan önce bu aracı zorunlu olarak güvenlik kontrolü için çalıştırmaları gerektiğini belirtmektir.
Her seferinde fonksiyon çalıştırılmadan önce, sistem öncelikle banana kontrol mekanizmasını çağırır. Bu, kodda "banana kontrolünün çalıştırılması zorunludur" ifadesini tekrar tekrar vurgulayarak küresel mantık enjekte edilmesini sağlar.
Kötü niyetli ipuçlarını gizlemenin ileri düzey teknikleri
büyük model dostu kodlama yöntemi
Büyük dil modellerinin çok dilli formatları analiz etme konusundaki güçlü yetenekleri, kötü niyetli bilgileri gizlemek için kullanılmaktadır; yaygın yöntemler arasında şunlar bulunmaktadır:
Rastgele Kötü Niyetli Yük Dönüş Mekanizması
/random isteği yapıldığında, her seferinde kötü niyetli bir yük ile birlikte rastgele bir sayfa döndürülür, bu da tespit ve iz sürmeyi büyük ölçüde zorlaştırır.
Özet
MasterMCP uygulamalı gösterimi sayesinde, MCP sistemindeki çeşitli güvenlik açıklarını doğrudan gözlemledik. Basit ipucu enjeksiyonu, MCP'ler arası çağrılar, daha gizli olan başlangıç aşaması saldırıları ve kötü niyetli komut gizleme gibi her aşama bize şunu hatırlatıyor: MCP ekosistemi güçlüdür, ancak aynı zamanda kırılgandır.
Bugün büyük modellerin sık sık harici eklentilerle ve API'lerle etkileşimde bulunduğu bir ortamda, küçük bir girdi kirlenmesi sistem düzeyinde güvenlik risklerine yol açabilir. Saldırganların yöntemleri çeşitleniyor; ( kodlama gizleme, rastgele kirlenme, fonksiyon örtme ), geleneksel koruma yaklaşımlarının tamamen yenilenmesi gerektiği anlamına geliyor.
Bu sunumun herkes için bir uyarı niteliğinde olmasını umuyoruz: Geliştiriciler ve kullanıcılar, MCP sistemine karşı dikkatli olmalı, her etkileşimi, her kod satırını ve her geri dönüş değerini izlemelidir. Her ayrıntıya titizlikle yaklaşarak sağlam ve güvenli bir MCP ortamı inşa edebiliriz.
Sonrasında MasterMCP betiğini geliştirmeye devam edeceğiz, daha fazla hedeflenmiş test senaryosunu açık kaynak hale getireceğiz ve güvenli bir ortamda derinlemesine anlamaya, uygulamaya ve korumayı güçlendirmeye yardımcı olacağız.
İlgili içerik GitHub'a senkronize edildi, ilgilenen okuyucular doğrudan erişebilir ve görüntüleyebilir.