Einführung

Wir haben die Schwachstelle der Befehlsinjektion behandelt und wie wichtig die Bereinigung und Validierung von Eingaben ist, um die Ausnutzung dieser Schwachstelle zu verhindern.

Zunächst müssen wir verstehen, was Command Injection ist. Command Injection ist der Missbrauch des Verhaltens einer Anwendung, um Befehle auf dem Betriebssystem auszuführen, wobei dieselben Berechtigungen verwendet werden, mit denen die Anwendung auf einem Gerät ausgeführt wird. Beispielsweise kann Command Injection auf einem Webserver erreicht werden, der als Benutzer mit dem Namen Joey, das ist alles. führt Befehle unter diesem aus Joey, das ist alles. Benutzer – und erhalten somit alle Berechtigungen, die Joey, das ist alles. hat.

Holen Sie sich Hinweise zum OSCP-Zertifikat

Eine Command-Injection-Schwachstelle wird auch als „Remote Code Execution“ (RCE) bezeichnet, da ein Angreifer die Anwendung dazu bringen kann, eine Reihe von Payloads auszuführen, die er bereitstellt, ohne direkten Zugriff auf die Maschine selbst zu haben (d. h. eine interaktive Shell). Der Webserver verarbeitet diesen Code und führt ihn mit den Berechtigungen und Zugriffskontrollen des Benutzers aus, der diese Anwendung ausführt.

Command Injection wird auch oft als „Remote Code Execution“ (RCE) bezeichnet, da hiermit Code innerhalb einer Anwendung aus der Ferne ausgeführt werden kann. Diese Schwachstellen sind für einen Angreifer oft am lukrativsten, da sie bedeuten, dass der Angreifer direkt mit dem anfälligen System interagieren kann. Ein Angreifer kann beispielsweise System- oder Benutzerdateien, Daten und dergleichen lesen.

Beispielsweise die Möglichkeit, eine Anwendung zu missbrauchen, um den Befehl auszuführen Wer bin ich Aufzulisten, unter welchem Benutzerkonto die Anwendung ausgeführt wird, wäre ein Beispiel für eine Befehlsinjektion.

Command Injection war eine der zehn größten Schwachstellen, die im AppSec Intelligence Report von Contrast Security im Jahr 2019 gemeldet wurden. (Contrast Security AppSec., 2019). Darüber hinaus werden Schwachstellen dieser Art im OWASP-Framework ständig als eine der zehn größten Schwachstellen einer Webanwendung aufgeführt (OWASP-Framework).

Fragen und Antworten zur Herausforderung

Welche Variable speichert die Benutzereingaben im PHP-Codeausschnitt in dieser Aufgabe?

Was HTTP Methode wird verwendet, um von einem Benutzer im PHP-Codeausschnitt übermittelte Daten abzurufen?

Wenn ich die Ausweis Befehl im Python-Codeausschnitt, welche Route müsste ich besuchen?

Welche Nutzlast würde ich verwenden, wenn ich ermitteln möchte, als welcher Benutzer die Anwendung ausgeführt wird?

Welches beliebte Netzwerktool würde ich verwenden, um auf blinde Befehlseinschleusung zu testen auf einem Linux Maschine?

Welche Nutzlast würde ich verwenden, um ein Windows Maschine zur blinden Befehlseinfügung?

Wie nennt man den Vorgang des „Bereinigens“ von Benutzereingaben, die einer Anwendung bereitgestellt werden?
Unter welchem Benutzer wird diese Anwendung ausgeführt?

Was ist der Inhalt der Flagge in /home/tryhackme/flag.txt?

Video-Anleitung

Über den Autor

Ich erstelle Notizen zur Cybersicherheit, Notizen zum digitalen Marketing und Online-Kurse. Ich biete auch Beratung zum digitalen Marketing an, einschließlich, aber nicht beschränkt auf SEO, Google- und Meta-Anzeigen und CRM-Verwaltung.

Artikel anzeigen