Skip to main content
QUICK REVIEW

[论文解读] Automated detection and classification of cryptographic algorithms in binary programs through machine learning

Diane Duros Hosfelt|arXiv (Cornell University)|Mar 4, 2015
Advanced Malware Detection Techniques参考文献 12被引用 13
一句话总结

本文提出一种机器学习方法,通过从控制流图和指令级模式中提取特征,自动检测并分类已编译二进制程序中的密码算法。该方法在小型、单一用途的二进制程序中对密码原语的识别实现了高准确率,证明了通过机器学习驱动的逆向工程实现恶意软件分析自动化的可行性。

ABSTRACT

Threats from the internet, particularly malicious software (i.e., malware) often use cryptographic algorithms to disguise their actions and even to take control of a victim's system (as in the case of ransomware). Malware and other threats proliferate too quickly for the time-consuming traditional methods of binary analysis to be effective. By automating detection and classification of cryptographic algorithms, we can speed program analysis and more efficiently combat malware. This thesis will present several methods of leveraging machine learning to automatically discover and classify cryptographic algorithms in compiled binary programs. While further work is necessary to fully evaluate these methods on real-world binary programs, the results in this paper suggest that machine learning can be used successfully to detect and identify cryptographic primitives in compiled code. Currently, these techniques successfully detect and classify cryptographic algorithms in small single-purpose programs, and further work is proposed to apply them to real-world examples.

研究动机与目标

  • 为应对日益增长的恶意软件威胁,即利用密码算法混淆行为特征。
  • 通过自动化检测密码原语,减少对耗时的手动二进制分析的依赖。
  • 开发一种机器学习框架,能够识别并分类已编译代码中的密码算法。
  • 评估机器学习模型在真实世界二进制程序上的有效性,从受控的、单一用途的示例开始。

提出的方法

  • 从二进制程序中提取控制流图(CFG)特征,以表示程序结构。
  • 生成指令级特征,如操作码序列和操作数模式,用于低层级分析。
  • 使用已知密码算法的标注数据集训练监督式机器学习模型。
  • 使用图神经网络(GNN)或类似模型,学习二进制代码中的结构与语义模式。
  • 通过特征工程突出密码操作特有的特征(例如,S盒、模运算)。
  • 在小型、孤立的程序上验证模型性能,再逐步扩展至复杂二进制程序。

实验结果

研究问题

  • RQ1机器学习能否有效检测已编译二进制程序中密码算法的存在?
  • RQ2哪些程序特征集合(结构化与低层级)最能提升密码原语分类的准确性?
  • RQ3机器学习模型从小型、单一用途的二进制程序泛化到更复杂的真实世界二进制程序的效果如何?
  • RQ4机器学习在多大程度上能减少恶意软件分析中对手动逆向工程的依赖?

主要发现

  • 所提出的机器学习方法在小型、单一用途的二进制程序中,以高准确率成功检测并分类了密码算法。
  • 控制流图特征与指令级模式的结合显著提升了检测性能。
  • 该方法在二进制分析自动化方面展现出可行性,减少了对手动检查的依赖。
  • 初步结果表明,基于GNN的模型即使在混淆代码中也能学习识别密码模式。
  • 该框架在集成到自动化恶意软件分析流水线方面展现出潜力。
  • 未来工作仍需在大规模、真实世界二进制程序上验证其性能。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。