KI-gestützter SAST-Scanner, der Auth-Bypass, IDOR und Logikfehler findet, die Semgrep/CodeQL übersehen. Kostenlose GitHub Action. Unterstützt Python, JS/TS, Go, PHP, Ruby.
KI-gestützter Code-Sicherheitsscanner, der Schwachstellen findet, die Semgrep und CodeQL übersehen.
Schnellstart • GitHub Action • Vergleich • Sprachen • FAQ
Herkömmliche SAST-Tools basieren auf Mustererkennung und AST-Regeln. Sie sind hervorragend darin, bekannte Schwachstellenmuster zu erkennen, aber sie können grundlegend nicht die Absicht nachvollziehen.
Wenn Ihre API 20 Endpunkte hat und 19 davon die Autorisierung überprüfen, bevor sie auf eine Ressource zugreifen, kann Semgrep den einen nicht markieren, der dies nicht tut – weil es kein Muster gibt, mit dem abgeglichen werden kann. Die Schwachstelle ist die Abwesenheit eines Musters.
VulnHawk analysiert Code mit KI und fügt für jedes untersuchte Code-Stück zugehörigen Code aus anderen Teilen Ihrer Codebasis als Kontext hinzu. Dieser Anreicherungsschritt ermöglicht es der KI, zu vergleichen, wie ähnliche Komponenten Sicherheit handhaben – und diejenige zu erkennen, die es nicht tut.
pip install vulnhawk
Wählen Sie ein Backend:
# Claude Code CLI - FREE for subscribers (recommended)
vulnhawk scan ./src -b claude-code
# Codex CLI - FREE for ChatGPT Pro/Plus subscribers
vulnhawk scan ./src -b codex
# Claude API
export ANTHROPIC_API_KEY=sk-ant-...
vulnhawk scan ./src
# OpenAI API
vulnhawk scan ./src -b openai -m gpt-4o
# Ollama - free, local, fully private
vulnhawk scan ./src -b ollama -m llama3.1
Keine Konfigurationsdateien. Keine Regeln, die geschrieben werden müssen. Keine Datenbank zum Aufbauen.
Die Backends Claude Code und Codex sind kostenlos für Benutzer mit bestehenden Abonnements. VulnHawk leitet Prompts über Ihre lokale CLI, sodass keine zusätzlichen API-Kosten anfallen.
| Fähigkeit | VulnHawk | Semgrep | CodeQL | Snyk Code | Checkmarx | SonarQube |
|---|---|---|---|---|---|---|
| Erkennungsmethode | KI-Schlussfolgerung | AST-Muster | QL-Datenfluss | ML + Regeln | Muster + Fluss | Muster |
| Geschäftslogikfehler | Ja | Nein | Eingeschränkt | Eingeschränkt | Eingeschränkt | Nein |
| Dateiübergreifender Kontext | Automatisch | Benutzerdefinierte Regeln | Benutzerdefinierte Abfragen | Teilweise | Bezahlte Stufe | Eingeschränkt |
| Aufwand für Einrichtung | Keine Konfiguration | Regelkonfiguration | DB-Erstellung + QL | Konfigurationsdatei | Komplex | Server-Setup |
| Benutzerdefinierte Regeln erforderlich | Nein | Ja (YAML) | Ja (QL) | Teilweise | Ja | Ja |
| Kontextbewusste Korrekturen | Ja | Generisch | Generisch | Generisch | Generisch | Generisch |
| Lokaler / privater Modus | Ollama | Ja | Ja | Nein | Nein | Selbst gehostet |
| CI/CD-Integration | 1-Zeilen-Action | Action | Action | Action | Plugin | Plugin |
| SARIF-Eingabe (Tools verketten) | Ja | Nein | Nein | Nein | Nein | Nein |
| Preisgestaltung | Kostenlos* | Kostenlos / Bezahlt | Kostenlos / Bezahlt | Kostenlos / $$$ | $$$$$ | Kostenlos / $$$ |
*Kostenlos mit Claude Code, Codex CLI oder Ollama. API-Backends kosten ca. 0,50–2,00 $ pro Scan.
| Schwachstellenklasse | Warum regelbasierte Tools sie übersehen |
|---|---|
| Fehlende Autorisierung bei 1-von-N-Endpunkten | Kein Muster zum Abgleichen – der Fehler ist die Abwesenheit einer Überprüfung |
| IDOR / BOLA | Erfordert das Verständnis, dass die Benutzer-ID im JWT mit der ID in der URL übereinstimmen muss |
| Manipulation des Zahlungsbetrags | Geschäftslogik – das Betragsfeld sollte nicht vom Client vertraut werden |
| Inkonsistente Eingabevalidierung | 5 Handler bereinigen, der 6. nicht – benötigt dateiübergreifenden Vergleich |
| Missbrauch gespeicherter Eingabe | Eingabe sicher gespeichert, aber 3 Dateien entfernt mit eval() oder rohem SQL ausgeführt |
| Race Conditions bei Zustandsaktualisierungen | Gleichzeitige Saldenänderungen ohne Sperrung |
VulnHawk ist als ergänzende Schicht konzipiert, nicht als Ersatz:
| Ebene | Tool | Zweck |
|---|---|---|
| 1 | Semgrep | Schnelle, deterministische Absicherung gegen bekannte schlechte Muster |
| 2 | CodeQL | Tiefer Taint-Tracking durch komplexe Aufrufketten |
| 3 | VulnHawk | Geschäftslogik, Authentifizierungslücken, IDOR und Inkonsistenzen, die Regeln nicht ausdrücken können |
vulnhawk scan ./src # Full scan (default)
vulnhawk scan ./src --mode auth # Auth bypass, missing checks, session flaws
vulnhawk scan ./src --mode injection # SQLi, command injection, SSTI, XSS
vulnhawk scan ./src --mode secrets # Hardcoded keys, tokens, passwords
vulnhawk scan ./src --mode config # Debug mode, permissive CORS, insecure cookies
vulnhawk scan ./src --mode crypto # Weak hashing, hardcoded keys, bad RNG
vulnhawk scan ./src -o json -f results.json # JSON
vulnhawk scan ./src -o sarif -f results.sarif # SARIF (GitHub Code Scanning)
vulnhawk scan ./src -o markdown -f report.md # Markdown report
vulnhawk scan ./src --severity high # Critical + High only
vulnhawk scan ./src --severity info # Everything
Geben Sie die Ausgabe von Semgrep, CodeQL oder einem anderen SARIF-produzierenden Tool in VulnHawk ein. Es verwendet diese Funde als zusätzlichen Kontext, um sie zu validieren, zu erweitern und zu verketten, um tiefere Schwachstellen zu finden.
# Run Semgrep first, then enrich with VulnHawk
semgrep --config auto ./src -o semgrep.sarif --sarif
vulnhawk scan ./src --sarif-input semgrep.sarif
Was dies ermöglicht:
vulnhawk info ./src # Preview files, chunks, and language breakdown
VulnHawk führt einen Basis-Scan auf Ihrem Standard-Branch und inkrementell bei jedem Pull Request durch.
name: VulnHawk Security Scan
on:
push:
branches: [main, master]
pull_request:
permissions:
security-events: write
contents: read