Cybersicherheit

6 Beste Praktiken für den Aufbau eines sicheren MCP-Servers

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufügen

Seit Anthropic das Model Context Protocol Ende 2024 veröffentlichte, ist die Adoption rasant vorangeschritten, und viele Unternehmen haben ihre eigenen MCP-Server gestartet, um AI-Agenten den Zugriff auf ihre Daten zu ermöglichen.

Während dies für die Erweiterung der Fähigkeiten von AI nützlich ist, setzt es diese Unternehmen auch erheblichen Sicherheitsrisiken aus.

Ohne die richtigen Vorsichtsmaßnahmen könnten MCP-Server blanketten Zugriff auf sensible Daten in E-Mails, CRMs, Dateispeichertools und anderen Anwendungen gewähren. Und selbst wenn aggressive Sicherheitsmaßnahmen ergriffen werden, können böswillige Akteure Taktiken wie Prompt-Injection-Angriffe verwenden, um Authentifizierungsdaten zu erhalten.

Wir sehen bereits, dass Sicherheitsvorfälle auftreten. GitHub hat beispielsweise kürzlich eine MCP-Schwachstelle erlebt, die private Repositorys offenlegte.

Wir haben durch erste Erfahrungen gelernt, was es braucht, um einen MCP-Server aufzubauen, der allen Sicherheitsbedrohungen standhalten kann.

Deshalb sind hier meine Top-Tipps für den Aufbau und die Verwaltung von MCP-Servern.

Sicherheit mit Hard-Blocks und Berechtigungsmanagement gewährleisten

Das wichtigste Sicherheitsprinzip für MCPs ist, dass Hard-Blocks immer Vorrang vor Prompts und anderen weichen Kontrollen haben, die den Agenten gegeben werden. Während AI-Agenten die Flexibilität haben, zu entscheiden, wann sie Tools aufrufen und welche Eingaben sie senden, verhindern die Tool-Implementierungen oder eine hartcodierte Schicht davor letztendlich Berechtigungsprobleme, solange die Benutzeridentität korrekt authentifiziert ist.

Um die Sicherheit zu gewährleisten, sollten Erweiterungen von Anfang an mit strengem Berechtigungsmanagement konfiguriert werden.

Dies beginnt mit der Verwaltung der Berechtigungen, die den API-Schlüsseln erteilt werden. Tools bieten hier einen Vorteil, indem sie statischen Code umschließen und eine kontrollierte Schnittstelle erstellen, die Sicherheitsrichtlinien durchsetzen kann, unabhängig vom Agentenverhalten.

API-Schlüssel wie Passwörter behandeln

Anstatt Schlüssel hart zu codieren, sollten alle Anmeldeinformationen aus Code und Konfigurationsdateien in Umgebungsvariablen oder dedizierte Geheimnis-Manager wie HashiCorp Vault oder AWS Secrets Manager verschoben werden.

Temporäre Anmeldeinformationen bieten eine zusätzliche Sicherheitsebene für extrem sensible Daten und Anwendungsfälle, in denen keine permanenten Verbindungen erforderlich sind. In diesem Fall können Tools wie AWS STS kurzlebige Token generieren, die schnell ablaufen, wodurch das Zeitfenster für potenziellen Missbrauch minimiert wird. Für die meisten Implementierungen kann jedoch eine ordnungsgemäße OAuth-Authentifizierung mit Token-Verlängerung oder gut gesicherte Basis-Authentifizierung diese Bedenken effektiv ansprechen.

Der Schlüssel liegt in der Implementierung pro-Tool-Rollenbasierte Zugriffskontrolle (RBAC) mit integrierten Berechtigungsmanagementsystemen. Jeder MCP-Integration sollte seine eigene fein granulierte Rolle erhalten, die streng auf die erforderlichen Berechtigungen beschränkt ist. Eine Vault-Richtlinie, die nur Lesezugriff auf kv/data/GitHub zulässt, ist unendlich sicherer als ein Root-Token. Das native Identity- und Access-Management-System (IAM) Ihres Cloud-Anbieters kann automatisch den least-privilege-Zugriff durchsetzen.

Sensible Daten mit DLP- und PII-Erkennungssoftware schützen

MCP-Tools können auf große Mengen an sensiblen Daten in Ihrem Unternehmen zugreifen. Ohne angemessene Kontrollen könnten sie unbeabsichtigt Kunden-PII, Finanzdaten oder proprietäre Informationen über Ihr Produkt offenlegen.

Um dies zu verhindern, sollte Data-Loss-Prevention-(DLP)-Software bereitgestellt werden, die MCP-Datenverkehr in Echtzeit überwachen kann. DLP-Regeln sollten konfiguriert werden, um die Übertragung von Kreditkartennummern, Sozialversicherungsnummern, API-Schlüsseln und anderen sensiblen Mustern zu erkennen und zu blockieren, bevor sie Ihre Umgebung verlassen.

