BinPRE:基于二进制分析提升协议逆向工程中的字段推断
软件工程
2024-09-04 v1 密码学与安全
摘要
协议逆向工程 (PRE) 旨在在源代码不可用时推断网络协议规范。具体而言,字段推断是 PRE 中的一个关键步骤,用于推断字段格式和语义。要执行字段推断,二进制分析基于 PRE 技术是主要方法类别。然而,这些技术面临两个关键挑战-(1) 当输入消息处理逻辑在不同协议实现之间变化时,格式推断不稳健;以及 (2) 语义推断受限于不充分且不准确的推断规则。为解决这些挑战,我们提出了 BinPRE,一种基于二进制分析的 PRE 工具。BinPRE 整合了 (1) 用于格式提取的基于指令的语义相似性分析策略; (2) 用于提高语义推断充分性的新型原子语义检测器库;以及 (3) 用于进一步提高语义推断准确性的聚类-精炼范式。我们对 BinPRE 与五个现有 PRE 工具进行了评估,包括 Polyglot、AutoFormat、Tupni、BinaryInferno 和 DynPRE。在八个广泛使用的协议上进行的评估结果表明,BinPRE 在格式和语义推断方面均优于先前的 PRE 工具。BinPRE 在格式提取上实现了 0.73 的完美率,在语义推断中分别实现了 0.74 (0.81) 的类型 (函数) F1 分数。BinPRE 的字段推断结果帮助提高了协议模糊测试的有效性,通过实现比最佳先前 PRE 工具高 5-29% 的分支覆盖率。BinPRE 还帮助发现了一个新的零日漏洞,该漏洞否则无法被发现。
引用
@article{arxiv.2409.01994,
title = {BinPRE: Enhancing Field Inference in Binary Analysis Based Protocol Reverse Engineering},
author = {Jiayi Jiang and Xiyuan Zhang and Chengcheng Wan and Haoyi Chen and Haiying Sun and Ting Su},
journal= {arXiv preprint arXiv:2409.01994},
year = {2024}
}
备注
Accepted by ACM Conference on Computer and Communications Security (CCS) 2024