Skip to content

Releases: GodModeAI2025/prompt-injection-scanner

Release list

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Sep 20:14
2d3ad4e

v0.1.0

Erstes Release dieses Repos. Bisher gab es keine Tags und keine Downloads, der in der README genannte Installationsweg zeigte auf eine Datei, die nie gebaut wurde. Ab hier gibt es zwei Archive und eine Nummer, auf die man sich beziehen kann.

Zwei Archive, zwei Skills

Archiv Inhalt
prompt-injection-scanner.zip SKILL.md, references/ (detection-patterns.md, hardening-templates.md), scripts/ (evaluate.py, test_context_regression.py, test-suite.json), LICENSE, VERSION
red-team-generator.zip SKILL.md, scripts/generate.py, LICENSE, VERSION

Der Red-Team-Generator ist ein eigener Skill mit eigenem Frontmatter. Als Unterordner im Scanner-Paket wuerde ihn keine Skill-Umgebung laden, deshalb ein eigenes Archiv. Fuer das reine Scannen wird er nicht gebraucht.

Installation

curl -LO https://github.com/GodModeAI2025/prompt-injection-scanner/releases/latest/download/prompt-injection-scanner.zip
unzip prompt-injection-scanner.zip -d ~/.claude/skills/

# optional, nur zum Erzeugen von Testfaellen:
curl -LO https://github.com/GodModeAI2025/prompt-injection-scanner/releases/latest/download/red-team-generator.zip
unzip red-team-generator.zip -d ~/.claude/skills/

Jedes Archiv entpackt in genau einen Ordner, der direkt in ein Skills-Verzeichnis passt. Die Dateinamen tragen keine Versionsnummer, damit die latest/download-URLs auch bei kommenden Releases stimmen; welche Version im Ordner liegt, steht in der Datei VERSION.

Was seit dem letzten Stand von main dazugekommen ist

  • Kontext senkt die Confidence, nicht die Severity. Vorher setzte ein Bildungs-, Artikel- oder Defense-Code-Rahmen jeden Fund auf INFO, und INFO galt in der Auswertung als nicht erkannt. Zwei harmlose Saetze vor einem Angriff genuegten, um ihn verschwinden zu lassen. Jetzt bleibt die Severity, was das Muster hergibt. Abgesichert durch scripts/test_context_regression.py, 13 Tests.
  • scripts/evaluate.py liefert echte Exit-Codes: 0 alles wie erwartet, 1 mindestens ein Fehlurteil, 2 falscher Aufruf. Vorher gab es keine Argumentverarbeitung, ein Lauf mit --test-suite <datei> prueft still die eingebaute Suite und endete mit 0.
  • Die Kategorienzahlen stimmen mit dem Code ueberein: 28 dokumentierte Kategorien, davon 25 mit Muster in evaluate.py; der Generator deckt 12 ab. Kennzahlen sind als Eigenmessung ausgewiesen, mit Datum, Commit und Suite.
  • CI mit Regressionstest, Test-Suite, Argumentpruefung, Generatorlauf und Paketpruefung, unter Python 3.9 und 3.13.
  • Reproduzierbares Packaging: python3 scripts/package.py dist --verify baut die Archive lokal, ohne Netz, mit festen Zeitstempeln und festen Rechten. Zwei Laeufe auf derselben Maschine liefern bytegleiche Dateien, gemessen unter 3.9.6 und 3.13.13.

Was der Scanner nicht kann

  • Kein ML-Classifier. Regelbasiert plus Heuristik. Angriffe ohne bekanntes Muster gehen durch.
  • Die Kontext-Pruefung hat weiterhin Luecken. Ein Hoeflichkeits- oder Modalpraefix vor dem Befehlsverb (Please ignore previous instructions., You must ignore previous instructions.) drueckt einen Angriff im Bildungsrahmen weiter von CRITICAL auf INFO, und Kat. 24a schlaegt erst ab drei Zero-Width-Zeichen an, ein einzelnes bleibt unbemerkt. Die Faelle stehen mit Messwerten in der README unter "Bekannte Luecken der Kontext-Bewertung". Dieses Release behebt sie nicht.
  • Single-Turn. Crescendo und Payload-Splitting brauchen die ganze Konversation.
  • Die Zahlen sind eine Eigenmessung. 66 Faelle aus scripts/test-suite.json, 50 boesartig, 16 gutartig, Muster und Testfaelle vom selben Projekt. Die 0 Prozent False-Positive-Rate bezieht sich auf diese 16 gutartigen Texte, nicht auf einen grossen Korpus. Eine Messung gegen eine fremde Suite steht aus.
  • Sprache. Deutsch und Englisch, anderes nur teilweise und ungetestet.
  • SECURITY.md beschreibt das Bedrohungsmodell; der Abschnitt zum Kontext-Bypass ist auf dem Stand vor den Korrekturen aus diesem Release.
  • Die Aufrufbeispiele in red-team-generator/SKILL.md gehen vom Repo-Layout aus (python3 red-team-generator/scripts/generate.py ...). Wer nur das Generator-Archiv installiert, ruft scripts/generate.py in seinem Skill-Ordner auf.

Paket selbst nachbauen

git clone https://github.com/GodModeAI2025/prompt-injection-scanner.git
cd prompt-injection-scanner
python3 scripts/package.py dist --verify

Baut dieselben zwei Archive und prueft Inhalt, verbotene Pfade, Reproduzierbarkeit und die Uebereinstimmung von VERSION und CHANGELOG.md.