FoC:利用LLM识别剥离二进制文件中的加密函数
密码学与安全
2025-04-28 v3
摘要
分析剥离二进制文件中加密函数的行为是一项具有挑战性但必不可少的任务。与典型代码相比,加密算法表现出更高的逻辑复杂性,但在病毒分析和遗留代码检查等领域其分析是不可避免的。现有方法通常依赖于数据或结构模式匹配,导致泛化能力不佳且需要人工操作。在本文中,我们提出了一个名为FoC的新框架,以识别剥离二进制文件中的加密函数。在FoC中,我们首先构建一个二进制大语言模型(FoC-BinLLM),以用自然语言总结加密函数的语义。FoC-BinLLM的预测对微小变化(如漏洞补丁)不敏感。为缓解这一问题,我们在FoC-BinLLM的基础上进一步构建了一个二进制代码相似性模型(FoC-Sim),以创建对变化敏感的表示,并利用它在数据库中检索未知加密函数的相似实现。此外,我们构建了一个加密二进制数据集用于评估并促进该领域的进一步研究。同时,设计了一种自动化方法来为大量二进制函数创建语义标签。评估结果表明,FoC-BinLLM在ROUGE-L分数上比ChatGPT高出14.61%。FoC-Sim的Recall@1比以往最佳方法高出52%。此外,我们的方法在病毒分析和1-day漏洞检测中也展示了实用能力。
引用
@article{arxiv.2403.18403,
title = {FoC: Figure out the Cryptographic Functions in Stripped Binaries with LLMs},
author = {Xiuwei Shang and Guoqiang Chen and Shaoyin Cheng and Shikai Guo and Yanming Zhang and Weiming Zhang and Nenghai Yu},
journal= {arXiv preprint arXiv:2403.18403},
year = {2025}
}
备注
38 pages, 10 figures