Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
FLAWED — Fix-Like-Artefakte mit eingebetteten Defekten | Kitploit
Tools/GitHubGitHub/off-by-1-labs/flawed
DefensivwerkzeugeStatische AnalyseSchwachstellenscannerDynamische Analyse (Sandboxing)SchwachstellenanalyseCode-AnalyseFuzzingMaschinelles LernenPapers & ForschungLernen & BildungKI-Sicherheit
2255vor 1 MonatVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
GitHub
off-by-1-labs/flawed

FLAWED

Fix-Like-Artefakte mit eingebetteten Defekten

Repository anzeigen
Teilen
FLAWED

Fix Like Artifacts with Embedded Defects

Ein Research-Harness zur Messung, wie gut KI-Agenten Schwachstellen patchen.

License MIT Python 3.11+ Requires Docker Agents Claude, Codex, Gemini

Quickstart · Datasets · Dokumentation · Sicherheitsmodell · Mitwirken


FLAWED checkt ein Open-Source-Projekt an einem bekannten verwundbaren Commit aus, übergibt einem KI-Agenten eine Beschreibung des Bugs und bittet ihn, einen Patch zu schreiben. Der Agent sieht nie den echten Upstream-Fix.

Jeder Patch wird anschließend in isolierten Containern validiert, auditiert und bewertet, sodass du nicht nur siehst, ob das Modell den Bug behoben hat, sondern auch, ob es dabei neue eingeführt hat.

Funktionsweise

root@kitploit:~
flowchart LR
    spec[bug spec] --> clone
    clone["clone<br/>(open net)"] --> generate
    generate["generate<br/>(offline)"] --> validate
    validate["validate<br/>(offline)"] --> ast["ast<br/>(offline)"]
    generate -.->|"patch.diff"| store[(Postgres)]
    validate -.->|"verdict"| store
    ast -.->|"summary"| store
    store --> ui[web UI + notebook]
Tool herunterladen

Jede Stufe läuft in ihrem eigenen Container. Nur clone hat Netzwerkzugriff. Jede spätere Stufe ist auf die API des LLM-Anbieters beschränkt, sodass Agenten während des Laufs keine Hinweise oder den Upstream-Fix abrufen können.

Funktionen

FunktionWas sie dir bietet
Wiederholte StichprobenEin Lauf führt N Iterationen derselben Eingabe aus, sodass Ergebnisse Verteilungen sind, keine Anekdoten.
KampagnenFahre einen Bug über Patcher-Varianten und Prompt-Stile hinweg durch, von einem vagen „fix this plz" bis zu einem vollständigen Advisory, und vergleiche die Ergebnisse auf einem Live-Dashboard.
ErgebnisbewertungJeder Patch landet in einem von fünf Szenarien, von S1 (sauberer Fix) bis S5 (Bug nicht behoben und eine neue Schwachstelle eingeführt).
KreuzvalidierungPatches werden von anderen Modellen erneut beurteilt, und die Kennzahlen mitteln die Selbst- und Kreuzvalidierungsperspektive, damit die Voreingenommenheit eines einzelnen Richters nicht dominiert.
BetrugserkennungEin Auditor markiert Iterationen, in denen der Agent den Upstream-Fix gefunden hat, anstatt den Bug selbst zu lösen.

FLAWED lässt die CLIs von Claude, Codex und Gemini mit denselben Eingaben direkt gegeneinander antreten.

Quickstart

[!WARNING] FLAWED bindet den Docker-Socket ein (root-äquivalent auf dem Host) und führt nicht vertrauenswürdigen Code Dritter in seinen Stufen-Containern aus. Führe es auf einer Maschine aus, der du diese Arbeitslast zutraust. Siehe docs/security-model.md.

Du brauchst Docker, mit zugänglichem Daemon-Socket.

root@kitploit:~
# 1. Configure. Writes .env for you (data dir + provider API keys)
./setup.sh

# 2. Bring up the stack (Postgres, API + worker, web UI, notebook)
docker compose up --build

# 3. Open http://127.0.0.1:8080

