联系我们
4006-759388
浏览量:次 来源:华军科技数据恢复 发布日期:2020-08-22 16:56:54
由于美国国安局开发的EQUATION病毒会修改硬盘韧体,还有市面上充斥着WD硬盘修改通电时间软体。
WD硬盘到后期时,就锁住无法执行ATA Vendor Command(工厂指令).防止上述修改,但同样的也会妨碍对硬盘做数据恢复处理.就要绕过这样保护机制。
其原理可能是
1.MCU内microcode不同(需使用jtag修改)
2.外部EEPROM ROM执行码不同
翻译此文在思考其思路.
常用字眼讲解:
服务区(Service Area)存放硬盘盘片上的韧体区.意味者电路版上没有完整的韧体程式码.
模块(Module)韧体区有分类好的区域.有时为匹配参数.有时有程式码.有在盘片上的也有在ROM上.
现在越来越多的Palmer家族SMR硬盘,都被SED锁定(无法执行工厂指令集与安全防护),并且当服务区模块损坏或数据不可用时,我们必须使用特殊的未锁定SATA PCB才能访问并修复韧体。
最简单的方法是直接从中国购买这种PCB,但是这种解锁的PCB的价格很高。此外,有时由于错误的焊接过程或太多的ROM重写,未锁定的PCB可能变得无法操作。有必要购买这种PCB吗?让我们在下面的文章中对此进行讨论。
PC-3000具有制作未锁定PCB的功能,并在将来用于解锁其他Palmer家族硬盘,从而保持原始未锁定PCB完整。主要思想是获取损坏硬盘盘片服务区,保存所有服务区模块,然后将这些模块用于解锁ROM重建。为此,我们需要:
第一次,我们必须将解锁板PCB(在此步骤中保持ROM不更换为原故障资料硬盘的)锁在到我们故障硬盘(已被SED锁住):
并运行PC-3000 WDC Marvell Utility。该驱动器被自动检测为Palmer系列。像通常一样进行ROM备份。
如果尝试上传Module Dir跟加载LDR,会收到这错误:
静态模块读取错误检测到设备错误:“ VSC ERR INV FUNC CODE REQ”
首先,我们可以检查是否可以看到模块90。为此,我们执行Service Area->View module 90 information(使用服务区”->“查看模块90”信息),
如果磁头状况OK,我们将在主日志中看到一条消息:
View module 90 information
Total heads……………………….. : 2
Used heads………………………… : 2
Mdl 47 version…………………….. : 1007bI72
ROM Version version………………… : 00050006 (05.06)
Mdl 11 Version…………………….. : 00050006 (05.06)
所以我们的磁头状况不错。
准备重建ROM
让我们转到Tools->Utility extensions->ROM build from SA data ( 工具”->“实用程序扩展”->“根据SA数据构建ROM”_。在这里,我们必须按“ 从HDD ROM读取”按钮
并选择代码部分复选框。这样,我们将从解锁板中的供体ROM中获得ROM程式码。
接下来,我们按“ 从HDD SA读取”按钮
然后选择ROM模块这样,我们将从数据硬盘盘片上service area获得ROM匹配。
并合成产新的完整ROM ,保存到文件
然后使用“使用ROM->写入ROM”将新ROM写入HDD ,然后重新启动驱动器。下一步,我们需要将兼容的加载程序加载到HDD RAM中,以访问模块。
驱动器获得部分-XYZ- ID,现在我们可以检查是否可以通过ID访问模块。为此,我们转到工具->实用程序扩展->查看和编辑硬盘资源,“模块”选项
如果ID无法读取模块109(或任何其他模块),则问题可能出在ROM 的20B 模块被启用,因此我们必须再建立一20B不启用的完整ROM。
在同一ROM构建窗口中,我们按“ 从HDD SA读取 ”按钮,然后选择20B作为不启用
然后按一下[ 编辑]按钮,检查20B是否良好
再次构建ROM,保存并重新启动驱动器
检查模块109再次通过ID读取,不需要加载程序上传。如果可读,则需要将其保存到文件中。
因此,由于服务区现在是可读的,并且我们选择了正确的Flash目录20B,因此我们可以继续使用模块109在ROM中重建代码段。
请注意ROM程式码:它现在是准备根据109 Module重建的。
写入新的ROM并重新启动驱动器。它以完整的ID和LBA访问权开头:
这意味着我们已成功恢复了正确ROM,并且可以此ROM写入原来被锁定的SATA PCB。
接下来,我们转到原始的SED锁定PCB。我们需要先拆解ROM芯片
然后,我们将故障硬盘芯片放入编程器设备并读取以进行备份。DUMP保存到bin文件中。
现在是时候将新的患者ROM写入原始的患者PCB了。因此,我们使用先前保存的BIN文件做ROM写入。
将具有恢复后的ROM的患者PCB连接到PC-3000,启动WDC Marvell实用程序,然后检查硬盘是否具有完整ID跟资料访问权限。从这一刻起,我们不需要解锁PCB。
但是,如何使用我们新的未锁定SATA PCB来解锁另一个SED锁定的Palmer驱动器?
请注意,此过程仅适用于Palmer驱动器。其他锁定驱动器具有另一种ROM结构以及出厂时设置的其他模块,因此该ROM恢复技巧不起作用。
华军结语
1.此法太复杂.所以正常数据恢复建议还是买解锁板直接换ROM就可
2.无修改过的EEPROM ROM.只能搭配MCU解锁的电路板才可执行工厂指令
3.若PCB上MCU无解锁,则电路的上ROM要从原盘片上109模块做code跟匹配一起提取,才可执行工厂指令
4.从这篇可看出WD对于工厂指令控制在MCU上跟ROM上都有