如果您儲存具有編輯保護的舊版(.doc 時代)Word 文檔,您可以找到儲存在文件中的密碼金鑰。
為了方便起見,可以透過儲存到 .xml 或 .html 檔案並檢查文字來源來找到它(但您也可以使用十六進位編輯器從原始 .doc 中將其拉出)。例如,使用密碼“password”,您將在來源中找到以下內容:
<w:documentProtection w:edit="forms" w:enforcement="on" w:unprotectPassword="147A83AF"/>
使用什麼演算法來產生這個 32 位元十六進位金鑰?
答案1
我無法使用目前的 Office 安裝重現該輸出。至少該值應該代表“密碼”這。
考慮到這些來源:
- PenTestCorner - 使用 Hashcat 破解 Microsoft Office(97-03、2007、2010、2013)密碼哈希
- InfoSecSee - 破解受密碼保護的 Word、Excel 和 Powerpoint 文檔
看起來那些舊版本正在使用散列和加密的組合。看來您必須更多地檢查該文件才能弄清楚它實際使用的組合類型。
這似乎與 PenTestCorner 的清單相符:
- Office 97-03(MD5+RC4,oldoffice$0,oldoffice$1): 標誌 -m 9700
- Office 97-03(MD5+RC4,碰撞模式#1):標誌-m 9710
- Office 97-03(MD5+RC4,碰撞模式#2):標誌-m 9720
- 辦公室 97-03(SHA1+RC4,oldoffice$3,oldoffice$4): 標誌 -m 9800
- Office 97-03(SHA1+RC4,碰撞模式#1):標誌 -m 9810
- Office 97-03(SHA1+RC4,碰撞模式#2):標誌 -m 9820
- Office 2007:標誌-m 9400
- Office 2010:標誌-m 9500
- Office 2013:標誌-m 9600
您必須檢查“Office2John”或 hashcat 的實作方式的具體細節,以進一步弄清楚如何確定使用什麼演算法等。