Dann starte deinen ersten Lauf.

  1. Importiere eine Bug-Spec. Beispiel-Specs liegen unter bugs/. Ziehe eine in die Seite Bug Specs der Web-UI oder nutze die CLI.
    root@kitploit:~
    ./scripts/import-all-bugs.sh
    
  2. Starte einen Lauf aus der Web-UI. Wähle die Spec, einen Agenten + ein Modell, eine Variante und eine Iterationsanzahl. Die Laufseite streamt den Fortschritt live.

[!NOTE] Der erste Lauf gegen ein großes Upstream (z. B. Chromium) ist langsam. Die validate-Stufe klont das gesamte Repo einmal, um gegen den echten Upstream-Patch zu diffen. Der Klon wird zwischengespeichert und danach wiederverwendet.

Entwicklungssetup auf dem Host (ohne compose)

Du brauchst Docker, Node 20+, pnpm, uv und @devcontainers/cli (npm i -g @devcontainers/cli). Nix-Nutzer können nix-shell für alles außer Docker verwenden.

root@kitploit:~
make dev                        # uv sync + web deps
docker compose up -d postgres   # FLAWED needs a Postgres to talk to
cp .env.example .env            # points FLAWED_DB_URL at it
uv run flawed init              # builds base images, creates the schema
uv run flawed serve             # API + worker + webapp on port 8080

Für den Web-Dev-Loop führe make web-dev in einem zweiten Terminal aus. Es serviert die UI auf Port 5173 und proxyt /api an flawed serve.

Ein isolierter Devcontainer, um KI-Coding-Agenten sicher gegen dieses Repo laufen zu lassen, ist in .devcontainer/README.md dokumentiert.

Bug-Specs

Eine Bug-Spec ist die Eingabeeinheit. Sie enthält ein Repo, einen verwundbaren Commit, eine Bug-Beschreibung, einen optionalen Reproducer und eine Reihe von Prompt-Varianten, die modellieren, wie der Bug realistischerweise gemeldet werden könnte (SAST-Finding, Bug-Bounty-Bericht, gesperrtes Advisory, roher PoC, …). Specs sind versioniert und unveränderlich, sodass Prompt und Urteil eines historischen Laufs sich nie stillschweigend ändern.

Der JSON-Vertrag liegt in bugs.schema.json und ist in docs/bug-specs.md dokumentiert. Alle mitgelieferten Specs beschreiben öffentlich offengelegte, upstream-behobene Schwachstellen.

Speicherung

Postgres ist die einzige Quelle der Wahrheit. Lauf-Metadaten und Artefakt-Bytes (Patches, Urteile, Transkripte, Logs) liegen in der Datenbank, sodass ein Deployment vollständig durch seine DB erfasst wird. Das Verzeichnis data/ ist flüchtiger Scratch-Speicher, den die Stufen zur Laufzeit einbinden.

  • Sichere ein ganzes Deployment / stelle es wieder her mit scripts/export_dataset.py und scripts/import_dataset.py (auch aus der Web-UI verfügbar).
  • Baue einen Artefakt-Baum auf der Festplatte neu auf zur Offline-Prüfung mit scripts/export_artifacts.py.
  • Schema-Änderungen werden mit Alembic verwaltet (uv run alembic upgrade head läuft automatisch beim Start).

Datasets

Wir veröffentlichen vorgefertigte Datasets, damit du abgeschlossene Kampagnen laden kannst, anstatt alles selbst laufen zu lassen. Jedes Dataset ist ein .tar.gz eines vollständigen Snapshots, gehostet unter https://flawed.s3.us-east-1.amazonaws.com.

Alle Kampagnen in einem Bundle.

BundleArchiv
Alle Kampagnenfull.tar.gz
Archive pro Kampagne, eines pro Patcher-Modell (13)
KampagnePatcher-ModellGrößeArchiv
CVE-2026-22738 (Spring AI SpEL injection)claude-opus-4-8515.0 MB.tar.gz
CVE-2026-22738 (Spring AI SpEL injection)gpt-5.5663.9 MB.tar.gz
CVE-2026-31431 (Linux algif_aead)claude-opus-4-81.1 GB.tar.gz
CVE-2026-31431 (Linux algif_aead in-place)gpt-5.5966.9 MB.tar.gz
CVE-2026-34197 (ActiveMQ Jolokia RCE)claude-opus-4-8645.2 MB.tar.gz
CVE-2026-34197 (ActiveMQ Jolokia RCE)gpt-5.5819.0 MB.tar.gz
CVE-2026-45185 (Exim BDAT use-after-free)claude-opus-4-81.1 GB.tar.gz
CVE-2026-45185 (Exim BDAT use-after-free)gpt-5.51.0 GB

