Tutorials - Root-Rechte auf einem System per physikalischem Zugang erlangen

Sprachenübersicht/Betriebssysteme/Linux/Security

Root-Rechte auf einem System per physikalischem Zugang erlangen

Diese Seite wurde 12543 mal aufgerufen.

Dieser Artikel wurde in einem Wikiweb System geschrieben, das heißt, Sie können die Artikel jederzeit editieren, wenn Sie einen Fehler gefunden haben, oder etwas hinzufügen wollen.

Editieren Versionen Linkpartnerschaft Bottom Printversion

Keywords: Root-rechte, Rootrechte, Root, grub, lilo

Abbildung

Root erlangen Top



Wenn unter Linux für das Konfigurationsmenü des Bootloaders(grub/lilo) kein Passwort gesetzt ist, ist es ein leichtes root auf diesem System zu erlangen.

Beim Grub muss nur das Konfigurationsmenü mit e aufgerufen werden, und die Zeile zum booten des Kernels vom Betriebssystem init=/bin/bash angehängt werden.

Bsp Grub:

Code:


kernel /boot/vmlinuz root=/dev/hda6 ro init=/bin/bash



Mit b kann bestätigt werden, und anschließend Linux gebootet werden. Nach dieser Änderung bootet Linux bis zu einem gewissen Punkt, und startet dann anstelle der bootstraps eine bash mit root Rechten. Das Dateisystem ist zu diesem Zeitpunkt nicht beschreibbar gemounted, das lässt sich mit mount -o remount,rw / aber einfach ändern.

Nachdem die Rootrechte erlangt wurden, und das Dateisystem writeable-gemounted wurde kann man die Datei /etc/shadow mit cp /etc/shadow /backup-shadow sichern, und ein neues Passwort setzen:

Code:


cp /etc/shadow /backup-shadow
passwd root
Enter new UNIX password: 
Retype new UNIX password: 



Nach einem erfolgreichen Neustart kann man sich mit dem neuen Passwort unter dem Benutzer root anmelden. Später kann das root-Passwort einfach mit cp /backup-shadow /etc/shadow && rm /backup-shadow wiederhergestellt werden.

Gegenmaßnahmen Top



Diese Methode kann oft ganz praktisch sein, beispielweise wenn man sein root Passwort vergessen hat, allerdings gibt es Situationen in welchen man Linux dagegen härten will, z.B. wenn man häufig mobil mit dem Notebook unterwegs ist. In der Datei /boot/grub/menu.lst kann man mit der Zeile password <passwort ein Passwort für den Bootloader setzen, dadurch wird die Grub Konsole mit einem Passwort gelockt. Mit dem Befehl grub-md5-crypt kann man sich einen MD5-Hash vom Passwort generieren lassen, der dann bei password mit password -md5 <MD5-PASSWORT> eingesetzt werden kann. Damit verhindert man, dass das Passwort als plaintext in der Datei steht.

CD-ROM erstellen Top



Manchmal ist es praktisch eine CD-ROM zu haben, die einen zum root macht, wenn diese CD-ROM bootet, dann wird grub als Bootloader geladen. Grub auf der CD-ROM soll einen einerseits zum root machen können, andererseits aber auch zur Rettung einen eigenen Kernel laden, falls ein Kernelupdate schief geht.

Wir beginnen damit, dass wir ein Verzeichnis für unser Image erstellen:

Code:

mkdir -p iso/boot/grub



Als nächstes kopieren wir den Kernel in das /boot Verzeichnis:

Code:

cp /boot/vmlinuz iso/boot/
cp /boot/System.map iso/boot/
cp /boot/config iso/boot



Dieser Schritt sieht je nach Kernel anders aus, am Schluss sollte man jedoch alle Dateien zusammen haben.

Als nächstes Suchen wir noch stage2, damit der bootloader geladen wird:

Code:


simon@Cottonmouth:/home/simon$ locate stage2_eltorito
/usr/lib/grub/i386-pc/stage2_eltorito
simon@Cottonmouth:/home/simon$ cp /usr/lib/grub/i386-pc/stage2_eltorito iso/boot/grub



Und kopieren es nach iso/boot/grub.

Jetzt erstellen wir noch ein Menü für Grub:

Code:


simon@Cottonmouth:/home/simon$ cat >> iso/boot/grub/menu.lst << EOF
color yellow/red white/red

timeout 10
default 1
fallback 2

title ****** This is Grub loaded from CD ******
title ****** Kernel /bin/vmlinuz         ******
root

title Linux Kernel hda1 with init=/bin/bash
       root   (hd0,0)
       kernel /boot/vmlinuz root=/dev/hda1 init=/bin/bash

title Linux Kernel hda2 with init=/bin/bash
       root   (hd0,1)
       kernel /boot/vmlinuz root=/dev/hda2 init=/bin/bash

title Linux Kernel hda3 with init=/bin/bash
       root   (hd0,2)
       kernel /boot/vmlinuz root=/dev/hda3 init=/bin/bash

title Linux Kernel hda4 with init=/bin/bash
       root   (hd0,3)
       kernel /boot/vmlinuz root=/dev/hda4 init=/bin/bash

title Linux Kernel hda5 with init=/bin/bash
       root   (hd0,4)
       kernel /boot/vmlinuz root=/dev/hda4 init=/bin/bash

title Linux Kernel hda6 with init=/bin/bash
       root   (hd0,5)
       kernel /boot/vmlinuz root=/dev/hda4 init=/bin/bash

title *** CD Kernel 2.6.20.4 ***
title *** Type e and and init=/bin/bash for root ***
root

title Linux Kernel 2.6.20.4 /dev/hda1
#       root   (hd0,0)
       kernel (cd)/boot/vmlinuz root=/dev/hda1

title Linux Kernel 2.6.20.4 /dev/hda2
       kernel (cd)/boot/vmlinuz root=/dev/hda2

title Linux Kernel 2.6.20.4 /dev/hda3
       kernel (cd)/boot/vmlinuz root=/dev/hda3

title Linux Kernel 2.6.20.4 /dev/hda4
       kernel (cd)/boot/vmlinuz root=/dev/hda4

title Linux Kernel 2.6.20.4 /dev/hda5
       kernel (cd)/boot/vmlinuz root=/dev/hda5

title Linux Kernel 2.6.20.4 /dev/hda6
       kernel (cd)/boot/vmlinuz root=/dev/hda6
EOF



Jetzt müssen wir nur noch ein Image erstellen:

Code:

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub.iso iso



Anschließend wird das Image noch gebrannt, danach sollte die CD funktionieren.

Gibt es noch irgendwelche Fragen, oder wollen Sie über den Artikel diskutieren?

Editieren Versionen Linkpartnerschaft Top Printversion

Haben Sie einen Fehler gefunden? Dann klicken Sie doch auf Editieren, und beheben den Fehler, keine Angst, Sie können nichts zerstören, das Tutorial kann wiederhergestellt werden

Sprachenübersicht/Betriebssysteme/Linux/Security/Root-Rechte auf einem System per physikalischem Zugang erlangen