Payloads to execute
Bash
Ausführung von Payloads
Es gibt verschiedene Möglichkeiten, Payloads auf einem Linux-System auszuführen, um eine Privilegieneskalation zu erreichen. Hier sind einige gängige Methoden:
1. SUID-Binärdateien missbrauchen
SUID (Set User ID) ist ein Berechtigungsbit, das auf ausführbare Dateien angewendet werden kann. Wenn eine Datei mit dem SUID-Bit versehen ist, wird sie mit den Berechtigungen des Eigentümers ausgeführt, anstatt mit den Berechtigungen des ausführenden Benutzers. Dies kann ausgenutzt werden, um eine Datei mit höheren Berechtigungen auszuführen.
Um eine SUID-Binärdatei zu finden, können Sie den folgenden Befehl verwenden:
2. Cron-Jobs manipulieren
Cron-Jobs sind geplante Aufgaben, die automatisch zu bestimmten Zeiten ausgeführt werden. Wenn ein Cron-Job mit höheren Berechtigungen ausgeführt wird, kann er manipuliert werden, um einen Payload auszuführen.
Um Cron-Jobs zu überprüfen, können Sie den folgenden Befehl verwenden:
3. Umgebungsvariablen manipulieren
Umgebungsvariablen sind Werte, die von Prozessen verwendet werden, um Informationen zu speichern. Wenn eine Umgebungsvariable von einem Prozess verwendet wird, der mit höheren Berechtigungen ausgeführt wird, kann sie manipuliert werden, um einen Payload auszuführen.
Um die Umgebungsvariablen eines Prozesses anzuzeigen, können Sie den folgenden Befehl verwenden:
4. Kernel-Exploits verwenden
Ein Kernel-Exploit ist eine Schwachstelle im Betriebssystemkern, die ausgenutzt werden kann, um höhere Berechtigungen zu erlangen. Es gibt verschiedene Kernel-Exploits, die je nach Linux-Distribution und Kernel-Version variieren.
Um nach Kernel-Exploits zu suchen, können Sie den folgenden Befehl verwenden:
5. Schwachstellen in SaaS-Plattformen ausnutzen
Wenn Sie Zugriff auf eine SaaS-Plattform haben, können Sie nach Schwachstellen suchen, die es Ihnen ermöglichen, höhere Berechtigungen zu erlangen. Dies kann durch Ausnutzen von Sicherheitslücken in der Plattform selbst oder in den gehosteten Anwendungen erreicht werden.
Um nach Schwachstellen in einer SaaS-Plattform zu suchen, können Sie den folgenden Befehl verwenden:
Diese Methoden sind nur einige Beispiele für die Ausführung von Payloads zur Privilegieneskalation auf einem Linux-System. Es gibt viele weitere Techniken und Tools, die verwendet werden können, um höhere Berechtigungen zu erlangen. Es ist wichtig, diese Techniken zu verstehen und zu lernen, um effektive Sicherheitsmaßnahmen ergreifen zu können.
Überschreiben einer Datei zur Eskalation von Privilegien
Häufig verwendete Dateien
Benutzer mit Passwort zu /etc/passwd hinzufügen
Passwort in /etc/shadow ändern
Benutzer zu sudoers in /etc/sudoers hinzufügen
Docker über den Docker-Socket missbrauchen, normalerweise in /run/docker.sock oder /var/run/docker.sock
Überschreiben einer Bibliothek
Überprüfen Sie eine von einem bestimmten Binärprogramm verwendete Bibliothek, in diesem Fall /bin/su
:
In diesem Fall versuchen wir, /lib/x86_64-linux-gnu/libaudit.so.1
zu imitieren.
Überprüfen Sie daher die Funktionen dieser Bibliothek, die vom su
-Binärprogramm verwendet werden:
Die Symbole audit_open
, audit_log_acct_message
, audit_log_acct_message
und audit_fd
stammen wahrscheinlich aus der Bibliothek libaudit.so.1. Da die libaudit.so.1 durch die bösartige Shared Library überschrieben wird, sollten diese Symbole in der neuen Shared Library vorhanden sein. Andernfalls kann das Programm das Symbol nicht finden und wird beendet.
Nun, indem Sie einfach /bin/su
aufrufen, erhalten Sie eine Shell als Root.
Skripte
Können Sie root dazu bringen, etwas auszuführen?
www-data zu sudoers
Root-Passwort ändern
Um das Root-Passwort zu ändern, können Sie den folgenden Befehl verwenden:
Sie werden aufgefordert, das aktuelle Root-Passwort einzugeben und dann das neue Passwort zweimal einzugeben, um es zu bestätigen. Stellen Sie sicher, dass Sie ein sicheres Passwort wählen, das aus einer Kombination von Groß- und Kleinbuchstaben, Zahlen und Sonderzeichen besteht.
Nachdem das Root-Passwort erfolgreich geändert wurde, können Sie sich mit dem neuen Passwort als Root-Benutzer anmelden.
Neuen Root-Benutzer zu /etc/passwd hinzufügen
Um einen neuen Root-Benutzer zur Datei /etc/passwd hinzuzufügen, können Sie den folgenden Befehl verwenden:
Dieser Befehl fügt einen neuen Eintrag für den Benutzer "newroot" hinzu, der die Root-Rechte hat. Der Benutzer wird dem Verzeichnis /root zugeordnet und verwendet die Shell /bin/bash.
Last updated