Buttercup CRS Cheat Sheet¶
Panoramica¶
Buttercup è un Sistema di Ragionamento Cyber (CRS) open-source sviluppato da Trail of Bits per la DARPA AI Cyber Challenge (AIxCC), dove ha vinto il 2° posto. Utilizza tecniche guidate dall'IA per trovare e riparare autonomamente vulnerabilità in repository di codice sorgente C e Java.
Caratteristiche Principali¶
- Fuzzing Assistito da IA: Sfrutta l'apprendimento automatico per migliorare la scoperta di vulnerabilità.
- Patch Autonome: Sistema multi-agente di IA che genera patch di sicurezza robuste.
- Integrazione OSS-Fuzz: Costruito sull'infrastruttura di fuzzing open-source di Google.
- Interfaccia Web: Monitoraggio in tempo reale di attività, vulnerabilità e patch.
- Sistema Multi-Agente: Composto da agenti specializzati per orchestrazione, fuzzing e patch.
Requisiti di Sistema¶
- CPU: 8 core (minimo)
- Memoria: 16 GB RAM (minimo)
- Archiviazione: 100 GB di spazio su disco disponibile
- SO: Linux x86_64 (completamente supportato), ARM64 (parzialmente supportato)
- Dipendenze: Docker, Kubernetes, make, curl, git
- Provider IA: Chiavi API per OpenAI e/o Anthropic
Installazione¶
```bash
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 ```[No text provided] https://github.com/trailofbits/buttercup
Architettura di Sistema¶
- Orchestratore: Gestisce il flusso di lavoro complessivo e coordina gli agenti.
- Generatore di Semi: Crea input intelligenti per il fuzzer.
- Fuzzer: Scopre vulnerabilità utilizzando tecniche migliorate dall'IA.
- Modello del Programma: Analizza la struttura e la semantica del codice.
- Patcher: Un team di sette agenti IA che collaborano per creare patch.
Flussi di Lavoro Comuni¶
- Audit di Sicurezza Automatizzati: Fuzzing e patch continui di dipendenze open-source.
- Ricerca di Vulnerabilità: Accelera la scoperta di nuove vulnerabilità.
- Integrazione CI/CD: Integra Buttercup nella tua pipeline CI/CD per test di sicurezza automatizzati.
Risorse Aggiuntive¶
- Repository GitHub Ufficiale
- Blog di Trail of Bits: Buttercup è ora open-source!
- [DARPA AI Cyber Challenge (AIxCC)](