Aus der Web-UI (empfohlen)

Snapshots → Import datasets, füge einen der obigen Archiv-Links ein und klicke auf Find archives. FLAWED importiert einen direkten .tar.gz-Link unverändert und entpackt ihn in deine Snapshots. Stelle ihn dann aus der Snapshot-Liste wieder her (das Wiederherstellen ist ein separater, explizit bestätigter Schritt).

Der Import entdeckt mehrere Archive auf einmal nur, wenn die URL ein auflistbarer Bucket oder eine Verzeichnisindexseite ist. Nichts davon trifft hier zu, also importiere die Links einzeln.

Manuell

Lade ein Archiv herunter, entpacke es in das Snapshot-Verzeichnis (FLAWED_HOST_SNAPSHOT_DIR, oder standardmäßig ./flawed-snapshots), und es erscheint in der Snapshot-Liste, bereit zur Wiederherstellung.

root@kitploit:~
curl -LO https://flawed.s3.us-east-1.amazonaws.com/compressed/campaigns/full/cve-2026-45185-exim-bdat-uaf_full_gpt-5.5_1782988292.tar.gz
mkdir -p "$FLAWED_HOST_SNAPSHOT_DIR"
tar -xzf cve-2026-45185-exim-bdat-uaf_full_gpt-5.5_1782988292.tar.gz -C "$FLAWED_HOST_SNAPSHOT_DIR"

Der Import legt das Bundle nur auf der Festplatte ab. Das Wiederherstellen, das das aktuelle Deployment ersetzt, erfolgt separat über die Snapshots-Seite.

Dokumentation

DokuInhalt
docs/architecture.mdKomponenten, Datenfluss, Speicherlayout
docs/pipeline.mdDie Stufen, Iterationssemantik, Container-Layout
docs/security-model.mdNetzwerkrichtlinie pro Stufe, Sandboxing, Bedrohungsmodell
docs/bug-specs.mdEingabevertrag, Prompt-Zusammensetzung, Versionierung
docs/cli.mdflawed-Befehlsreferenz + Umgebungsvariablen
docs/webapp.mdUI-Tour
docs/notebook.mdJupyterLab-Integration + das flawed-Hilfsmodul

Repository-Layout

root@kitploit:~
packages/
  flawed-core/             models, DB schema, settings
  flawed-orchestrator/     run lifecycle, worker pool, devcontainer driver
  flawed-stage-*/          the pipeline stages (clone, generate, validate, …)
  flawed-agent-runner/     runs INSIDE the container (Claude / Codex / Gemini CLIs)
  flawed-api/              FastAPI + SSE + notebook proxy
  flawed-cli/              the `flawed` CLI
apps/web/                  React + Vite + Tailwind webapp
containers/                base image, network lockdown, notebook container
bugs/                      example bug specs
docs/                      documentation (see above)

Entwicklung

AufgabeBefehl
Alle Python- + Node-Abhängigkeiten synchronisierenmake dev
Tests ausführenmake test
Lintmake lint
Auto-Formatierungmake format
Web-Dev-Server (Port 5173)make web-dev
E2E-Smoke-Testmake e2e

Tests brauchen Docker. Sie starten ihr eigenes Postgres über testcontainers.

Lizenz & Mitwirken

FLAWED wird unter der MIT-Lizenz veröffentlicht. Beiträge sind willkommen. Siehe CONTRIBUTING.md, und melde Sicherheitsprobleme bitte privat gemäß SECURITY.md.

.tar.gz
CVE-2026-8512 (Chromium fsevents UAF)claude-opus-4-8500.7 MB.tar.gz
CVE-2026-8512 (Chromium fsevents UAF)gpt-5.5342.7 MB.tar.gz
freenginx-26 (Perl SV refcount UAF)gpt-5.5166.4 MB.tar.gz
GHSA-wpqr-6v78-jr5g (Gemini CLI trust model)claude-opus-4-81.2 GB.tar.gz
GHSA-wpqr-6v78-jr5g (Gemini CLI trust model)gpt-5.51.3 GB.tar.gz