Erkennungsregeln
Jede Regel, mit einer Demo, die Sie ausführen können.
Alle 54 Regeln. Wählen Sie eine aus, um eine Datei zu sehen, die sie auslöst, den entscheidenden Teil und das Ergebnis, das der Scanner liefert. Die Ergebnisse stammen aus dem echten Scannerlauf, nicht von Hand geschrieben.
Die interaktiven Demos benötigen JavaScript. Hier sind bis dahin alle Regeln.
Agent-Sicherheit
- Prompt-Injection-Payload — Anweisungen, gerichtet an den Agenten, versteckt in Text, den der Agent ohnehin liest.
- Beschreibung stimmt nicht mit den Fähigkeiten überein — Ein Tool, das sich selbst als nur lesend beschreibt, während seine Parameter etwas anderes sagen.
- Unsichtbares Unicode — Zeichen, die unsichtbar dargestellt werden, das Modell aber trotzdem erreichen.
- Loses Parameter-Schema — Eine risikoreiche Eingabe, etwa eine URL oder ein Dateipfad, die absolut alles akzeptiert.
- Versteckte Anweisung — Ein Befehl, versteckt in einem Teil einer Datei, den die gerenderte Ausgabe nie zeigt.
- Schema-Injection — Eine Anweisung, versteckt in der Beschreibung eines Parameters, eine Ebene unter der des Tools selbst.
- Unicode-Tag-Schmuggel — Text, geschrieben in Unicode-Tag-Zeichen, die überhaupt nicht dargestellt werden.
- Tool Shadowing — Ein Tool, das Anweisungen gibt, wie sich ein anderes Tool verhalten soll.
- Aufforderung zur Rechteausweitung — Bittet die Person, nicht die Maschine, eine Schutzmaßnahme herabzusetzen.
- Markdown-Bild-Beacon — Ein Markdown-Bild, dessen Adresse Daten hinausträgt, wenn die Antwort angezeigt wird.
- Gefälschtes Tool-Ergebnis — Text, geformt wie die Ausgabe eines Tools, das nie gelaufen ist.
- Memory Poisoning — Schreibt Anweisungen in eine Datei, die der Agent zu Beginn jeder Sitzung liest.
- Verzögerter Auslöser — Verhält sich zunächst normal und tut später etwas anderes.
- Injection in eine Agentenkette — Eine Anweisung, die an das nächste Glied in einer Agentenkette gerichtet ist, nicht an den Nutzer.
- Confused Deputy — Ein Tool ohne besondere Berechtigungen, das den Agenten anweist, eines zu nutzen, das sie hat.
- Extraktion des System-Prompts — Bittet den Agenten, seine eigenen Anweisungen und Tools offenzulegen.
- Zugriff auf den Gesprächsverlauf — Fragt nach dem Gesprächsverlauf, ohne dass die Beschreibung einen Grund nennt.
- Anweisung in einer Fehlermeldung — Eine Anweisung, versteckt in einem Fehler, gelesen genau in dem Moment, in dem niemand genau hinsieht.
Exfiltration
- Exfiltrationsmuster — Ein Tool, das mit Geheimnissen arbeitet und auch Daten nach außen senden kann.
- Webhook-Sammelstelle — Eine fest codierte Adresse, deren einziger Zweck es ist, alles zu sammeln, was an sie gesendet wird.
- DNS-Exfiltration — Daten, kodiert in die Namen von Domain-Abfragen.
- Toxischer Fähigkeitenfluss — Ein Tool, das private Daten liest und auch nach außen veröffentlichen kann.
- Netzwerkzugriff in einem „Offline“-Tool — Behauptet, nie das Netzwerk zu nutzen. Nutzt das Netzwerk.
Zugangsdaten
- Fest codiertes Geheimnis — Ein Geheimnis, direkt in eine Datei geschrieben.
- Zugriff auf Zugangsdaten-Speicher — Liest eine Datei, deren einziger Zweck es ist, Zugangsdaten zu speichern.
- Zugriff auf Cloud-Metadaten — Fragt den Cloud-Host nach den Zugangsdaten, die er an alles herausgibt, was danach fragt.
- Zugriff auf den Shell-Verlauf — Liest die Aufzeichnung der in ein Terminal eingegebenen Befehle.
- Zugangsdaten in MCP-Konfiguration — Ein aktives Token, eingefügt in eine MCP-Konfigurationsdatei.
- Geheimnis in Protokolle geschrieben — Ein Geheimnis, ausgegeben an einen Ort, an dem es viel zu lange aufbewahrt wird.
- OAuth-Fehlkonfiguration — OAuth so eingerichtet, dass der Schutz, für den es gedacht war, wegfällt.
Lieferkette
- Nicht vertrauenswürdige externe Installation — Einrichtungsanweisungen, die Sie auffordern, etwas herunterzuladen und auszuführen.
- Nicht gepinnter MCP-Server — Ein Server, der zu anderer Software werden kann, ohne dass Sie etwas tun.
- Bekannt verwundbarer MCP-Server — Eine festgelegte Version mit veröffentlichter Sicherheitswarnung.
- MCP-Paket-Imitation — Ein Paketname, der nur ein Zeichen von dem entfernt ist, das Sie meinten.
- Install-Skript-Hook — Ein Befehl, der aus dem Internet läuft, sobald das Paket installiert wird.
- Dependency Confusion — Ein öffentliches Paket mit dem Namen eines Ihrer privaten Pakete.
- Verwundbare Abhängigkeit — Eine deklarierte Abhängigkeit innerhalb des betroffenen Bereichs einer veröffentlichten Advisory.
- Fehlende Herkunftsprüfung — Ein Download, der installiert wird, ohne zu prüfen, ob es die echte Datei ist.
- Tool-Name mit Homoglyphen — Zwei Tool-Namen, die auf dem Bildschirm identisch aussehen, aber nicht derselbe Text sind.
- Doppelter Tool-Name — Derselbe Tool-Name, deklariert in zwei verschiedenen Dateien.
- Shadow-MCP-Server — MCP-Server, die Ihr Agent nutzen kann, die aber die Konfiguration Ihres Projekts nicht deklariert.
- Toolset-Mutation — Ein Tool, das Sie schon kennen, jetzt aus einer anderen Datei geliefert und verändert.
- Manifest-Änderung — Ein Tool, das Sie bereits geprüft haben und das sich danach still verändert hat.
Ausführung
- Übermäßige Berechtigungen — Ein Tool, das weit mehr Zugriff verlangt, als seine Aufgabe möglicherweise braucht.
- Dynamische Ausführung — Code, der zur Laufzeit aus etwas zusammengesetzt wird, das dem Agenten übergeben wurde.
- Undurchsichtige Payload — Etwas, das einem Skill beiliegt und das niemand lesen kann — hier ein Programm, getarnt als gewöhnliche Datei.
- Automatische MCP-Freigabe — Ein MCP-Server, der so konfiguriert ist, dass er jedes Tool ohne Nachfrage ausführt.
- Zu weit gefasster MCP-Startbefehl — Ein Startbefehl, der dem Server mehr gibt, als er braucht.
- Angriffsfläche für MCP-STDIO-Injection — Ein Server auf MCPs STDIO-Transport, bei dem Konfigurationswerte zu einem vom Host ausgeführten Befehl werden.
- Persistenzmechanismus — Schreibt sich an eine Stelle, die einen Neustart übersteht.
- Sandbox-Ausbruch — Verweist auf einen Weg aus dem Container heraus, in dem es läuft.
- String-Zusammensetzung — Setzt ein gefährliches Wort aus Fragmenten zusammen, sodass eine Suche danach leer bleibt.
- Angriffsfläche für Command Injection — Ein Shell-Befehl, der durch Einfügen eines zur Laufzeit gelieferten Werts zusammengesetzt wird.
- Zu freizügiges CORS — Ein HTTP-Server, den jede Website aufrufen kann.
OWASP MCP Top 10
Abdeckung über alle zehn Kategorien.
Jede Regel ordnet sich mindestens einer Kategorie der OWASP MCP Top 10 zu, die sich noch in der Beta-Phase befindet. Manche Regeln decken mehrere Kategorien ab, daher ergibt die Summe mehr als die Anzahl der Regeln. Fehlende Protokollierung und Telemetrie hat nur eine Regel, und das ist auch richtig so: Protokollierung ist ein Problem, das ein Scanner aufzeigen, aber nicht lösen kann.
| Kategorie | Name | Regeln | Relative Abdeckung |
|---|---|---|---|
| MCP01 | Missmanagement von Token und Offenlegung von Geheimnissen | 7 | |
| MCP02 | Rechteausweitung durch Scope Creep | 7 | |
| MCP03 | Tool Poisoning | 13 | |
| MCP04 | Angriffe auf die Software-Lieferkette und Manipulation von Abhängigkeiten | 13 | |
| MCP05 | Command Injection und Ausführung | 8 | |
| MCP06 | Unterwanderung des Absichtsflusses | 10 | |
| MCP07 | Unzureichende Authentifizierung und Autorisierung | 3 | |
| MCP08 | Fehlende Protokollierung und Telemetrie | 1 | |
| MCP09 | Shadow-MCP-Server | 1 | |
| MCP10 | Kontext-Injection und übermäßige Weitergabe | 9 |
Führen Sie jede Regel an Ihren eigenen Dateien aus.
Der kostenlose Plan enthält alle 54 Regeln und 20 Scans im Monat.