.@trailofbits' đội ngũ Buttercup đang nói về chiến lược cạnh tranh của chúng tôi ngay bây giờ, trên sân khấu AIxCC. Đây là đội ngũ cốt lõi của chúng tôi (8 người cốt lõi + ~3 lính đánh thuê):
Các nguyên tắc hướng dẫn chiến lược của chúng tôi. Tóm lại, hãy sử dụng công cụ tốt nhất cho công việc. Đừng mong đợi LLM sẽ tự nhiên giỏi ở những thứ mà chúng tôi biết là không.
Thiết kế Buttercup ban đầu tinh vi hơn nhiều. Nó đã được rút gọn để tuân thủ các quy tắc và tính đến những hạn chế về tài nguyên từ đội ngũ của chúng tôi.
Chúng tôi đã thi đấu rất tốt ở vòng bán kết, ghi được nhiều điểm đầu tiên, nhưng công cụ tìm lỗi Java của chúng tôi đã hỏng và chúng tôi vẫn không biết lý do tại sao!
Các trận bán kết đã xác nhận cách tiếp cận tổng thể của chúng tôi, nhưng nó cần được điều chỉnh để phù hợp với sự gia tăng quy mô lớn cho trận chung kết. Chúng tôi đã vứt bỏ nguyên mẫu và bắt đầu lại từ đầu cho trận chung kết.
Henrik đã làm việc trên bộ điều phối: cách, cái gì và khi nào để gửi đến API cuộc thi. Chúng tôi quyết định luôn yêu cầu một PoV để tối đa hóa sự tự tin của chúng tôi trong các bài nộp.
Chạy đã làm việc trên công cụ phát hiện lỗ hổng của chúng tôi. Chúng tôi đã sử dụng các bộ fuzz tiêu chuẩn oss-fuzz. Chúng tôi đã sử dụng một tập hợp chung nơi các LLM hỗ trợ các bộ fuzz trong việc đạt được độ bao phủ.
Ronald đã làm việc trên công cụ phát hiện lỗ hổng của chúng tôi. Chúng tôi đã sử dụng các bộ fuzz tiêu chuẩn oss-fuzz. Chúng tôi đã sử dụng một tập hợp chung, nơi các LLM hỗ trợ các bộ fuzz trong việc đạt được độ bao phủ.
Ronald đã làm việc trên công cụ phát hiện lỗ hổng của chúng tôi. Chúng tôi đã sử dụng các bộ fuzz tiêu chuẩn oss-fuzz. Chúng tôi đã sử dụng một tập hợp chung, nơi các LLM hỗ trợ các bộ fuzz trong việc đạt được độ bao phủ.
Patcher là một hệ thống đa tác nhân, 6k dòng mã, LangChain/LangGraph, với GPT-4.1 không có khả năng suy luận. Tác nhân bảo mật xác định nguyên nhân gốc rễ, tác nhân kỹ sư tìm hướng dẫn kiểm tra, sau đó tác nhân QA tạo một bản vá và xác thực nó. Nếu nó thất bại, tác nhân phản ánh điều chỉnh chiến lược.
Trong các vòng Triển lãm, chúng tôi đã ghi điểm đầu tiên ở vòng 1, gặp sự cố nghiêm trọng ở vòng 2, và đã phục hồi ở vòng 3. Chúng tôi đã sử dụng tài nguyên hiệu quả ở vòng 1, chỉ sử dụng $1k trong tổng ngân sách $30k cho LLM. Ở vòng 2, chúng tôi đã có một lỗi chính tả nhỏ khiến mọi thứ bị sập.
Trong vòng đánh giá, chúng tôi đã phát hiện ra nhiều lỗi với ngân sách hạn chế (một nửa so với ngân sách có sẵn), với độ chính xác cao, và đạt điểm tốt trong tất cả các nhiệm vụ. Chúng tôi cũng đã tìm thấy ít nhất 1 lỗi mà không ai khác trong CRS phát hiện, cho thấy chúng tôi đã khám phá những lĩnh vực mới.
Làm thế nào mà chúng tôi lại đạt điểm cao như vậy? Chúng tôi có độ chính xác 90%, ghi điểm trên tất cả các nhiệm vụ, và tạo ra các bản vá chất lượng cao cho tất cả các lỗi của mình.
Chúng tôi đã dành tháng trước để tạo ra một phiên bản thu nhỏ của buttercup có thể chạy trên máy tính xách tay của bạn. Chúng tôi dự định duy trì nó bằng một phần của số tiền thắng. Bây giờ nó đã là mã nguồn mở!
4K