2023 · 会议论文

BinaryInferno:面向二进制报文格式字段推断的语义驱动方法

BinaryInferno: A Semantic-Driven Approach to Field Inference for Binary Message Formats

无需对可执行程序插桩,即可从静态报文样本推断部分二进制报文格式。专用检测器识别浮点数、时间戳、长度、熵边界和序列化模式,再通过基于图的集成步骤协调各自的描述。作者对十种协议的样本开展评估,在每组 1,000 条报文且不使用分析者先验的设置下,报告顶层字段边界的精确率为 0.69、召回率为 0.73、假阳性率为 0.04。

研究范围与局限

假设数据无错误、未经压缩或加密、按字节对齐,并推断起始偏移一致的共有字段或载荷区域。可选字段、联合类型字段及不支持的序列化模式仍未解决;样本多样性会影响结果。26 组封装载荷测试集依据已知真实报文类型预先分组,并非自动发现。真实标签合并了在整个样本中均保持常量的相邻字段;文中注明的平均值排除了没有推断结果的样本。BI+ 额外使用给定的字节序和捕获时间范围。这些是字段边界结果,不代表完整语义恢复、协议状态推断或行为等价。

与本合集的关联

提供仅依赖报文轨迹的语义字段推断,与借助可执行程序的分析及协议状态学习互补,并明确列出假设和假阳性评估。

发表与复核详情

发表载体
NDSS 2023
发表状态
会议论文
出版/提交日期
2023 年(具体日期未核实)
日期依据
NDSS 官方论文与出版方提交的 Crossref 元数据确立出版年份为 2023。Crossref 未给出出版月份或日期;本条目不以会议日期或 DOI 注册日期代替。
DOI
10.14722/ndss.2023.23131

出版方、论文和 Crossref 的三位作者顺序、标题及 DOI 一致。未核实到 arXiv 标识符或论文集页码范围;PDF 共 18 页。论文给出的项目网址跳转到作者的 Tufts 页面,该页面链接了仓库。所审阅的 2023-05-02 快照在代码头部声明 GPL-3.0-or-later,并包含 GPLv3 LICENSE;第三方轨迹的来源与权利需另行核查。README 要求 Python 3、sklearn、scipy 和 parallel,未固定依赖版本;模式搜索启动脚本还使用 timeout,并将并行任务数写定为 30。输入为每行一条十六进制报文;时间戳搜索可接受给定的时间范围。实际入口文件为 binaryinferno/blackboard.py,README 的基本命令将其误写为 blackboard.by。仓库包含数据集目录,但其 README 仍是占位说明。本次未复现历史环境或确认数据集完整性;未下载捕获数据、二进制或模型载荷,也未运行上游代码或笔记本。

来源复核于

本合集仅做来源复核,未重新运行论文实验。请通过原始论文或 BibTeX 引用原作者。

一手来源

  1. https://www.ndss-symposium.org/ndss-paper/binaryinferno-a-semantic-driven-approach-to-field-inference-for-binary-message-formats/
  2. https://www.ndss-symposium.org/wp-content/uploads/2023/02/ndss2023_s131_paper.pdf
  3. https://api.crossref.org/works/10.14722/ndss.2023.23131
  4. https://binaryinferno.net
  5. https://www.eecs.tufts.edu/~chandler/binaryinferno.html
  6. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/README.md
  7. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/LICENSE
  8. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/binaryinferno/blackboard.py
  9. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/binaryinferno/deconflict.py
  10. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/binaryinferno/rep_parallel.sh
  11. https://github.com/binaryinferno/binaryinferno/blob/cb42a63ada74737c10d01e2c22f4502ba3983976/dataset/README.md