2025年亞洲寵物展覽會、京寵展有哪些亮點
978
2025-04-03
小心!Excel的保護工作表/工作簿密碼很容易破解
有時候,我們會使用Excel的保護工作表或者保護工作簿功能(圖1)來對Excel實施保護,以免他人修改工作表或工作簿。
圖1
然而,這種方法很不安全,很容易被。
究其原因,主要是由Excel對保護工作表或工作簿的定位決定的。在保護工作表或者工作簿時,就是告訴Excel允許用戶能夠做什么,不能夠做什么,只是對Excel授予了某些權限,并沒有對Excel本身進行加密。
Excel密碼保護原理
在保護工作表或者工作簿時,如果你設置了密碼(圖2),那么無論該密碼的長度是多少,Excel都會將其轉換成包含12個字符的特殊序列,并將這個經過轉換的密碼保存在Excel中。因此,雖然很難猜測出原始密碼,但我們可以分析這12個字符序列。
圖2
假如Excel將所設置的密碼轉換后與包含12個字符的序列匹配,那么就相當于獲取了原來由密碼所限制的權限,實際上就是了設置的密碼。
也就是說,你設置的密碼是什么都沒有關系,存儲在Excel中的實際上就是這12個字符序列組合之一。
由于這12個字符可以組合成大約200000個(95*2^11=194560)不同的序列,可以通過遍歷這些序列來密碼,實際上是解除Excel給用戶設置的限制。
暴力 Excel密碼的代碼
知道了原理后,代碼也容易編寫和理解了。
下面是保護工作簿密碼的代碼。
下面是保護工作表密碼的代碼。
例如,保護工作簿UnprotectWsXML.xlsx中Sheet1工作表并設置密碼。我們可以按下面的步驟找到并取消工作表保護密碼。
第1步:對UnprotectWsXML.xlsx添加后綴.zip,使其變成壓縮文件,如圖3所示。
圖3
第2步:解壓文件,沿圖4所示文件路徑找到文件sheet1.xml。
圖4
第3步:將sheet1.xml拖至桌面,并用記事件打開,如圖5所示。
然后,找到并將其刪除。
保存并關閉記事本。
圖5
第4步:將sheet1.xml拖回至壓縮文件并覆蓋掉原文件。
第5步:將UnprotectWsXML.xlsx.zip中的后綴.zip刪除,恢復為Excel文件名UnprotectWsXML.xlsx。
此時,再打開工作簿UnprotectWsXML.xlsx,可以看到已經取消了對工作表sheet1的密碼保護。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。