OFRAK:一款功能强大的源代码分析和修改平台
2023-1-4 19:8:40 Author: FreeBuf(查看原文) 阅读量:13 收藏

 关于OFRAK 

OFRAK全称为Open Firmware Reverse Analysis Konsole,该工具是一款功能强大的源代码分析和修改平台,并由下列功能组成:

1、识别和解包各种源代码格式;

2、使用逆向工程工具分析解包后的源代码;

3、使用强大的代码修补策略修改和重新打包源代码文件;

OFRAK支持下列嵌入式固件文件格式:

1、压缩文件系统;

2、压缩&校验和固件;

3、引导加载程序;

4、RTOS/OS内核;

 功能介绍 

OFRAK能够给广大用户提供下列功能:

1、一个图形化的用户接口,支持以交互式和可视化的方式查看源代码;

2、一个Python API,可以用来读取和复制源代码;

3、递归识别、解压缩和重新打包许多文件格式,包含从ELF可执行文件到文件系统存档,再到压缩和校验和固件格式;

4、集成了强大的分析后端(angr、Binary Ninja、Ghidra、IDA Pro);

5、通用接口设计实现的可扩展性,可轻松编写额外的OFRAK组件,并添加对新文件格式或源码操作的支持;

 环境搭建 

我们推荐广大研究人员在Docker镜像中运行OFRAK,OFRAK的某些功能也可以在macOS上本地运行。

Docker配置:

python3 -m pip install PyYAML
python3 build_image.py --config ofrak-ghidra.yml --base --finish

OFRAK使用了GitLFS,因此我们需要在克隆项目代码前安装并配置好GitLFS

git lfs pull

 工具下载 

git clone https://github.com/redballoonsecurity/ofrak.git

 工具使用 

OFRAK最好的使用方法就是通过交互式教程来使用,我们可以直接运行下列命令:

make tutorial-image  # create the Docker image for the tutorial
make tutorial-run

几分钟之后项目便可以部署完成,运行之后,我们就可以在浏览器中访问localhost:8888来使用OFRAK了。

 GUI前端 

该工具提供了一个基于Web的GUI图形化用户接口,我们可以在这个GUI中查看到一个带有导航功能的资源树。对于所选的资源,还提供了:元数据、十六进制或文本导航,以及用于按熵、字节类或大小快速导航的迷你地图侧边栏。

除此之外,GUI还允许常见的Python API执行的操作,如注释、解包、分析、修改和打包资源:

 工具使用演示 

视频地址:https://ofrak.com/assets/demo.mp4

 许可证协议 

本项目的开发与发布遵循OFRAK社区开源协议。

 项目地址 

OFRAK:https://github.com/redballoonsecurity/ofrak

参考资料

https://ofrak.com/

https://git-lfs.github.com/

精彩推荐


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