Wenn man auf einem System das Passwort vergessen hat, hat man schlechte Karten – oder nicht? Ich persönlich bin für letzteres. So lange das System nicht verschlüsselt läuft und man physischen Zugang dazu hat, besteht eine realistische Chance auch ohne das Wissen eines Crackers in das System zu kommen um das Passwort zurückzusetzen.
Der erste Schritt besteht darin, das System mit einer geeigneten LiveCD zu booten. Ich empfehle für diesen Schritt Knoppix, Backtrack oder die Gentoo-LiveCD (minimal ist ausreichend), da diese CDs einen Grossteil der Hardware bereits von selbst erkennen. Theoretisch sollte jede CD mit einem ähnlichen Kernel zum System ausreichen. Alles was wir ab jetzt machen, wird unter dem Benutzer ‚root‘ ausgeführt.
Die aktuelle Partitionierung lässt sich mit ‚fdisk -l‘ auslesen:
pavilion ~ # fdisk -l Disk /dev/sda: 100.0 GB, 100030242816 bytes 255 heads, 63 sectors/track, 12161 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x247c247b Device Boot Start End Blocks Id System /dev/sda1 * 1 3825 30724281 7 HPFS/NTFS /dev/sda2 3826 4677 6843690 7 HPFS/NTFS /dev/sda3 4678 8314 29214202+ f W95 Ext'd (LBA) /dev/sda4 8315 12161 30901027+ 83 Linux /dev/sda5 4678 4690 104391 83 Linux /dev/sda6 4691 4820 1044193+ 82 Linux swap / Solaris /dev/sda7 4821 5202 3068383+ 83 Linux /dev/sda8 5203 6391 9550611 83 Linux /dev/sda9 6392 8314 15446466 83 Linux
Um genug Speicher zur Verfügung zu haben, beginnen wir mit der Einbindung der Swap-Partition, welche man ganz leicht in der Auflistung erkennen kann. Der Befehl dazu lautet in meinem Fall swapon /dev/sda6.
Jetzt gilt es die Partitionen unseres Systems zu mounten. Dazu benötigen wir jeglich ein freies Verzeichnis und die entsprechende Unterstützung für das Dateisystem. Als leeres Verzeichnis empfiehlt es sich, ein Verzeichnis unter /mnt zu verwenden.
Unser erstes Ziel sollte die Root-Partition (/) sein. Doch wie findet man das am Besten heraus? Leider bleibt einem da nur Versuch und Irrtum. Doch wenn wir erst diese Partition gefunden haben, finden wir auf ihr in etc/fstab die restlichen Informationen nach denen wir die restlichen Partitionen einhängen.
Ist dies geschehen ist theoretisch eine Datensicherung möglich, sofern die LiveCD entsprechende Werkzeuge bereitstellt. Doch wir wollen mehr. Wir Benutzen das Kommando chroot um in das aktuelle System zu wechseln: chroot /mnt/system – wobei /mnt/system mit dem entsprechenden Verzeichnis zu ersetzen ist, wo das Root-FS eingehängt wurde.
Mit dem Befehl ‚passwd‚ lässt sich nun ein neues Root-Passwort setzen.
genstef says:
you do not even need a livecd, just add init=/bin/sh to the grub cmdline and then run the following commands:
mount -o remount,rw /
passwd
reboot
much easier :)
Stargazer says:
Now that looks insane simple but didn’t work here.
Ed Wiget says:
genstefs commands should work, I do it all the time too. However, I usually add the physical device to the mount command and I also specify the user for the passwd command.
Stargazer says:
I guess I had a strange kernel here last time I tried.