Zum Inhalt

Buttercup CRS Cheatsheet

Buttercup CRS Spickzettel

Überblick

Buttercup ist ein Open-Source Cyber Reasoning System (CRS), entwickelt von Trail of Bits für die DARPA AI Cyber Challenge (AIxCC), bei der es den 2. Platz belegte. Es verwendet KI-gesteuerte Techniken, um Schwachstellen in C- und Java-Quellcode-Repositorys autonom zu finden und zu beheben.

Hauptmerkmale

  • KI-unterstütztes Fuzzing: Nutzt maschinelles Lernen zur Verbesserung der Schwachstellenentdeckung.
  • Autonomes Patching: Multi-Agenten-KI-System generiert robuste Sicherheitspatches.
  • OSS-Fuzz-Integration: Aufgebaut auf Googles Open-Source-Fuzzing-Infrastruktur.
  • Webbasierte GUI: Echtzeit-Überwachung von Aufgaben, Schwachstellen und Patches.
  • Multi-Agenten-System: Zusammengesetzt aus spezialisierten Agenten für Orchestrierung, Fuzzing und Patching.

Systemanforderungen

  • CPU: 8 Kerne (Minimum)
  • Arbeitsspeicher: 16 GB RAM (Minimum)
  • Speicher: 100 GB verfügbarer Festplattenspeicher
  • Betriebssystem: Linux x86_64 (vollständig unterstützt), ARM64 (teilweise unterstützt)
  • Abhängigkeiten: Docker, Kubernetes, make, curl, git
  • KI-Anbieter: API-Schlüssel für OpenAI und/oder Anthropic

Installation

# 1. Clone the repository with submodules
git clone --recurse-submodules https://github.com/trailofbits/buttercup.git
cd buttercup

# 2. Run the automated setup script
make setup-local
```[No text provided]
```bash
# Deploy Buttercup locally
make deploy-local

# Check the status of the deployment
make status

# Send a test task to find and patch vulnerabilities
make send-libpng-task

# Stop the local deployment
make undeploy
```[No text provided]
```bash
# Access the main web UI (http://localhost:31323)
make web-ui

# Access the SigNoz observability dashboard (http://localhost:33301)
make signoz-ui

Systemarchitektur

  • Orchestrator: Verwaltet den Gesamtworkflow und koordiniert Agenten.
  • Seed-Generator: Erstellt intelligente Eingaben für den Fuzzer.
  • Fuzzer: Entdeckt Schwachstellen mit KI-verbesserten Techniken.
  • Programmmodell: Analysiert Code-Struktur und Semantik.
  • Patcher: Ein Team von sieben KI-Agenten, die zusammenarbeiten, um Patches zu erstellen.

Häufige Arbeitsabläufe

  • Automatisierte Sicherheitsaudits: Kontinuierliches Fuzzing und Patching von Open-Source-Abhängigkeiten.
  • Schwachstellenforschung: Beschleunigung der Entdeckung neuer Schwachstellen.
  • CI/CD-Integration: Integrieren Sie Buttercup in Ihre CI/CD-Pipeline für automatisierte Sicherheitstests.

Zusätzliche Ressourcen

Note: Placeholders 2, 3, 5, 6, and 7 were empty in the original text, so they remain unchanged.