如何查看西数硬盘固件升级程序rom跟固件是否匹配

查看: 4240|回复: 20
WD500G 把ROM作死了,现在WDR也认不出信息了,没有备份!
下载分438 分
原创币0 点
主题帖子积分
会员等级:
正式维客, 积分 79, 距离下一级还需 41 积分
WD500G 把ROM作死了,现在WDR也认不出信息了,没有备份!现在怎么办?是不是报废了?ROM我拆下来,在网上找了个刷进去,还是不行
是不是每个硬盘的ROM都不一样?要是找不到ROM,是不是玩完了?
下载分182 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 18, 距离下一级还需 12 积分
可以用数据恢复,把丢失的文件找回来!
下载分6644 分
原创币13 点
上传561 次
金币985 ¥
主题帖子积分
会员等级:
找到微码一样的BIOS,刷一个进去就好了。
下载分661 分
原创币2 点
下载238 次
金币4637 ¥
主题帖子积分
会员等级:
罗老师&&rom刷死了&&固件也没有&&家族看不到&&怎么识别微码&&只有版板号了
下载分797 分
原创币1 点
下载201 次
上传239 次
金币1329 ¥
主题帖子积分
会员等级:
去我网盘找找看有没有合适的固件
谢谢你共享出来,&
再请教下,你这个固件能否用WDR5.3刷?&
非常感谢,我上去看看!&
想要西数固件帮衬我网店
下载分254 分
原创币0 点
下载238 次
金币226 ¥
主题帖子积分
会员等级:
50元我收了
下载分8 分
原创币0 点
主题帖子积分
会员等级:
小小白, 积分 4, 距离下一级还需 6 积分
我也有一块被我整的和你这个现象一样的盘& &。。。。
下载分438 分
原创币0 点
主题帖子积分
会员等级:
正式维客, 积分 79, 距离下一级还需 41 积分
/ 去我网盘找找看有没有合适的固件
非常感谢,我上去看看!
下载分438 分
原创币0 点
主题帖子积分
会员等级:
正式维客, 积分 79, 距离下一级还需 41 积分
/ 去我网盘找找看有没有合适的固件
再请教下,你这个固件能否用WDR5.3刷?
下载分225 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 27, 距离下一级还需 3 积分
我也有一块被我整的和你这个现象一样的320G 1499的盘。
下载分2746 分
原创币0 点
金币3600 ¥
主题帖子积分
会员等级:
银牌维客, 积分 275, 距离下一级还需 125 积分
不知整好了没有,盼望好消息一同分享。
下载分438 分
原创币0 点
主题帖子积分
会员等级:
正式维客, 积分 79, 距离下一级还需 41 积分
主要是微码不知道,刷完做不完SF,流程跑不完,出不来盘!
下载分824 分
原创币0 点
金币3370 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
多谢罗工无私奉献。
下载分5 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 10, 距离下一级还需 20 积分
修硬盘,论坛里有教材吗?
下载分51 分
原创币0 点
主题帖子积分
会员等级:
小小白, 积分 4, 距离下一级还需 6 积分
修硬盘是个苦差事啊。
下载分38 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 10, 距离下一级还需 20 积分
我写刚写死一块ST160,郁闷呀
下载分38 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 10, 距离下一级还需 20 积分
ROM.回写了N遍了不行呀
是ROM刷不进去,还是不出盘?&
下载分438 分
原创币0 点
主题帖子积分
会员等级:
正式维客, 积分 79, 距离下一级还需 41 积分
ROM.回写了N遍了不行呀
是ROM刷不进去,还是不出盘?
出了F 什么命令也不能用&
下载分38 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 10, 距离下一级还需 20 积分
是ROM刷不进去,还是不出盘?
出了F 什么命令也不能用
下载分350 分
原创币0 点
下载148 次
金币728 ¥
主题帖子积分
会员等级:
银牌维客, 积分 234, 距离下一级还需 166 积分
不知整好了没有,盼望好消息一同分享。
实地毕业勋章
迅维实地面授培训学员勋章
远程学习勋章
迅维远程网络培训学员勋章
Powered by Discuz! X3.4 -ALicensed
& 2017 Comsenz Inc.查看: 557|回复: 10
请问我的板子该用什么固件呢?可以用指令线写回ROM吗?
TA的每日心情开心 01:53签到天数: 63 天[LV.6]五品郎中
&&请大家帮帮忙.知道后悔了...
该用户从未签到
买个编程器写ROM吧,如果板上不带ROM换板了
该用户从未签到
板有八脚芯片的,要编程器去刷。
TA的每日心情开心 01:53签到天数: 63 天[LV.6]五品郎中
哦,谢谢我试试!感谢.
TA的每日心情擦汗 19:20签到天数: 155 天[LV.7]四品道员
编程器便宜,但是没热风枪就麻烦,去年特意买了一套
TA的每日心情开心半小时前签到天数: 1283 天[LV.10]一品大学士
买一个DD3000& &PC3000&&MRT&&DFL 多大点事!!!!
该用户从未签到
这个板子的固件非常好找哦 我都有几个
TA的每日心情开心昨天&21:34签到天数: 1737 天[LV.Master]三朝元老
板有八脚芯片的,用编程器去刷,是LT的。
TA的每日心情奋斗 08:18签到天数: 332 天[LV.8]三品御史
什么情况,盘还转么。安全模式试一下
TA的每日心情开心 10:09签到天数: 1 天[LV.1]布衣百姓
从写模块看看如何对西数硬盘固件进行逆向分析(下) -
| 关注黑客与极客
如何对西数硬盘固件进行逆向分析(下)
共211180人围观
,发现 3 个不明物体
这篇文章其实是有很多个小部分,为了大家阅读方便,我将其整合成了上下两个部分(),其中有一些地方翻译起来较为困难(老外废话真的很多),望各位嘴下留情。
启动代码貌似只是分布在不同的内存地址,但没有什么简单的办法能够将它们全部导出,所以我决定从内存的0×开始导出区块然后所有的都来引用这个区块的外部地址(建立一个基本的代码地图)。
虽然硬盘模型之间的确其地址不同,但是我的布局可以给你一个好的思路。
在附近看了一会之后,我发现它会从一些地方读取代码到内存中,所以我猜这里是闪存。
闪存是从一个跨越0到0×120的表开始(起始的第一个块),每个表项32字节并且使用相同的格式(参考镜像)。每个区块都有1到n的id,第一个块是个例外值总为0x5A。
0x5A处的区块是引导程序,它从剩下的闪存中读取并解压代码,我不确定,但是却反证了一个问题。 我想在入口点断下引导程序,听起来很容易,但并非如此。
1.在引导进程的一些点上我的硬件断点没有生效,有可能是处理器重写了寄存器,或者禁用了它们;但我还是没有找到问题。这意味着我无法在引导程序入口点处下断点(0×19000)。
2.复杂加载和执行引导程序的代码在ROM中,所以我没有办法下软件断点。
3.观测点好像也没有生效,甚至在断点停止工作之前我没有办法让代码段在任何内存上。
4.大部分不在ROM中的代码都是用分页技术,当他们需要的时候,会在内存中读取特定区域的代码,然后在他们没有时进行替换,防止使用软件断点。
总之情况比我想象的困难的多所以我决定买一个扩展到EEPROM芯片驱动,来替代在MCU中重新构建。 通过这种方法我可以用EEPROM程序往闪存芯片里面写入软件断点。
硬件和固件使得这个磁盘相当统一,除了固件现在存储在一个256k的SPI闪存芯片中,来替代存在MCU内存中。我做的第一件事是用万用表来查看PCB的顶端是否有地方连接到闪存芯片(所以我们有从磁盘里把PCB弄下来)。
WP#和HOLD#都存在VCC中,所以这不是什么问题,剩下需要的pin点需要提出到E11周围的测试点。 我尝试连接我的TUMPA的SPI接口到测试点上并使用通信软件,但是我没有办法检测到芯片。 我不确定是不是我的TUMPA没有电路编程的能力,或者数据线上有其他填充物。
如果其他方法都无效的话,我会试着找一个SOIC芯片,一个好的EEPROM编程器和焊台。同时我会尝试找到是什么原因使我的断点停止工作并修复它。
尝试才会有新的发现
这个周末我有了大的突破,这使我否定了我之前大部分的研究。我知道其实“不要重复造轮子”并不总是最好的选择,特别是涉及到信任其他人的研究结论时。
一个主要的目标是在能够物理访问的情况下,找到快速简单的方法对硬盘进行重新编程。在博客上,他将闪存芯片从PCB上弄下来并将它附在一些veroboard上,所以他能够在硬盘和闪存编程器之间进行数据交换。显然这对我不是特别有用,因为我不得不一直断开和重连闪存芯片,对于快速感染磁盘特别不切实际。
我之前就知道,在有管理员或root账号的情况下从操作系统内部拷出WD硬盘固件是有可能的。硬盘必须运行以便能够接收SATA命令,并且必须重启来加载新的固件。如果新的固件有错误磁盘将无法启动,因此固件不能被修复(通常这样硬盘就变砖了)。事实上我是想破解固件,所以我只能用其他的方式来拷贝。
在线电路编程
当电路一直连接时,在电路中编程(ICP)方法能够在闪存芯片和其他组件中进行编程。在上一篇文章中我已经能够找到连接到闪存芯片的测试端口了,但没有办法进行编程。然而,在周末做了一些实验以后我已经能够使用ICP了。
ICP最大的问题在于为了写入闪存芯片你需要打开它的电源,但是因为它与其他电路连接,所以最终会给其他芯片供电,这会在不同的总线上发送数据干扰你跟闪存之间的通信尝试。&
为了防止SPI总线上的干扰,通常只需要按住复位按钮或者将复位信号接地即可,这会导致系统被重置并且无法启动(让你能够不间断的访问闪存总线)。
下面是我做的尝试:
1.直接用3.3v的电源供电
2.按住系统重置按钮的时候直接用3.3v的电源供电
3.通过插入HD接口直接给整个系统供电
4.按住系统重置按钮的时候插入HD接口直接给整个系统供电
由于所有东西都没有工作,我几乎都快放弃了(我的SPI编程器甚至都没法检测到闪存芯片),但当我在周六决定做最后一次尝试时,它就马上工作了(某种程度上)。
SPI编程器能够检测到闪存芯片,但是读出来的大部分数据都是错的。检查之后我发现VCC(电源)线从测试点松开挂在桌子上了。所以如果VCC线都没有连接并且系统都没有接进来,怎么会读取到闪存芯片呢?
通过更多的实验我发现电路是以这样一种方式设置的,一些被发送到MISO引脚的电压(大概它的1.2v)以某种方式反馈到VCC轨道然后启动芯片。我不是电路专家,这让我非常困惑,但是这告诉我在电路里读取芯片是可行的,我只想需要学习一些诀窍。
通过大量的实验和一些失败之后,我发现按住系统的重置按钮(大部分ICP问题的解决方案)是唯一的问题。我已经让JTAG连接到系统这样会拉低重置引脚(保持重置),所以我就不需要自己手动保持重置了。在断开JTAG的SRST引脚之后,只要磁盘没有插入一切都工作的很好然后我直接给闪存芯片上电。看来这个系统是专门为ICP做的,不要一直重置,否则会出现一些问题。
这是上一篇文章图的修改版本
如果你有一个支持SPI编程的USB设备并且它是由“flashrom”支持的,就像我做的那样。你可以将它连接到电脑上,使用flashrom来读写和修改闪存。TUMPA是很好的单板,因为它有两个信道,所以你不需要为了使用SPI而断开JTAG。
不要重新造轮子
在我开始决定破解之前我就决定看一些别人的研究来找点灵感。很机智,对吗?然而事实证明我找到大部分研究资料都是错的或者不适合我的硬盘。
当连接到JTAG然后出现“reset halt”命令的时刻我记得很清楚,在代码运行之前系统暂停住了,引导程序从闪存启动执行的时候,我能够单步跟踪引导程序。
通过在闪存里写入我的代码折腾一番之后,我意识到在系统停下来之前它已经被读到内存并执行很久了。事实上0xFFFF0000处的代码只是调试控制台,只有下达停止命令的时候才会跳转到这,或者从闪存读取或执行代码失败的时候。此时,JTAG已经能够连接并且出现命令行了,整个内核都已经完成加载和初始化,这就是为什么我没有办法在引导程序上下任何断点的原因。
我可以写断点到闪存来产生一个异常让系统加载失败,然后删掉断点然后手动跳转到引导程序,但不知道什么原因第二次系统没有正确引导。这不是什么大问题,因为我能够一直调试引导程序直到某一个点(我写的代码只要在引导的早期执行,我就能够调试),但是后来我找到为什么第二次失败,我发现在启动阶段后期和内核初始化前期(我无法调试)有一个时间窗口。
我的主要目的是通过在目标电脑上执行程序和物理访问硬盘驱动的时候向固件插入代码,我已经实现了。现在来看看我能做什么。
如果你意识到原来攻击者那么容易就能够感染你的硬盘驱动固件,这里有两个快速的方法你可以做的。
1. 从主机通过SATA接口发送固件更新命令(需要root或者管理员权限)
2. 通过按下硬盘底部的测试点创建一个可以擦除固件的便携式SPI编程器。(只需要5秒)
就在5分钟之后,我发现了最后一点困惑:第二个CPU核心。当我意识到它有一个单一的硬编码定义tap(测试存取端口)的时候我去浏览OpenOCD配置,我决定将它注释掉并且让OpenOCD尝试自动发现tap。
自动探测发现相同的id有两个TAP,所以我假设有两个不同的核心,因此我需要修改我的配置。
下面是让两个核心都工作的配置设置:
经过几次小的调整,剩下需要做的就是运行OpenOCD,然后看看新的内核里有什么秘密。
当我通过IDA连接到JTAG,一切都清晰了。我可以看到第二个核心停在我写到闪存芯片的断点上了,这是负责加载和执行引导程序的核心,我之前看到的核心只是在一个循环中等待。 很明显引导代码肯定跟核心2的不同,因为另一个引导程序只是循环到稍微后面一点点时间。
所以正如你所见,只需要使用很少的经验我就能够JTAG一个WD硬盘,导出固件,甚至发现如何使用ICP读写闪存芯片。我肯定会多花一些时间来研究固件来看看它是怎么工作的,但是这些超出了这篇文章的范围,为了避免让大家觉得无聊,这是这个系列的最后一篇文章。如果我发现任何有趣的东西,我将会把我的发现发布到白皮书并上传一些演示视频。
我想继续发布硬件和软件方面的文章(以及一些教程),如果你有什么建议可以给我发邮件。
现在已经很清楚了,核心1引导只是调试/管理代码,同时核心2有一个完全独立的代码区域映射到相同的地址。核心2不单单从闪存加载引导代码,同时也负责大部分有趣的操作比如操作SATA请求和写入缓存描述符。
*参考来源: ,FB小编老王隔壁的白帽子翻译,转载请注明来自FreeBuf黑客与极客()
腾讯手机管家
有没JTAG刷砖机的教程
黑与白的精彩
学过的操作系统内核都还给教科书的作者了。
必须您当前尚未登录。
必须(保密)
这家伙太懒,还未填写个人描述!
关注我们 分享每日精选文章【数据恢复技术】西数硬盘常用固件模块编号及作用介绍
来源:北京达思数据恢复罗工&&&&阅读:2080&&&&发布时间: 16:15:26
西数硬盘常用固件模块编号及作用介绍模块ID 模块作用 01 模块目录模块。记录了每个固件模块的位置,大小信息。非常重要的模块 02 硬盘ID信息模块。记录了硬盘的型号,SN号等信息。损坏后会导致硬盘不识别。可以用备份或者相同固件版本的模块来替换。重要模块03 段位表模块。就是把容量分成若干个段来分别进行管理。非常重要模块。损坏后会导致硬盘不识别,全盘感叹号等故障。(必须原始) 04 段位表主备份05 段位表备份1 06 段位表备份207 段位表备份3 0C 模块表11 ATA引导模块,又称:LDR文件重要模块。损坏后会导致硬盘不识别。可以用相同固件版本的11号来替换。 12 微程序代码的一部分13 微程序代码的一部分 14 微程序代码的一部分15 微程序代码的一部分 17 微程序代码的一部分19 微程序代码的一部分 1B 微程序代码的一部分1C 微程序代码的一部分 1E 微程序代码的一部分1F 微程序代码的一部分 21 SMART22 SMART 23 SMART保留24 SMART保留 25 加密硬盘的加密键28 工厂自检测试脚本。(自校准能否成功的关键的模块) 29 微程序代码的一部分
2A 微程序代码的一部分 2D 除错日志2E 微程序代码的一部分 2F 微程序代码的一部分31 编译器模块。损坏后硬盘会全盘感叹号。可以用重建编译器功能修复该模块。(非常重要模块,必须原始) 32 Relo-List候选缺陷模块。损坏后会导致全盘感叹号。修法同31号模块修法一致33 主要缺陷列表。简称P表。损坏后会导致硬盘不认盘或者坏道非常多。可以通过日志重新生成33号模块。重要模块 34 G-List缺陷表,简称G表。35 固件区缺陷表 36 T-List表,简称道表,也就是磁道缺陷表37 增益调用数据模块 38 加密硬盘的加密键39 微程序代码的一部分 40 用户区适配数据.损坏后会导致硬盘不识别或全盘感叹号。(非常重要模块,必须原始)41 适配参数。损坏后会导致硬盘全盘感叹号。 42 适配参数。损坏后会导致硬盘全盘感叹号。43 适配参数。损坏后会导致硬盘全盘感叹号。 49 适配参数。损坏后会导致硬盘全盘感叹号。4A 适配参数。损坏后会导致硬盘全盘感叹号。 4E 微程序代码的一部分50 参数表1 51 参数表252 参数表3 53 参数表461 微程序代码的一部分 6B 微程序代码的一部分6E 微程序代码的一部分 91 自校准模块92 自校准模块 93 自校准模块9E 自校准模块 B5 WRRO日志模块B6 工厂自测试模块 B7 测试数据模块B8 插入单一测试通信模块 B9 工厂自检测模块BA 工厂自检测模块 BB 工厂自检测模块BC 工厂自检测模块 BE 工厂自检测模块BF 工厂自检测模块 C1 自校准模块C2 自校准模块 C3 调整磁道密度C4 磁头读写参数,飞檐高度调整 C5 校准脚本C7 自校准模块 C8 调整扇区密度CA 自校准模块 CB 自校准模块CC 自校准模块 CD 自校准模块CE 自校准模块 CF 自校准模块D0 工厂自检测试模块 D2 工厂自检测试模块D3 工厂自检测试模块 D4 工厂自检测试模块D5 工厂自检测试模块 D6 工厂自检测试模块D7 工厂自检测试模块 D9 工厂自检测试模块DA 工厂自检测试模块 DB 工厂自检测试模块DC 工厂自检测试模块 DD 工厂自检测试模块DE 工厂自检测试模块 DF 工厂自检测试模块E0 工厂自检测试缺陷模块 E1 工厂自检测试缺陷模块E2 工厂自检测试缺陷模块 E3 工厂自检测试缺陷模块E4 工厂自检测试缺陷模块 E5 工厂自检测试缺陷模块E6 工厂自测试日志 E7 工厂自测试参数模块E8 工厂自检测试磁头0缺陷日志 E9 工厂自检测试磁头1缺陷日志EE RRO数据日志 F0 自校准日志F1 自校准日志 F7 清除单位时间错误数据FA Butterfly日志 FB 工厂自检测试模块FC 工厂自检测试模块 FD 工厂自检测试模块FE 工厂自检测试模块 102 磁头位图模块备份103 ROM适配模块备份 105 ROM编译器备份107 ROM模块0B备份 108 IBI数据包109 ROM备份 110 模块目录(最基础部分)1002 自校准引导程序 1003 自校准引导程序2000 0头参数调整日志 2001 1头参数调整日志2002 1头参数调整日志 2003 3头参数调整日志2004 4头参数调整日志 2005 5头参数调整日志2006 6头参数调整日志 2007 7头参数调整日志2010 0头部门测试日志
1头部门测试日志,2头部门测试日志2013 3头部门测试日志 2014 4头部门测试日志2015 5头部门测试日志 2016 6头部门测试日志2017 7头部门测试日志 2020 0头读/写测试日志2021 1头读/写测试日志 2022 2头读/写测试日志2023 3头读/写测试日志 2024 4头读/写测试日志2025 5头读/写测试日志 2026 6头读/写测试日志2027 7头读/写测试日志 2030 0头磁道测试日志2031 1头磁道测试日志 2032 2头磁道测试日志2033 3头磁道测试日志 2034 4头磁道测试日志2035 5头磁道测试日志 2036 6头磁道测试日志2037 7头磁道测试日志 2040 0头信道参数主机测试日志2041 1头信道参数主机测试日志 2042 2头信道参数主机测试日志2043 3头信道参数主机测试日志 2044 4头信道参数主机测试日志2045 5头信道参数主机测试日志 2046 6头信道参数主机测试日志2047 7头信道参数主机测试日志 2050 0头所在区域配置参数调整日志2051 1头所在区域配置参数调整日志 2052 2头所在区域配置参数调整日志2053 3头所在区域配置参数调整日志 2054 4头所在区域配置参数调整日志2055 5头所在区域配置参数调整日志 2056 6头所在区域配置参数调整日志2057 7头所在区域配置参数调整日志 2060 0头信道参数确认/注册登记2061 1头信道参数确认/注册登记 2062 2头信道参数确认/注册登记2063 3头信道参数确认/注册登记 2064 4头信道参数确认/注册登记2065 5头信道参数确认/注册登记 2066 6头信道参数确认/注册登记2067 7头信道参数确认/注册登记 8000 测试表8001 日志 8002 日志8003 数据配置字符串 8004 脚本头8005 日志 8006 日志
8007 日志 8008 日志8009 日志 800A 日志802F 02模块备份 8032 02模块备份802E 02模块备份
达思公司联系方式
达思北京(总部)数据恢复数据恢复服务咨询:010-数据恢复培训咨询:010-达思数据恢复软件:010-达思软件技术支持:010-达思总部数据恢复实验室: &010-数据恢复实训室: &010-电子取证实验室: &软件销售QQ:&&远程协助QQ:&&1894682邮件联系:邮件支持:24小时免费电话:400-700-001724小时监督电话:
用QQ扫一扫加入达思QQ群版权声明:如果网站侵犯了您的合法著作权宜,请发送邮件至我,经核实后,我会在24小时内删除该资源!}

我要回帖

更多关于 西数固件升级 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信