Zum Hauptinhalt springen

Befehlsmenü

Zu einer Seite springen oder den Katalog durchsuchen

KI-Tools & -Skripte

Sicherheitsprüfung für MCP-Server-Code

Prüfen Sie MCP-Server-Code, bevor Sie ihn veröffentlichen oder installieren: Tool-Argumente in Shell-Befehlen, eval, fest codierte Schlüssel, manipulierte Tool-Beschreibungen, Dateipfade und URLs aus Argumenten, offene HTTP-Transporte, stdout in stdio-Servern und SQL aus Strings.

$5.00

Das bekommst du: 1 Datei · 63.56 KB · ZIP

Kaufoptionen ansehen

Produktbeschreibung

subprocess.getoutput(f"git log {ref}") in einem Tool erlaubt jeder Seite, jedem Issue und jeder Datei, die das Modell liest, Befehle auf Ihrem Rechner auszuführen, und ein versteckter IMPORTANT-Block in einer Tool-Beschreibung kann das Modell anweisen, Ihre SSH-Schlüssel zu lesen und darüber zu schweigen. Dieser Skill findet diese und elf weitere Fehler in MCP-Servern, bevor Sie einen Server veröffentlichen, installieren oder verbinden, und erklärt Ihnen, wie Sie jeden einzelnen beheben.

Ihr Agent führt einen Scanner über den Quellcode des Servers aus: Python mit dem mcp SDK (FastMCP, MCPServer, der Low-Level-Server) oder dem Paket fastmcp sowie TypeScript oder JavaScript mit @modelcontextprotocol/sdk, den Paketen @modelcontextprotocol/server oder fastmcp. Er überspringt Kommentare, unterscheidet Strings von Code, verfolgt Tool-Argumente von den Parametern des Handlers über Variablen bis in Hilfsfunktionen derselben Datei und erkennt die üblichen Schutzmaßnahmen an (Prüfung des Pfad-Stammverzeichnisses, Host-Allowlists, shlex.quote, Schema-Validierung, Bearer-Authentifizierung). Er führt den Server niemals aus, importiert ihn nicht und verbindet sich nicht mit ihm. Er liefert BLOCK, REVIEW oder NOT FLAGGED, jeweils mit Datei, Zeile, Begründung und einem sichereren Vorgehen. Secrets werden nie ausgegeben.

Was geprüft wird

BLOCK (vor der Auslieferung beheben)

  • M01: Tool-Argumente oder andere nicht feste Werte in Shell-Befehlen (subprocess mit der shell-Option, auch unter Import-Aliasen, os.popen und system, getoutput, sh -c-Listen, Node exec/execSync unabhängig von der Importart, spawn mit einer shell-Option); mit shlex.quote behandelte Werte und typisierte int-Parameter sind unbedenklich
  • M02: eval, exec, new Function oder node:vm, ausgeführt auf nicht festen Werten
  • M03: API-Schlüssel, Tokens und Passwörter, die direkt im Server-Code stehen
  • M04: versteckte Anweisungen an das Modell in Tool-, Prompt- und Parameterbeschreibungen oder Server-Anweisungen (IMPORTANT-Tag-Blöcke, Unicode-Tag- oder Bidi-Override-Zeichen, Geheimhaltung gegenüber dem Nutzer kombiniert mit dem Lesen von SSH-Schlüsseln oder mcp.json oder zwei schwächere Anzeichen zusammen); gewöhnliche Hinweise, Platzhalter und nicht englischsprachiger Text werden nicht gemeldet

REVIEW (vor dem Release prüfen)

  • M11: Tool-Argumente, die als Dateipfade verwendet werden, ohne zu prüfen, dass sie in einem erlaubten Ordner bleiben
  • M12: URLs oder Hosts aus Tool-Argumenten, die ohne Allowlist abgerufen werden (SSRF)
  • M13: HTTP-Transporte, die ohne Authentifizierung auf allen Schnittstellen lauschen
  • M14: HTTP-Transporte ohne Host- oder Origin-Prüfung (DNS-Rebinding)
  • M15: print, console.log und andere Ausgaben auf stdout in stdio-Servern
  • M16: Low-Level-Handler für tools/call, die Argumente lesen, die nichts validiert
  • M17: Tools, die dem Modell die Umgebung oder geheime Umgebungsvariablen zurückgeben
  • M18: aus Strings zusammengesetztes SQL mit nicht festen Werten
  • M19: ein einzelnes schwächeres Anzeichen versteckter Anweisungen im Tool-Text (Geheimhaltung gegenüber dem Nutzer, die Aufforderung, frühere Anweisungen zu ignorieren, ein System-Tag-Paar, ein einzelnes IMPORTANT-Tag, das Überschatten eines anderen Tools, Zeichen mit Nullbreite)

