DETAILS
由ATA密碼淺談西部數據硬盤固件模塊


在取證工作中,經常會遇到硬盤加密的情況,如圖1所示。電腦正常開機,但需要正確輸入硬盤口令,才可解除硬盤鎖定狀態,否則硬盤無法被訪問。

這也就意味著,如果我們不解鎖硬盤的話,是沒有辦法訪問數據做數據固定的。此類加密我們稱之為ATA加密。此類加密允許密碼長度為32個字符,密碼可以是大小寫字母、數字和特殊符號。

圖片 1.png

(圖1)

遇到此類問題,我們通常需要借助PC3000、Atola等專業工具對硬盤進行解鎖后才可正常訪問或者制作磁盤鏡像。

當然,本文不是專業工具的使用介紹,本文意在為大家介紹解鎖原理以及固件的相關知識。所以文章中將主要使用免費、開源的工具為大家介紹。

首先,我們將加密的硬盤掛載到MHDD(MHDD是一款俄羅斯的免費硬盤測試軟件)查看硬盤狀態,如圖所示。通過狀態寄存器可以看到,硬盤正常復位,其中DRSC表示硬盤尋道完成、DRDY表示硬盤準備就緒;通過硬盤錯誤寄存器可以看到,硬盤PWD狀態指示燈處于高亮狀態,表示硬盤被加密。另外軟件也做出了相應的提示:“WARRING:THIS DRIVE IS LOCKED BY ATA PASSWORD”。圖2所示。

圖片 2.png

(圖2)

此時硬盤處于ATA加密狀態,前文交代,處于ATA加密狀態是不可能正常訪問硬盤數據的。我們可以對硬盤進行邏輯掃描測試加以驗證。圖3所示。

圖片 3.png

(圖3)

我們可以清楚的看到,錯誤寄存器,ABRT處于高亮,ABRT表示指令被終止,由于全盤不可訪問,所以發送的硬盤檢測指令不能被執行。所以此狀態下就更不可能做數據固定了。

 

什么是硬盤固件

我們討論密碼之前,先了解一下什么是固件?對于硬盤固件的解釋有很多種,通俗易懂的解釋就是,固件相當于硬盤的操作系統(這只是小編的理解)。文件系統下硬盤是以簇為單位進行數據讀寫的,一簇包由若干扇區組成,而扇區又包含在磁道之中,如圖4所示。但這只是“用戶區”,也就是硬盤用來存儲數據的部分。除此之外,還有位于負磁道的固件區(SA區)以及保留扇區(這里需要說明一下,很多人認為硬盤的固件是存在電路板上的,當然這也沒錯,但是大部分固件還是存在盤片上的負磁道里)。

圖片 4.png

(圖4)

這里給大家擴展一個知識點,SPT(sector per tracks)我們稱之為磁道密度。也就是每磁道扇區數。那可能有人會問了,每個磁道有多少個扇區應該是固定的吧?其實不然,莫不要說不同硬盤了,即使是同一塊硬盤的不同磁道,密度也是有所差異的,我們可以想象,盤片的外圈磁道和內圈磁道互為同心圓。但外圈磁道的面積顯而易見比內圈磁道面積大,如果相同的密度勢必會造成盤片空間的浪費,所以硬盤引入了SPT磁道密度的概念。如圖5所示,顏色相同部分的磁道密度也相同,我們稱之為一個Zone。

圖片5.png

(圖5)

言歸正傳,我們回到固件。其實硬盤的ATA密碼就被保存在了硬盤的固件區,密碼信息被記錄在一個模塊里了,這個模塊就是02模塊。如圖6所示。

圖片 6.png

(圖6)

西數02模塊介紹

西數的02模塊主要是硬盤的配置信息,以及硬盤的一些參數,比如型號、SN號、容量以及我們今天討論的密碼等內容。當然硬盤的固件讀取肯定需要借助一些專業工具,比如上面提到的PC3000、Atola等設備。如果說你手里沒有這些工具又想研究一下固件模塊,也沒關系可以后臺聯系小編索要免費的小工具哦。

接下來我們看下02模塊的數據結構,如圖7所示。顏色鮮艷部分是我們今天研究的內容,其余部分以后我們再繼續交流。

圖片 7.png

(圖7)

l  偏移地址00H-03H:ROYL標志(俗稱三角板);

l  偏移地址06H:有效數據的起始地址,由偏移地址30H開始是該模塊的有效數據部分;

l  偏移地址08H-09H:模塊ID,本模塊的ID;

l  偏移地址0AH-0BH:模塊長度;

l  偏移地址0CH-0FH:模塊的校驗信息;

l  偏移地址0x10H-0x17:模塊的版本號;

l  偏移地址0x32H-0x33H:SN號的起始位置;

l  偏移地址0x34-0x35H:SN號長度;

