Trail of Bits的Buttercup进军DARPA的AIxCC
随着DARPA人工智能网络挑战赛(AIxCC)半决赛今日在DEF CON 2024启动,我们正式介绍我们的参赛作品Buttercup。Buttercup是一个网络推理系统(CRS),它将传统的网络安全技术(如模糊测试和静态分析)与人工智能和机器学习相结合,用于发现和修复软件漏洞。该系统设计用于在比赛的严格时间和预算限制内运行。
自DARPA于3月向我们和其他六家小型企业授予100万美元用于开发AIxCC的CRS以来,我们一直在不停歇地开发Buttercup,并于7月中旬最终提交。我们兴奋地参加半决赛,DARPA将测试我们的CRS在发现和修复漏洞方面比人类更高效的能力。许多开发Buttercup的Trail of Bits工程师将出席DEF CON。请来打个招呼!
本文将介绍Buttercup背后的团队,解释我们参赛的原因、面临的挑战以及下一步计划。
我们为什么参赛
在Trail of Bits,我们的核心支柱之一是通过贡献开源软件、开发工具和分享知识来加强安全社区。开源软件至关重要,支撑着当今大部分技术——从运行全球数百万台服务器的Linux操作系统,到服务互联网重要部分的Apache HTTP服务器。然而,真正的问题在于开源代码的数量庞大和复杂性高,难以保持安全。
Dan Guido解释说:“有太多的代码需要查看,而且太复杂,无法找到全球所有的漏洞。我们每天都在编写更多软件,越来越依赖软件,但安全工程师的数量并没有随着执行这项工作的需求而扩展。AI是一个机会,可能帮助我们找到并修复现在普遍存在且数量不断增加的安全问题。”
我们在Buttercup上的工作旨在应对这些挑战,强化我们保护开源软件对更安全世界至关重要的信念。通过开发先进的AI驱动解决方案,Trail of Bits不仅为创新而竞争,还为保护我们所有人都依赖的系统的更广泛使命做出贡献。
Buttercup背后的团队
我们的AIxCC团队由19名工程师组成,每个工程师都在一个具有特定目标和任务的子团队中工作。我们是一个完全远程的团队,由于不同的时区,几乎全天候工作,这带来了挑战和机遇。首先,介绍我们的团队领导:
其他参与Buttercup工作的团队成员包括Alan Cao、Alessandro Gario、Akshay Kumar、Boyan Milanov、Marek Surovic、Brad Swain、William Tan和Amanda Stickler。
Artem Dinaburg、Andrew Pan、Henrik Brodin和Evan Sultanik在Buttercup开发的初始阶段做出了宝贵贡献。
介绍Buttercup:我们的AIxCC提交作品
Buttercup是我们为AIxCC开发的CRS,代表了自动漏洞检测和修复的重大飞跃。以下是Buttercup的独特之处:
混合方法:Buttercup将传统的网络安全技术(如模糊测试和静态分析)与尖端AI和机器学习相结合。这种融合使我们能够利用两种方法的优势,克服各自的局限性。
自适应漏洞发现:我们的系统使用大型语言模型(LLM)生成模糊测试的种子输入,显著减少发现漏洞所需的时间。这种创新方法帮助我们在比赛的严格时间限制内工作。
智能上下文化:Buttercup不仅发现漏洞,还理解它们。我们的系统可以识别导致错误的提交,并为有效修补提供关键上下文。
AI驱动修补:我们实现了多交互LLM代理方法进行补丁生成。这些代理协作分析、调试并根据验证反馈迭代改进补丁。
可扩展性和弹性:借鉴我们在Cyber Grand Challenge中与Cyberdyne的经验,我们设计了具有分布式架构的Buttercup,确保可扩展性和对故障的弹性。
语言多样性:虽然最初专注于比赛的C和Java,但Buttercup的架构设计为可在未来迭代中扩展到其他编程语言。
通过结合这些能力,Buttercup旨在自动化整个漏洞生命周期——从发现到修补——无需人工干预。这种方法不仅满足比赛要求,还推动了自动化网络安全可能性的边界。
适应比赛限制
比赛并非没有挑战。Buttercup的开发花了三个月,涉及构建和集成组件以及频繁的进度检查。一路上,团队不断适应不断变化的要求和DARPA的新比赛规则,这经常迫使我们重做Buttercup的部分内容。
AIxCC提出了独特的挑战,包括严格的四小时时间限制和每个挑战100美元的LLM查询限制,推动我们以最初未预料的方式创新和适应:
优化种子生成:我们改进了使用LLM生成高质量模糊测试种子输入的方法,旨在更快发现漏洞。
简化工作流:我们的整个管道,从漏洞发现到补丁生成,都经过优化以在紧张的时间限制内工作。
优先级策略:我们实施了智能优先级机制,在有限时间内专注于最有希望的线索。
高效资源分配:Buttercup动态分配计算资源,以在四小时窗口内最大化生产力。
战略使用LLM:每个挑战100美元的LLM查询限制要求仔细预算我们的AI资源,并强调在整个过程中高效、有针对性地使用LLM。
除了时间限制和资源约束,我们还面临其他几个挑战:
AI不可预测性:AI的不可预测性要求精确提示以获得有用输出。它生成概率性而非确定性的结果。我们的系统使用来自基本测试工具和方法(如模糊测试)的反馈来评估模糊或概率性输出。这让团队确定漏洞是假阳性还是真阳性。
并行开发:同时构建和集成组件需要卓越的团队合作和适应性。我们的全球团队几乎全天候工作,利用不同时区持续进步。
不断变化的要求:我们不断适应DARPA的新信息和规则澄清,有时不得不重新评估和调整我们的方法。
虽然我们认为更宽松的限制将允许发现更深层、更复杂的漏洞,但我们已接受这一挑战作为推动快速、自动漏洞发现和修复可能性边界的机会。
下一步计划
7月15日,我们最终确定并提交了Buttercup参加AIxCC半决赛。这一提交展示了我们在漏洞发现、修补和编排方面的工作。我们的短期目标是在DEF CON半决赛的42支团队中进入前七名,并继续开发Buttercup参加2025年的决赛。
展望未来,我们的长期目标是推进AI和ML算法在检测和修补漏洞中的应用,并将该技术过渡到政府和行业合作伙伴。我们承诺按照比赛要求发布Buttercup,继续我们为更广泛网络安全社区贡献的理念。
当我们踏上AIxCC这一激动人心的阶段时,我们邀请您成为我们旅程的一部分:
保持关注:注册我们的新闻通讯,并在X、LinkedIn和Mastodon上关注我们的账户,以获取我们在比赛中的进展更新和我们AI工作的见解。我们的AI/ML团队最近分享了通过报告Ask Astro和Sleepy Pickle中的ML模型利用漏洞来帮助保护ML系统的工作。
探索我们的开源工作:虽然Buttercup要到明年才会开源,但您可以在GitHub上查看我们的其他项目。我们对开源的承诺继续推动网络安全社区的创新。
在DEF CON与我们联系:如果您参加DEF CON,请来AIxCC村庄向我们的团队问好!我们很乐意讨论我们的方法并探索潜在合作。
与我们合作:我们在这里帮助公司将LLM应用于网络安全挑战。我们在Buttercup上的经验为我们利用AI进行安全提供了独特见解——让我们讨论如何增强您的团队。
AIxCC半决赛只是这一旅程的开始。通过参加这一开创性比赛,我们不仅构建一个工具——我们正在塑造网络安全的未来。加入我们,推动自动漏洞发现和修复可能性的边界。
随着半决赛进行中,在社交媒体上关注我们以了解我们的整体进展和团队成就。
如果您喜欢这篇文章,请分享: Twitter LinkedIn GitHub Mastodon Hacker News