行业解决方案查看所有行业解决方案
IDA 用于解决软件行业的关键问题。
发布时间:2022-10-09 17: 35: 22
本文是对公司常用的磁盘控制器固件进行逆向分享,从而找到其中的漏洞,供学习参考:

现在一切都准备好,打开硬盘驱动器并使用以下命令运行openocd:openocd-f interface/.cfg-f target/test.cfg
test.cfg应该是硬盘控制器使用的CPU的配置,对于大多数marvell CPU,这个配置应该可以工作。我不确定adapter_khz,所以我将我的设置为100(只要这个值低于它应该工作的实际值)。

如果一切顺利,您应该会看到上述内容。现在您可以使用telnet连接到端口4444并发出命令。

硬盘控制器中使用的Marvell芯片没有公开记录。因此,如果您想知道他们的内存映射等信息,您必须签署NDA并可能支付一些钱。相反,我要做的是尽可能多地从固件中找出可能,并可能通过探测电路。
当您无法拆焊和转储闪存时,获取固件并不容易,因此我们必须完成启动过程。大多数ARM CPU从地址0xFFFF0000开始执行,这称为复位向量。如果我们从该地址转储65536字节,我们将找到引导代码,这将是一个很好的起点。
为了转储内存,我们首先需要停止CPU,这可以通过命令“reset halt”来完成(要求我们首先重置系统,因为我们无法停止超过某个阶段)。如果重置命令由于任何原因不起作用,例如:JTAG的RST引脚未连接任何东西,您需要断开并重新连接硬盘驱动器的电源,然后快速接入JTAG并在短时间内发出停止命令几秒钟。使用命令“dump_image
”转储的内存。

当我们对转储的映像进行反汇编时,它是一些相当小的(4 kb)ARM引导代码,应该可以引导我们找到固件的其余部分。
原文地址:https://www.malwaretech.com/2015/04/hard-disk-firmware-hacking-part-2.html
展开阅读全文
︾
读者也喜欢这些内容:
IDA调试MBR切换到16位模式 IDA调试Apk修改寄存器v0
在逆向分析中,MBR和APK分别代表底层引导机制与上层移动应用的典型研究对象。前者常涉及16位实模式与汇编流程控制的深入理解,后者则要求熟练掌握Smali代码、寄存器模拟与调试器调用。IDA pro作为广泛应用的逆向工具,不仅支持对MBR类二进制的低位调试,也能在APK分析中发挥符号识别与寄存器控制优势。本文将围绕IDA调试MBR切换到16位模式和IDA调试Apk修改寄存器v0两个核心主题展开操作细节讲解。...
阅读全文 >
IDA动态调试的使用方法 IDA动态调试后自动更新变量名
在分析复杂程序时,仅靠静态反汇编往往无法看到完整的运行逻辑,尤其是加壳、动态调用、异或加密等场景。此时,借助IDA Pro的动态调试功能,可以实时捕捉程序执行流程,监控变量值和调用栈变化,大大提高分析准确性。更进一步,IDA Pro还支持调试过程中自动更新变量名和函数名,提高代码可读性。本文围绕“IDA动态调试的使用方法IDA动态调试后自动更新变量名”进行详解,帮助你从基础操作入手,深入掌握IDA的高级用法。...
阅读全文 >
IDA Pro如何批量分析文件 IDA Pro自动化脚本怎么写
说起逆向工程分析工具,不少人第一个想到的就是IDA Pro。只要掌握了IDA Pro自动化的一些小技巧,比如批量处理文件、用脚本自动分析,逆向工作的效率就会蹭蹭往上涨。这篇文章我就给大家聊聊IDA Pro如何批量分析文件 IDA Pro自动化脚本怎么写。...
阅读全文 >
怎么用IDA软件反汇编功能学习汇编指令 IDA反汇编功能如何进行多平台二进制分析
说到反汇编分析,很多人第一时间就会想到IDA。这款工具可以说是做逆向工程的“神器”,不管是学习汇编指令还是分析二进制文件,都非常给力。如果你是个初学者,刚接触反汇编,可能会对IDA的一些功能感到陌生,比如怎么用IDA软件反汇编功能学习汇编指令 IDA反汇编功能如何进行多平台二进制分析。别急,今天就带你一步步搞清楚。...
阅读全文 >