二进制编译优化分析
文章平均质量分 92
菊花JUHUA
这个作者很懒,什么都没留下…
展开
-
VulHawk Cross-architecture Vulnerability Detection with Entropy-based Binary Code Search 论文笔记
目的:对不同架构、不同编译器、不同优化级别编译的 IoT 固件映像进行二进制代码搜索来识别代码重用提出了一种新的中间表示函数模型,是一种用于跨体系结构二进制代码搜索的体系结构不确定模型将二进制代码提升为 IR,通过补充隐式操作数和删除冗余指令来保留二进制函数的主要语言使用 NLP 和卷积生成函数嵌入将编译器、架构和优化级别的组合称为一个文件环境,采用 divide-and-conquer 策略将CN2C_N^2CN2个跨文件环境场景的相似性问题转化为N−1N-1N−。原创 2023-03-21 14:32:55 · 527 阅读 · 1 评论 -
Fine-Grained Compiler Identification With Sequence-Oriented Neural Modeling 论文阅读笔记
现有的大多数方法都采用基于特征匹配或基于机器学习的策略来识别编译器细节,在检测精度或粒度上都有限制。在这项工作中,我们提出了 NeuralCI (基于神经建模的编译器识别) 来推断这些编译器细节,包括编译器家族、优化级别和单个函数的编译器版本。其基本思想是建立面向序列的神经网络来处理使用轻量级函数抽象策略生成的规范化指令序列。为了评估 NeuralCI 的性能,构建了一个由从 19 个广泛使用的现实项目中收集的 854, 858 个独特函数组成的大型数据集。原创 2023-02-26 10:25:00 · 97 阅读 · 1 评论 -
Identifying Compiler and Optimization Level in Binary Code From Multiple Architectures 论文笔记
在比较不同的二进制文件时,确保相同的编译器和编译标志尤其重要,以避免不准确或不可靠的分析。要理解使用了哪些标志和优化,需要对目标体系结构和所使用的编译器有深入的了解。在这项研究中,我们提出了两种深度学习模型,用于检测编译二进制文件中的编译器和优化级别。我们研究的优化级别是 x86_64、AArch64、RISC-V、SPARC、PowerPC、MIPS 和 ARM 架构中的 O0、O1、O2、O3 和 Os。原创 2023-02-22 16:02:37 · 103 阅读 · 0 评论 -
Automatic Recovery of Fine-grained Compiler Artifacts at the Binary Level复现
要重现第 6.1 节的结果,请运行。我们使用 LightGBM 的 MLJAR AutoML 包装器来方便地再现混淆矩阵。由于’ numpy ‘版本号不同,分类器可能会报告错误,但这些错误不会影响分类。一旦分类器终止,F-1 分数可以在’ automl1 /README 中找到。md ‘作为’ metric_value ‘,规范化的混淆矩阵 (图 2) 可以在’ AutoML_1/ 1_Default_LightGBM/confusion_matrix_normalized. png '中找到。原创 2023-02-20 14:41:46 · 59 阅读 · 0 评论 -
Automatic Recovery of Fine-grained Compiler Artifacts at the Binary Level 论文阅读笔记
识别二进制编译器配置使开发人员和分析人员能够定位由优化副作用引起的潜在安全问题,识别二进制克隆,并构建兼容的二进制补丁。现有的工作重点是使用语义特征和深度学习技术识别编译器家族、版本和优化级别。本文想要探索恢复二进制文件中每个函数的单独的、细粒度的优化传递。为此,我们开发了一种使用专门设计的功能以及直观和可理解的机器学习模型的方法。原创 2023-02-18 18:06:33 · 78 阅读 · 1 评论