自动化逆向辅助利器 — Capa工具介绍

admin 2020年7月29日00:32:05评论553 views字数 1075阅读3分35秒阅读模式

概述 

近日,FireEye开源了一个逆向辅助工具capa,项目地址为:https://github.com/fireeye/capa,其目的是自动化提取样本的高级静态特征,快速地告诉用户该样本做了哪些恶意操作,同时该工具还随同发布了对应的IDA插件,方便逆向分析员快速定位恶意代码。

自动化逆向辅助利器 — Capa工具介绍

工具运行的结果如下,它显示了当前样本的恶意行为,以及对应的ATT&CK向量,如:混淆绕过、系统信息探测、C&C连接、持久化驻留等。

自动化逆向辅助利器 — Capa工具介绍

 

安装

使用命令:git clone --recurse-submodules https://github.com/fireeye/capa.git下载capa项目,其中包含了capa-rules子项目,该路径下包含了所有类型的检测规则。

自动化逆向辅助利器 — Capa工具介绍

 

下载好后,使用命令:pip install -e [path_to_capa]进行安装,安装好后,就能开始使用Capa了。

范例演示

下面主要介绍其IDA插件的使用,IDA打开样本后,点击File->Script File加载ida_capa_explorer.py脚本。

PS:该插件目前只适配于IDA7.2及以上版本。

自动化逆向辅助利器 — Capa工具介绍

本次实验使用的是BuleHero蠕虫样本(0F606E3FC83F7E8B175DDCAA39517CDD),样本加载成功后,IDA会新增一个capa explorer窗口,该窗口会显示匹配上的规则,鼠标移到上面可以看到规则的内容。

自动化逆向辅助利器 — Capa工具介绍

 

双击规则的Address的值,IDA会自动跳转到恶意代码相应的位置,如下,通过contain an embedded PE file规则,快速地定位到了样本中内嵌的PE文件。

自动化逆向辅助利器 — Capa工具介绍

 

勾上规则后,IDA会高亮显示对应的恶意代码段,从而方便逆向工程师进行分析。

自动化逆向辅助利器 — Capa工具介绍

规则的编写格式如下,第一个红框meta用于描述该规则的描述信息,第二个红框features就是用于匹配的逻辑规则,类似于yara,支持的类型有:api、string、bytes、mnemonic等。

自动化逆向辅助利器 — Capa工具介绍

 

了解规则的编写规范后,试着编写一个规则进行练手,如下规则仅用于演示。

可以识别出Lazarus组织的Dtrack后门。

自动化逆向辅助利器 — Capa工具介绍

 

将该规则dtrack.yal放到capa/rules目录下,加载样本B5AB935D750BE8B5B7C9CF3B87C772CA,插件就能自动识别出该样本为Dtrack后门。

自动化逆向辅助利器 — Capa工具介绍

 

capa的大致原理就是,提取样本的导入函数、字符串、汇编码,然后循环遍历规则进行匹配,实质上就是将逆向时手工筛选高危恶意代码的工作自动化,当然,对于一些高度混淆后的样本,建议先解混淆后再使用capa进行分析。

自动化逆向辅助利器 — Capa工具介绍

本文来源于互联网

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年7月29日00:32:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   自动化逆向辅助利器 — Capa工具介绍http://cn-sec.com/archives/78612.html

发表评论

匿名网友 填写信息