Sie sollten auch Tools verwenden, die personenbezogene Informationen in Prompts, Tool-Antworten und Audit-Logs automatisch identifizieren und maskieren können. Und Sie sollten Lösungen in Betracht ziehen, die PII in verschiedenen Formaten erkennen können, einschließlich strukturierter Datenbankfelder, unstrukturierter Texte und Bildinhalte durch fortschrittliche Techniken wie OCR oder NLP.

Abhängigkeiten sichern und verwalten

Das rasante Wachstum des MCP-Ökosystems hat ein Wilder Westen potenziell unvertrauenswürdiger Binärdateien geschaffen. Community-veröffentlichte Server können zurückgeblieben, schlecht gewartet oder einfach aufgegeben werden. Wenn Sie Abhängigkeiten ohne Überprüfung installieren, riskieren Sie, potenziell schädlichen Code auszuführen.

Eine strenge Abhängigkeitsverwaltung mit Integritätsüberprüfung sollte implementiert werden. Digitale Signaturen und Prüfsummen sollten verwendet werden, um sicherzustellen, dass der Code nicht manipuliert wurde. Und Sicherheitsbest-Practices sollten befolgt werden, indem bewährter Autorisierungs-Überprüfungscode wiederverwendet, umfassende Tests geschrieben und automatisierte Tools wie statische Anwendungssicherheitstests (SAST), dynamische Anwendungssicherheitstests (DAST) und Softwarezusammensetzungsanalyse (SCA) eingesetzt werden, um Schwachstellen zu identifizieren, bevor sie ausgenutzt werden können.

Jedes Tool gründlich testen

Direkte Injektionsangriffe setzen schädliche Befehle in Ihre Tool-Aufruf-Prompts ein, aber indirekte Angriffe sind subtiler und potenziell gefährlicher. Angreifer können beispielsweise schädliche Anweisungen in Tool-Beschreibungen oder Metadaten einbetten, die in LLM-Prompts aufgenommen werden.

Alle Tools sollten einen strengen Genehmigungsprozess durchlaufen, bevor sie bereitgestellt werden, der automatisierte Tests mit Überprüfung durch Sicherheitsexperten kombiniert. Eine schichtweise Verteidigung sollte implementiert werden, einschließlich manueller Überprüfung für kritische Operationen, klarer Trennung zwischen System-Prompts und Benutzereingaben sowie automatischer Erkennungssysteme, die potenziell schädliche Anweisungen in Benutzereingaben und Tool-Metadaten erkennen können.

Sicherheitsvorfälle proaktiv überwachen

Über grundlegende Kontrollen hinaus sollten Teams ein umfassendes Sicherheitstoolkit einsetzen, einschließlich der Überwachung von Tool-Aufrufen, Benutzeraktivitätsmustern und ausgehenden URL-Zugriffsmustern, um potenzielle Sicherheitsvorfälle zu erkennen, bevor sie eskalieren.

Durch die Bereitstellung automatisierter Erkennungssysteme können ungewöhnliche Muster im Tool-Einsatz, unerwartete Datenzugriffsversuche oder anomales Netzwerkverkehr erkannt werden, die auf ein kompromittiertes System hinweisen könnten. Darüber hinaus ist es wichtig, konsistente Protokolle zu führen, um die Argumentation und Ausgaben eines Sprachmodells zu überwachen, um unbeabsichtigte Aktionen zu verfolgen.

MCPs optimal nutzen

Die Macht von MCPs liegt in ihrer Fähigkeit, AI-Assistenten in vollständig programmierbare Agenten umzuwandeln. Aber diese Macht erfordert auch gleichzeitig anspruchsvolle Sicherheitskontrollen.

Die Lösungen sind nicht exotisch; sie sind Erweiterungen bewährter Sicherheitspraktiken, die auf dieses neue Architekturmuster angewendet werden. Die Data-Loss-Prevention-Software, PII-Redaktoren und integrierten Berechtigungsmanagementsysteme, die Sie wahrscheinlich bereits verwenden, können angepasst werden, um MCP-Server zu sichern.

Die Organisationen, die diese Schwachstellen jetzt ansprechen, werden das volle Potenzial von MCPs sicher freischalten.

Gil Feig ist der Co-Founder und CTO von Merge, der führenden einheitlichen API-Plattform. Zuvor war Gil Leiter der Abteilung für Ingenieurwesen bei Untapped und arbeitete als Software-Ingenieur bei Wealthfront und LinkedIn. Als Absolvent der Columbia University lebt und arbeitet er in New York City.