Excel表格撤銷工作表保護

昨天有一個做工程造價的同學讓我幫她“破解”下工作表保護的密碼,不破解的話這個Excel表格是編輯不了的,當嘗試去修改文檔中的內容時,就會彈出一個對話框提示“嘗試修改的單元格在受保護的工作表中”,這個時候你肯定會去想,能不能把這個保護關了,於是你找到頂部菜單中的“審閱”,然後工具欄就會出現“撤銷工作表保護”的按鈕,很激動地點了一下,這個時候就變成了下面的場景:

場景展示

這個時候可能會出現如下3中情況:
1、有密碼,哈哈哈;
2、大腦短路把密碼忘記了;
3、這個文檔是別人的,不知道密碼。

當你不知道密碼,又想去撤銷這個保護怎麼辦?

1、通過某些手段去知道這個密碼,比如通過窮舉;
2、繞過這個密碼保護,直接把它變成沒有保護。

第一種方式通常是通過“宏”去暴力破解,困難指數與密碼的複雜度相關。這裏介紹第二種直接“幹掉”保護開關的方式。那麼問題來了,我怎麼知道如何去關掉這個保護?

這就要回到Excel文件本身,我們知道,Excel文件實際上就是一個壓縮文件,Excel文檔拷貝複製到別的設備,這個保護仍然有效,這就告訴我們,密碼和保護開關都保存在這個Excel文檔中,關鍵是我們要去找到是在哪判斷這個文檔是被保護的,只要把這個參數改成不受保護即可。下面就是具體的步驟:

1、將Excel文檔的後綴改成 .zip

修改文件後綴

(如果你的電腦不顯示文件的擴展名,win10用戶請按照如下操作勾上“文件擴展名”,如果是win7用戶請自行google或百度如何顯示文件擴展名)

顯示文件後綴

2、使用 7-zip壓縮工具打開壓縮包(別的壓縮工具也可以,我比較習慣使用7-zip)

壓縮包根目錄

3、打開下面這個目錄

xl/worksheets/

目標目錄

這個目錄下的sheet1.xml就是我們要找的文件,使用Notepad++打開這個文件,並搜索”sheetProtection”

sheet1.xml文件內容

4、只需要刪掉圖中紅色方框框起來的內容即可(即sheetProtection節點),刪完內容後替換掉壓縮包中的sheet1.xml即可。

5、替換原來的壓縮包中的sheet1.xml文件後,將文件的擴展名改回原來的 .xlsx,這個時候用Excel打開文檔,工作表就變成沒有保護的了。

最後研究一下被刪除的這段代碼都是什麼東西

<sheetProtection algorithmName="SHA-512" 
hashValue="Qp2ANj6SKH6pd2Jv3WYjrWMvOzFRlwIRcf3EbPueSqnJ8ihPU5pYrs4wL3ahCkAUaN6gG8+EX12MpxywvX6Mvg==" saltValue="fvMYsSPur7ijWXkAa0m7tg==" 
spinCount="100000" 
sheet="1" 
objects="1" s
cenarios="1"/>
屬性 含義
algorithmName 加密算法
hashValue 密碼加密後的值
saltValue 加密算法的加鹽
spinCount 旋轉的次數?這個加密算法不太瞭解
sheet 表格的數量,應該是指該文件的表格數量
objects 對象數量,不知道是不是指加密表格的數量
scenarios 腳本數量

看完這種加密方式,你還會選擇去暴力破解嗎?!

聲明:本文僅供娛樂參考使用,切勿損害他人利益。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章