Sicherheitstests - Ausführung bösartiger Dateien

Entwickler verwenden oder verketten potenziell anfällige Eingaben häufig direkt mit Dateien oder gehen davon aus, dass Eingabedateien echt sind. Wenn die Daten nicht ordnungsgemäß überprüft werden, kann dies dazu führen, dass anfällige Inhalte vom Webserver verarbeitet oder aufgerufen werden.

Beispiel

Einige der klassischen Beispiele sind -

  • Laden Sie die .jsp-Datei in den Webbaum hoch.
  • Laden Sie .gif hoch, dessen Größe geändert werden soll.
  • Laden Sie große Dateien hoch.
  • Datei mit Tags hochladen.
  • Laden Sie die EXE-Datei in den Webbaum hoch.

Hände an

Step 1- Starten Sie WebGoat und navigieren Sie zum Abschnitt Ausführung bösartiger Dateien. Der Schnappschuss des Szenarios ist unten angegeben -

Step 2 - Um diese Lektion abzuschließen, müssen wir guest.txt an den oben genannten Ort hochladen.

Step 3- Erstellen wir eine JSP-Datei, sodass die Datei guest.txt beim Ausführen der JSP erstellt wird. Die Benennung des JSP spielt in diesem Zusammenhang keine Rolle, da wir den Inhalt der JSP-Datei ausführen.

<HTML> 
   <% java.io.File file = new 
      java.io.File("C:\\Users\\username$\\.extract\\webapps\\WebGoat\\mfe_target\\guest.txt"); 
      file.createNewFile(); %> 
</HTML>

Step 4- Laden Sie nun die JSP-Datei hoch und kopieren Sie den Linkspeicherort nach dem Hochladen. Der Upload erwartet ein Bild, aber wir laden einen JSP hoch.

Step 5 - Wenn Sie zur JSP-Datei navigieren, wird keine Nachricht an den Benutzer gesendet.

Step 6 - Aktualisieren Sie nun die Sitzung, in der Sie die JSP-Datei hochgeladen haben, und Sie erhalten die Meldung "* Herzlichen Glückwunsch. Sie haben die Lektion erfolgreich abgeschlossen".

Vorbeugende Mechanismen

  • Sichern Sie Websites mit Website-Berechtigungen.
  • Ergreifen Sie Gegenmaßnahmen zur Sicherheit von Webanwendungen.
  • Grundlegendes zu den integrierten Benutzer- und Gruppenkonten in IIS 7.0.