1. Clone the repository with submodules
Buttercup CRS チートシート
概要
Buttercupは、DARPA AI Cyber Challenge (AIxCC)で2位を獲得したTrail of Bitsによって開発されたオープンソースのサイバー推論システム(CRS)です。C言語とJavaのソースコードリポジトリで、脆弱性を自律的に発見し、修正するAI駆動の技術を使用しています。
主な機能
- AI支援型ファジング: 脆弱性発見を強化するML技術。
- 自律的パッチ適用: マルチエージェントAIシステムが堅牢なセキュリティパッチを生成。
- OSS-Fuzzの統合: Googleのオープンソースファジングインフラストラクチャ上に構築。
- Web ベースのGUI: タスク、脆弱性、パッチのリアルタイムモニタリング。
- マルチエージェントシステム: オーケストレーション、ファジング、パッチ適用の専門エージェントで構成。
システム要件
- CPU: 8コア(最小)
- メモリ: 16 GB RAM(最小)
- ストレージ: 100 GB の空きディスク容量
- OS: Linux x86_64(完全サポート)、ARM64(部分的サポート)
- 依存関係: Docker, Kubernetes, make, curl, git
- AIプロバイダ: OpenAIおよび/またはAnthropicのAPIキー
インストール
# 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
コアコマンド
# 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
UIへのアクセス
# Access the main web UI (http://localhost:31323)
make web-ui
# Access the SigNoz observability dashboard (http://localhost:33301)
make signoz-ui
システムアーキテクチャ
- オーケストレータ: 全体のワークフローを管理し、エージェントを調整。
- シードジェネレータ: ファザーのための知的な入力を作成。
- ファザー: AI強化技術を使用して脆弱性を発見。
- プログラムモデル: コードの構造とセマンティクスを分析。
- パッチャー: パッチを作成するために協力する7つのAIエージェントのチーム。
一般的なワークフロー
- 自動セキュリティ監査: オープンソースの依存関係を継続的にファジングおよびパッチ適用。
- 脆弱性研究: 新しい脆弱性の発見を加速。
- CI/CDの統合: 自動セキュリティテストのためにButtercupをCI/CDパイプラインに統合。