文件恢復無簽名(幻數)

文件恢復無簽名(幻數)

如果檔案頁首/頁尾、簽章已變更/修改或刪除,是否可以從磁碟映像(dd 映像)還原檔案?

我的意思是,例如,如果點陣圖圖像的簽名 (0x42 0x4d) 甚至前 30 個位元組已被刪除或更改?

如果不是,有什麼替代方法可以不基於文件簽名來恢復該文件?如果可能的話是如何做到的?

答案1

您可以改為分析殘留的檔案系統結構。

例如,FAT 檔案系統系列指示透過使用位元組值 0x3F 覆寫目錄項目中檔案名稱的第一個位元組來刪除檔案。其餘的元資料(包括大部分文件名)在刪除後仍然會立即存在,因此直接存取磁碟而不是透過作業系統的程式可以輕鬆找到該文件,這就是 DOS「取消刪除」命令的工作原理。

其他檔案系統也類似,儘管可用的資訊通常較少——FAT 系列特別容易恢復文件。

答案2

如果您知道要尋找什麼以及去哪裡尋找,就可以。點陣圖(未壓縮)具有特定的統計屬性,您也許能夠重建它。

例如,預先了解影像寬度的可能範圍將是非常有益的。了解其大致色度也會有所幫助。

真正的問題可能是檔案本身可能被分成不連續的磁區,並且將其重新組合在一起所需的資訊也可能已被刪除。足夠小以適合單一檔案系統叢集的位圖將有最好的機會。

另一個需要考慮的非常現實的可能性是,無論刪除了第一個字節,也刪除了剩餘的字節,或者其中足夠重要的部分,如果可能的話,使得恢復變得不值得。

要嘗試恢復未壓縮的DIB 位元圖,您需要尋找具有以下屬性的位元組序列:值以三元組的形式變化(即,給定N 個位元組的序列,以索引模三獲取的像素之間的相關性明顯高於任何其他索引不是三的倍數)。然後,您將檢查較高索引是否存在類似的相關性,該索引是將行寬度四捨五入到最接近的四的倍數。需要更多的分析來確定行的開始/停止。

不了解更多具體情況(檔案系統、使用的實際位圖格式、點陣圖大小、它是如何被刪除/覆蓋的,dd 圖像大小,操作原因),關於恢復的機會,我只能給你一個「也許」。

相關內容