freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

RetDec:一款功能强大的基于LLVM的可重定目标机器代码反编译器
2023-03-14 19:41:48
所属地 广西

关于RetDec

RetDec是一款功能强大的基于LLVM的可重定目标机器代码反编译器,该工具支持的反编译器不限于任何特定的目标体系结构、操作系统或可执行文件格式。

当前版本的RetDec支持下列文件格式:

ELF

PE

Mach-O

COFF

AR(文档)

Intel HEX

原始机器代码

当前版本的RetDec支持下列体系结构:

32位:Intel x86、ARM、MIPS、PIC32和PowerPC

64位:x86-64,ARM64(AArch64)

功能介绍

1、提供带有详细信息的可执行文件静态分析数据;

2、编译器和封装器检测;

3、加载和指令解码;

4、基于签名的静态链接库代码移除;

5、提取和利用调试信息(DWARF、PDB);

6、指令语法重构;

7、C++类层次结构(RTTI、vtables)的检测和重构;

8、从C++二进制文件(GCC、MSVC、Borland)中分离符号;

9、函数、类型和高级构造器重构;

10、整合反汇编工具;

11、以两种高级语言输出:C和类似Python的语言;

12、生成调用图、控制流图和各种统计信息;

工具安装

广大研究人员可以访问该项目的【Releases页面】下载预编译的RetDec稳定版。

当前版本的RetDec支持Windows 7+、Linux、macOS和FreeBSD操作系统,请预留大约5-6GB的磁盘空间。

工具使用

Windows

1、安装Microsoft Visual C++ Redistributable for Visual Studio 2017

2、安装UPXGraphviz

3、如需反编译名为text.exe的代码文件,可以运行下列命令:

$RETDEC_INSTALL_DIR\bin\retdec-decompiler.exe test.exe

Linux

1、安装UPXGraphviz

2、如需反编译名为text.exe的代码文件,可以运行下列命令:

$RETDEC_INSTALL_DIR/bin/retdec-decompiler test.exe

使用RetDec代码库

我们还可以直接在自己项目(需要使用CMake构建)中使用RetDec库。RetDec安装时包含了所有需要的头文件、代码库和CMake脚本。

接下来,就可以通过下列方式来使用其组件了:

find_package(retdec 5.0 REQUIRED

   COMPONENTS

      <component>

      [...]

)

target_link_libraries(your-project

   PUBLIC

      retdec::<component>

      [...]

)

Docker中构建RetDec

构建镜像

在Docker中构建RetDec不需要在本地安装所需的依赖库,直接运行下列命令即可构建RetDec镜像:

docker build -t retdec - < Dockerfile

上述命令将从代码库的主分支构建镜像。

除此之外,我们也可以使用本地代码库拷贝来构建镜像,即使用开发版本的Dockerfile.dev:

git clone https://github.com/avast/retdec.git

docker build -t retdec:dev . -f Dockerfile.dev

容器运行

如果你的uid不是1000,请确保RetDec能够访问目录中包含的输入代码文件:

chmod 0777 /path/to/local/directory

接下来,你就可以在容器中运行反编译器了:

docker run --rm -v /path/to/local/directory:/destination retdec retdec-decompiler /destination/binary

许可证协议

本项目的开发与发布遵循MITZlib开源许可证协议。

项目地址

RetDec:【GitHub传送门

参考资料

https://retdec.com/static/publications/retdec-slides-botconf-2017.pdf

https://www.youtube.com/watch?v=HHFvtt5b6yY

https://retdec.com/static/publications/retdec-slides-recon-2018.pdf

https://retdec.com/publications/

# 反汇编 # 反编译 # 反编译器 # 机器码
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录