l  偏移地址0x36H-0x37H:LBA起始地址;

l  偏移地址0x38H-0x39H:LBA長度;

l  偏移地址0x72H-0x73H:Model起始地址;

l  偏移地址0x74H-0x75H:Model長度;

l  偏移地址0x76H-0x77H:DCM起始地址;

l  偏移地址0x78H-0x79H:DMC長度;

l  偏移地址0x7AH-0x7BH:密碼信息起始位置;

l  偏移地址0x7CH-0x7DH:密碼信息長度。

以上是02模塊里記錄的一些重要信息,當然02模塊里還記錄一些其他重要信息,但我們今天不做過多說明。接下來我們逐一的看下其中的參數內容。

?  首先我們看0x32H-0x33H處記錄的數值為“C200H”表示SN號起始地址為C2H,長度為17H也就是23個字節。SN號為:“WD-WX71E32XC177”。圖8所示。

圖片 8.png

(圖8)

在我們的認知中,認為硬盤的SN號是唯一的,不可改變的。但是今天通過我們深入的固件模塊研究,是不是對此有所疑問?

 

?  0x36H-0x37H處的數值為“D900H”,表示硬盤LBA起始地址為D9H,長度為18H,24個字節。LBA為:“2542EAAF”也就是625142447,320G硬盤標準LBA值(320G標準LBA為625142448,由于硬盤是從LBA=0開始,所以此處少1)。圖9所示。

圖片 9.png

(圖9)

 

?  0x72H-0x73H處數值為“BB03H”,表示硬盤型號信息記錄地址為03BBH處,長度為44H,68字節。型號為:“WD3200BEVT-00A23T0”。圖10所示。

圖片10.png

(圖10)

 

?  0x76H-0x77H處數值為“FF03”,表示硬盤DCM信息記錄位置為3FFH處,長度為46H,70字節。圖11所示。

圖片 11.png

(圖11)

?  0x7AH-0x7BH處數值為“4504H”,表示硬盤的密碼信息位置為0445H處,長度為4A,74字節。圖12所示。

圖片 12.png

(圖12)

到此我們可以看到,我們設置的用戶密碼其實就是“12345”。那么問題來了,我們該如何解密呢?當然如果有專業工具那就輕而易舉了。但我們這里講原理。有兩個辦法,第一,更改密碼開關位,使之處于關閉狀態,然后回寫模塊(改完模塊后需從新校驗,生成新的校驗值)。第二,使用通過“通用密碼”解密。那么什么是“通用密碼”?ATA密碼分兩個級別,User和Master,也就是用戶密碼和主密碼。可以使用主密碼來解鎖用戶級別的鎖定狀態。圖13所示。

圖片13.png

(圖13)

如圖14所示。通過MHDD使用“通用密碼(Master)”對硬盤進行解密,輸入“unlock”密碼等級選擇master級別,然后輸入Master密碼,出現Done字樣表示解鎖成功。但此時硬盤依舊處于加密狀態,因為當前只解除了硬盤的鎖定狀態,還需要對硬盤進行解密操作。

圖片14.png

(圖14)

繼續輸入“dispwd”,密碼級別選擇Master主密碼,輸入Master密碼,出現Done字樣表示硬盤徹底解密成功。此時我們可以看到,硬盤的錯誤寄存器中的PWD狀態已經解除了。表示硬盤徹底處于解鎖狀態。

總結

1.  硬盤一旦處于ATA密碼保護狀態,用戶將無法正常訪問硬盤數據、無法數據固定;

2.  ATA密碼分為User和Master級別,Master主密碼可以用來解除User級別的鎖定狀態;

3.  我們用戶設置的密碼,其實在硬盤的02固件模塊中有所記錄;

4.  西部數據硬盤Master密碼有兩個,第一個,本案例中的“WDCWDCWDCWDCWDCWDCWDCWDCWDCWDCW”(10個WDC+1個W);第二個,“WDCWDCWDCWDCWDCWDCWDCWDCWDCWDCWD”(10個WDC+1個WD);

5.  新款硬盤,Master密碼不一定適用,還需要通過更改02模塊來實現硬盤解鎖。

30779f83-4bd9-4709-9979-92adf988c6d0.jpg

下一篇:手機數據獲取之華為手機備份

上一篇:手機數據獲取之ROOT權限

聯系我們
  •    北京
  • 電話:010-62983123
  • 地址:北京市海淀區信息路15號616
  •    天津
  • 電話:022-23737908
  • 地址:天津市華苑產業區開華道22號普天大廈東塔5層
Copyright ? 2002-2020 Timehost Technology Co.,Ltd 天津天鑒科技有限公司 | 北京天鑒科技有限公司 | 北京天宇宏遠科技有限公司 | 京ICP備05073270號
竞彩足球胜平负玩法