Lieferumfang

  • Der Scanner (Python 3.9+, nur Standardbibliothek)
  • Ein Regelleitfaden mit Begründung, sichererem Vorgehen und die offizielle Quelle für jede Regel
  • Ein riskanter und ein sicherer Beispielserver (Python und TypeScript) sowie der echte Bericht, den der Scanner für den riskanten erzeugt

Grenzen

Er liest jede Datei für sich: Tool-Argumente werden nur innerhalb einer Datei und nur wenige Aufrufe tief verfolgt. Konfigurationsdateien von MCP-Clients, Schwachstellen in Abhängigkeiten, die installierte SDK-Version, ein Reverse Proxy vor dem Server und das Laufzeitverhalten werden nicht geprüft; SDKs für Go, Java, Kotlin, C# und Rust werden nicht gelesen. NOT FLAGGED ist keine Garantie.

Inhalt

Eine ZIP-Datei mit 18 Dateien: SKILL.md, der Scanner in scripts/ (9 Python-Dateien), references/rules.md (jede Regel mit Begründung und sichererem Vorgehen) und examples/ (6 Beispieldateien plus report.md, die echte Ausgabe des Scanners für das riskante Beispiel).

So verwenden Sie es: Dies ist ein Agent-Skill: ein Ordner mit einer Datei SKILL.md und Python-Skripten, die ein KI-Coding-Agent wie Claude Code, Cursor oder Codex CLI ausführen kann. Entpacken Sie ihn in den Skills-Ordner Ihres Agenten (für Claude Code: ~/.claude/skills/) und bitten Sie Ihren Agenten dann, Ihr Projekt zu prüfen. Die Skripte laufen auch eigenständig mit Python 3.9 oder neuer, ohne dass etwas installiert werden muss. Sie lesen nur Ihre Dateien: kein Netzwerkzugriff, und nichts wird irgendwohin gesendet.

Das bekommst du

1 Datei · 63.56 KB

  • mcp-server-code-safety-check-1.0.0.zipZIP · 63.56 KB
LizenzKommerzielle Nutzung erlaubt
PaketprüfungBestanden

Getly hat die hochgeladenen Dateien geöffnet und nichts gefunden, was das Öffnen verhindern würde. Das ist kein Virenscan und keine Qualitätsbewertung.

Veröffentlicht12. Nov. 2026
Dateigröße63.56 KB
DateiformatZIP
Versionv1.0

Tags

mcpai-agentssecuritypythontypescriptai agent skill
R
RR HH

Häufige Fragen

Erhalte ich sofort Zugriff?

Ja. Dies ist ein digitales Produkt - du kannst es direkt nach dem Kauf aus deiner Bibliothek herunterladen.

Darf ich es für kommerzielle Projekte nutzen?

Ja. Kommerzielle Nutzung ist erlaubt: im eigenen Business und in dem, was du verkaufst. Die Datei selbst darfst du nicht weiterverkaufen oder verbreiten.

Wie sind die Rückerstattungsbedingungen?

Du kannst innerhalb von 30 Tagen eine Rückerstattung anfordern. Stimmt etwas nicht, fordere sie bei deiner Bestellung an - das Getly-Team prüft sie.

Welche Dateiformate und -größen erhalte ich?

Du lädst 1 Datei herunter - ZIP - insgesamt 63.56 KB.

Erhalte ich kostenlose Updates?

Ja - wenn der Verkäufer eine neue Version veröffentlicht, kannst du die aktuellen Dateien kostenlos erneut aus deiner Bibliothek herunterladen. Aktuelle Änderungen findest du im Changelog.

Preis

$5.00