Persze itt csak arról lesz szó, hogy én hogyan találtam ki az én elfelejtett jelszavamat, amire csak hozzávetőlegesen emlékeztem.
Valamikor létrehoztam egy LUKS partíciót, amin jelszavakat, hozzáféréseket, banki adatokat, és családi iratokat tároltam. De egy idő után alábbhagyott bennem a paranoia, átmásoltam az adatokat máshová, és a LUKS-ot már nem használtam. Aztán elfelejtettem a jelmondatot is.
Nemrég újratelepítettem a rendszert, átvariáltam a partíciókat, és izgatott, hogy vajon van-e azon a 10 GB-os LUKS partíción valami, ami még kellhet.
Keresgéltem a neten, és találtam egy reménykeltő megoldást:
https://manpages.ubuntu.com/manpages/focal/en/man1/bruteforce-luks.1.html
amivel elvileg lehetővé válik a jelszó kitalálása.
Telepíteni kell a bruteforce-luks csomagot:
sudo apt-get update
sudo apt-get install bruteforce-luks
Lehet próbálkozni a brute force módszerekkel, de nem nagyon érdemes.
Az, hogy mi megfejtsünk egy 6-8 karakteres teljesen ismeretlen jelszót, gyakorlatilag lehetetlen.
Esély csak akkor van, ha mint az én esetemben is, nagyjából emlékszünk a jelszóra, de nagyon sok variáció lehet, amit nagyon soká tartana egyenként kipróbálni.
Van ugyanis egy olyan lehetőség, hogy a lehetséges jelszavakat összeírjuk, és elmentjük egy text fájlban.
Már ez sem kis munka, ehhez használható a keresés csere funkció. Erről majd később írok.
Arra emlékszem, hogy a jelszó két részből állt. Egy szóból, és egy számból.
A szóra biztosan emlékszem, csak az írásmódjára nem. És arra is emlékszem, hogy sokat variáltam, hogy milyen formában írjam a szót.
A számra is emlékszem halványan.
Tegyük fel, hogy a szó a linuxmint volt, a szám pedig 12, vagy 012, és talán kötőjellel kötöttem össze a szót a számmal. (Természetesen nem linuxmint volt a jelszó!)
Ezek alapján ezek a variációk jöhetnek szóba:
linuxmint12
linuxmint-12
linuxmint012
linuxmint-012
De mintha lett volna benne nagybetű is. Egy, vagy akár kettő is:
Linuxmint12
Linuxmint-12
Linuxmint012
Linuxmint-012
linuxMint12
linuxMint-12
linuxMint012
linuxMint-012
LinuxMint12
LinuxMint-12
LinuxMint012
LinuxMint-012
Ez 16 variáció. Ennél valójában több volt, amit összeírtam, mert több számra is tippeltem, nem csak a 12-re, és mintha a szóban is szerepelt volna egy szám az egyik betű helyett. Volt benne egy O-betű, amit talán 0-val helyettesítettem.
Ha jól emlékszem, 70-80 sor volt a text fájlban.
A lehetséges jelszavakat ugyanis, egy mondjuk passw.txt nevű fájlba kell írni, soronként egyet, ahogy itt írtam. Elmentjük a saját mappánkba, aztán kezdődhet a móka.
Nyitunk egy terminált, és kiadjuk ezt a parancsot:
sudo bruteforce-luks -f ~/passw.txt /dev/sdXN
Az sdXN helyére persze a LUKS partíció útvonalát kell írni.
Ha látni akarjuk, hogy hol tart, illesszük be ezt: -v 1
Ennek hatására másodpercenként kiírja az aktuálisan próbált jelszót.
sudo bruteforce-luks -f ~/passw.txt -v 1 /dev/sdXN
Nem bonyolítom a leírást azzal az ajánlással, hogy ne a LUKS partíciót próbáljuk feltörni, csak az átmásolt fejlécet, mert úgy gyorsabb, hiszen ezzel a módszerrel kb. öt percig tartott a "feltörés".
A lista elkészítéséhez nagy segítség a jegyzettömb keresés-csere funkciója.
Nálam ez a Xed.
Megnyitjuk két példányban.
(Én a panelindítóról indítom, ahol a parancs ablakban az áll, hogy xed --new-window. Ennek hatására ha többször elindítom, akkor több külön ablak jelenik meg, és nem idegesítő módon több lap. Ki lehetett az az elvetemült, aki kitalálta, hogy több lapon nyíljon meg. Már sokszor csuklott, az biztos.)
Az egyik ablak a munkaablak lesz, a másikban a végeredményt kapjuk.
Írjuk be mindkét ablakba a kezdő sorozatot:
linuxmint12
linuxmint-12
linuxmint012
linuxmint-012
Ezután a munkaablakban kattintsunk a keresés-csere ikonra, és a Keresés mezőbe írjuk azt, hogy l, vagyis kis L, a Csere mezőbe pedig azt, hogy L, vagyis nagy L.
Kattintsunk az Összes cseréje gombra, mire ezt fogjuk kapni:
Linuxmint12
Linuxmint-12
Linuxmint012
Linuxmint-012
Ezt átmásoljuk a másik a végeredményt tartalmazó ablakba.
Azután cseréljük ki a m betűt M-re, és készítsük el kis, és nagy L-lel a sorozatot.
Így szépen sorban megkapjuk az összes variációt.