VxHunter:针对VxWorks设备的固件分析工具

栏目: Python · 发布时间: 5年前

内容简介:VxHunter是这次我们在BlackHat AISI 2019中进行演讲议题中所使用到的工具。主要用于针对基于VxWorks操作系统的嵌入式设备进行固件分析及构造基于串口命令行的调试工具,项目的地址是https://github.com/dark-lbp/vxhunter。(1)固件分析工具(firmware_tools)VxHunter的固件分析工具是IDA Pro及Ghidra这两个逆向工具的插件脚本,主要的功能是自动分析加载的VxWorks固件(VxWorks image)的内存加载地址并进行Reb

1、什么是VxHunter

VxHunter是这次我们在BlackHat AISI 2019中进行演讲议题中所使用到的工具。主要用于针对基于VxWorks操作系统的嵌入式设备进行固件分析及构造基于串口命令行的调试工具,项目的地址是https://github.com/dark-lbp/vxhunter。

2、VxHunter主要功能介绍

(1)固件分析工具(firmware_tools)

VxHunter的固件分析 工具 是IDA Pro及Ghidra这两个逆向工具的插件脚本,主要的功能是自动分析加载的VxWorks固件(VxWorks image)的内存加载地址并进行Rebase,识别内嵌符号表后修复函数名。下面是VxHunter在Ghidra这个近期非常热门的开源逆向工具中的使用方法。

首先我们需要使用正确的处理器类型加载VxWorks镜像到Ghidra中。

VxHunter:针对VxWorks设备的固件分析工具

成功加载后会提示是否需要进行分析,此时选择No,因为目前我们并不知道这个VxWorks固件的正确加载地址。

VxHunter:针对VxWorks设备的固件分析工具

随后就可以利用Ghidra中的脚本管理器(sc ript Manager)执行我们的VxHunter脚本,执行过程如下所示。VxHunter会自动去分析这个文件Rebase到正确的加载地址并根据符号表开始修复函数名。

VxHunter:针对VxWorks设备的固件分析工具

脚本执行完成后的效果如下图所示,此时我们就可以开始进行静态分析了,比如找找硬编码账号啥的^_^。

VxHunter:针对VxWorks设备的固件分析工具

(2)串口命令行调试工具(serial_debuger)

VxWorks不同于Linux,无法通过上传静态编译的GDB等工具进行调试,通常来说要调试VxWorks系统必须要在编译VxWorks固件时编入例如WDB之类的调试功能。然后大部分情况下市面上的VxWorks设备都没有编入调试功能,这也导致了我们无法去分析设备漏洞的真正原因及危害。VxHunter就是设计来解决这个问题的,这个工具基于 Python 编写,主要通过设备的串口命令行的内存读写指令,将基于汇编代码的调试shellcode写入到设备内存中后通过封装好的Python调试函数进行下断点,查看VxWorks task信息等一系列的操作。

具体可以参考我们在BlackHat的议题PPT

(https://github.com/dark-lbp/vxhunter/blob/master/docs/Dive%20into%20VxWorkis%20Based%20IoT%20Device%20-%20Debug%20the%20Undebugable%20Device%20-%20resize.pdf)

在PPT中有对串口调试工具的原理以及CVE-2018-19528漏洞的分析。

这个 YouTube视频 是利用VxHunter调试CVE-2018-19528漏洞的Demo演示。

3、总结

基于VxWorks的嵌入式系统在工业控制及IoT领域都有着广泛的应用 在航空航天、工业控制、网络通讯及医疗领域VxWorks系统都有广泛的应用,然而针对VxWorks相关的安全研究文章及工具都非常缺乏,这次开源VxHunter也希望能借此机会抛砖引玉吸引更多安全研究人员来关注VxWorks系统的安全性。

# 相关链接 #

* Ghidra项目地址 -

https://github.com/NationalSecurityAgency/ghidra

* 相关议题 -

https://www.blackhat.com/asia-19/briefings/schedule/#dive-into-vxworks-based-iot-device-debug-the-undebugable-device-13834

* VxHunter项目地址 - https://github.com/dark-lbp/vxhunter

* 调试Demo - https://www.youtube.com/watch?v=ulO8MsoDLLk

声明:本文来自银河安全实验室,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。


以上所述就是小编给大家介绍的《VxHunter:针对VxWorks设备的固件分析工具》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

垃圾回收算法手册:自动内存管理的艺术

垃圾回收算法手册:自动内存管理的艺术

Richard Jones、Eliot Moss、Antony Hosking / 王雅光、薛迪 / 机械工业出版社 / 2016-3 / 139

在自动内存管理领域,Richard Jones于1996年出版的《Garbage Collection:Algorithms for Automatic Dynamic Memory Management》可谓是一部里程碑式的作品。接近20年过去了,垃圾回收技术得到了非常大的发展,因此有必要将该领域当前最先进的技术呈现给读者。本书汇集了自动内存管理研究者和开发者们在过去50年间的丰富经验,在本书中......一起来看看 《垃圾回收算法手册:自动内存管理的艺术》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具