FLAMES:面向智能合约安全微调的不变量合成
密码学与安全
2025-10-27 v1 软件工程
摘要
智能合约漏洞每年造成数十亿美元的损失,但现有自动化分析工具无法生成可部署的防御措施。我们提出了 FLAMES,一种新型自动化方法,用于合成可执行的运行时警戒措施作为 Solidity "require" 语句,以增强智能合约免受攻击。与先前工作不同,FLAMES 不依赖漏洞标签、符号分析或自然语言规范,而是采用针对智能合约领域调整的大语言模型,通过填充中监督微调来提取 514,506 个已验证合约中的不变量。我们进行了广泛的评估,跨越四个维度表明 FLAMES 的有效性:(1) 编译性:FLAMES 对合成的不变量实现率达 96.7%;(2) 语义质量:在一组 5,000 个具有挑战性的不变量测试集上,FLAMES 在 44.5% 的情况下产生与真实答案的精确或语义等价匹配;(3) 漏洞缓解:FLAMES 防止了 108 个真实漏洞中的 22 个(20.4%),同时保持合约功能;(4) FLAMES 成功阻止了真实世界的 APEMAGA 案件,通过合成一种预条件来缓解该攻击。FLAMES 表明,针对领域调整的大语言模型可以无需漏洞检测、形式规范或人工干预,自动生成面向生产环境的智能合约安全防御。我们发布了代码、模型权重、数据集和评估基础设施,以支持该关键领域的可重复研究。
引用
@article{arxiv.2510.21401,
title = {FLAMES: Fine-tuning LLMs to Synthesize Invariants for Smart Contract Security},
author = {Mojtaba Eshghie and Gabriele Morello and Matteo Lauretano and Alexandre Bartel and Martin Monperrus},
journal= {arXiv preprint arXiv:2510.21401},
year = {2025}
}