RetDec:一款功能强大的基于LLVM的可重定目标机器代码反编译器
2023-3-23 19:9:45 Author: FreeBuf(查看原文) 阅读量:18 收藏

 关于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.gitdocker 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

https://github.com/avast/retdec

参考资料:

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/

精彩推荐


文章来源: http://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2651220458&idx=4&sn=47e7f23cb11549778a2996060b52146c&chksm=bd1dfb618a6a7277d04623aa0f8d399bfb550aaea1a3337314b54160f43e2d384e4a6dfc9c2c#rd
如有侵权请联系:admin#unsafe.sh