中文

STRIDE:分解可执行文件中的简单类型识别

密码学与安全 2024-07-04 v1

摘要

分解器广泛用于安全研究人员和开发人员进行二进制代码的逆向工程。虽然现代分解器擅长恢复指令、控制流和函数边界,但在编译过程中会丢失某些有用信息,例如变量的类型和名称。我们的工作旨在从剩余信息中预测这些变量的类型和名称。我们提出了 STRIDE,这是一种轻量级技术,通过匹配分解器标记的序列来预测变量名称和类型。我们在三个基准数据集上对其进行评估,发现 STRIDE 在进行变量重类型和重命名方面,达到了与最先进机器学习模型相当的性能,同时更简单更快。我们与两种最近的基于 Transformer 的 SOTA 模型进行详细比较,以了解哪些因素使我们的技术有效。我们用不到 1000 行 Python 实现了 STRIDE,并在 https://github.com/hgarrereyn/STRIDE 上以宽松许可证开源。

关键词

引用

@article{arxiv.2407.02733,
  title  = {STRIDE: Simple Type Recognition In Decompiled Executables},
  author = {Harrison Green and Edward J. Schwartz and Claire Le Goues and Bogdan Vasilescu},
  journal= {arXiv preprint arXiv:2407.02733},
  year   = {2024}
}