Łamanie hasła do arkusza Excela
2022-03-26Witam :)
Dziś szybki, krótki temat związany z zabezpieczaniem a tak naprawdę odbezpieczaniem arkuszy w Excelu. A wziął się on stąd, że miałem ostatnio po szkoleniu zapytanie o to jak można złamać hasło, którym zabezpieczony jest arkusz Excel? Oczywiście nie chodzi o żaden hacking, po prostu każdy z nas ma tyle różnych haseł do różnych rzeczy, że coraz częściej zapominamy co, czym i gdzie zabezpieczaliśmy a zwłaszcza dzieje się tak gdy robimy „na szybko” jakiś plik Excela…
Jeżeli mieliście kiedykolwiek taki problem z zabezpieczonym Excelem poniższy post jest dla was :)
Z dalszej części artykułu dowiesz się:
- Jak są zbudowane pliki Excela?
- Gdzie w strukturze pliku znajdują się nasze arkusze?
- Jak znaleźć miejsce, w którym Excel przechowuje hasło do arkusza?
- W jaki sposób pozbyć się hasła z arkusza?
1. Jak są zbudowane pliki Excela?
Odpowiedź na to pytanie jest bardzo istotna bo niewiele osób wie, że plik Excela to tak naprawdę nie jeden ale wiele „małych” pliczków, które współpracując razem sprawiają, że nasze formuły się przeliczają, tabele przestawne aktualizują a wykresy mają wygląd taki jak chcemy. Do tego wszystkie nasze dane zajmują o wiele mniej miejsca niż w poprzednich wersjach plików, tych z Office 2003, tj. .xls :)
Nowe pliki (tj. od Offica 2007 aż do dzisiaj) mają rozszerzenia 4 literowe (najczęściej .xlsx). Do takiego pliku możemy „wejść” jak do spakowanego („zipem”) katalogu. I to właśnie w tych trzewiach, bebechach, wnętrzu (zwał jak zwał) możemy znaleźć informacje czy nasz arkusz jest zablokowany i jak można tą blokadę zdjąć.
Jak otworzyć taki plik ?
Najprościej (moim zdaniem) skorzystać z programu 7zip. Na większości korpo-kompów jest on już zainstalowany (ewentualnie można go pobrać za darmo z https://www.7-zip.org/download.html).
Wystarczy, że klikniemy ppm (prawym przyciskiem myszy) na plik Excela z naszymi zablokowanymi arkuszami i wybierzemy z menu opcję 7zip a następnie „otwórz archiwum” (tak jak na screenie poniżej). Nie ma znaczenia czy widzicie rozszerzenia plików czy nie :)
Po wykonaniu tych czynności powinnyśmy zobaczyć strukturę wnętrza pliku tak jak na zdjęciu poniżej:
2. Gdzie w strukturze pliku znajdują się nasze arkusze?
Struktura nie jest bardzo skomplikowana. Gdzie mamy się więc „wklikać” żeby znaleźć nasz zahasłowany arkusz? Wystarczy podążać za poniższymi screenami.
Z katalogu głównego (tego z poprzedniego screena) wchodzimy w folder „XL” i pojawia się nam taki widok:
Wchodzimy w „worksheets” i tam właśnie znajdziemy nasze arkusze nazwane: sheet1.xml, sheet2.xml itd.
3. Jak znaleźć miejsce, w którym Excel przechowuje hasło do arkusza?
Klikamy prawym przyciskiem myszki na zabezpieczonym arkuszu, do którego zapomnieliśmy hasła (u mnie będzie to Sheet1) i wybieramy z menu opcję „Edytuj”. Oczom naszym ukaże się stary dobry notatnik, w którym zobaczymy kod napisany w języku XML (taki jak na screenie poniżej). Dla wygody warto jeszcze wejść w notatniku w menu „Format” i wybrać „Zawijanie wierszy”.
Tak wygląda to znacznie lepiej dzięki czemu łatwiej będzie nam zlokalizować znacznik <sheetProtection algorithmName=
A linia sekcja rozpoczynająca się tym znacznikiem odpowiada za to, że nasz arkusz jest zablokowany / zabezpieczony :)
4. W jaki sposób pozbyć się hasła z arkusza?
Hasło do arkusza jest zaszyfrowane więc… łamanie go mija się z celem :/ ale wystarczy zaznaczyć cały kod począwszy od wspomnianych <sheetProtection algorithmName aż do miejsca, w którym kończy się cała sekcja tj. scenarios=”1” />. A następnie skasować całą tą sekcję.
Następnie klikamy zapisz (lub naciskamy skrót ctrl+s). Po wykonaniu tej czynności zobaczymy następujący komunikat:
Oczywiście potwierdzamy „OK” i zamykamy całe okno (7 zipa).
To wszystko :) Nasz arkusz jest już odblokowany / odbezpieczony.
5. Plik Excela z makrem do łamania haseł
Dla tych wytrwałych, którzy dotarli aż tutaj przygotowałem niespodziankę :)
Całkowicie darmowy plik z makrem, które zrobi te wszystkie kroki automatycznie.
Wystarczy tylko kliknąć w przycisk :)
Plik można pobrać tutaj: lamacz_hasel.xlsb
Lub w formie dodatku do Excela tutaj: HintMine.xlam
Po pobraniu pliku warto „odbezpieczyć” addina żeby się nie wyłączał. To dosłownie dwa kliknięcia, tutaj opisałem jak to zrobić :)
A jeżeli chcesz się nauczyć jak napisać takie makro, zapraszam na prowadzony przeze mnie kurs VBA :)