In diesem Abschnitt werden wir den Angriff auf eine Website diskutieren. Um eine Website anzugreifen, gibt es zwei Möglichkeiten:
- Wir können die Methoden zum Angriff auf eine Website verwenden, die wir bisher gelernt haben. Da wir wissen, dass eine Website auf einem Computer installiert ist, können wir versuchen, sie wie jeden anderen Computer anzugreifen und zu hacken. Da wir jedoch wissen, dass eine Website auf einem Computer installiert ist, können wir versuchen, sie wie jeden anderen Computer anzugreifen und zu hacken. Wir können auch serverseitige Angriffe einsetzen, um herauszufinden, welches Betriebssystem, welcher Webserver oder welche anderen Anwendungen installiert sind. Wenn wir Schwachstellen finden, können wir diese ausnutzen, um uns Zugang zum Computer zu verschaffen.
- Eine weitere Angriffsmöglichkeit sind clientseitige Angriffe. Denn Websites werden von Menschen verwaltet und gepflegt. Das bedeutet, dass wir, wenn es uns gelingt, einen der Administratoren der Website zu hacken, wahrscheinlich in der Lage sein werden, ihren Benutzernamen und ihr Passwort zu erhalten und uns von dort aus in ihre Verwaltungskonsole oder in die Secure Socket Shell (SSH) einzuloggen. Dann können wir auf alle Server zugreifen, die zur Verwaltung der Website verwendet werden.
Wenn beide Methoden fehlschlagen, können wir versuchen, die Webanwendung zu testen, da sie nur eine auf der Website installierte Anwendung ist. Unser Ziel ist also möglicherweise nicht die Webanwendung, sondern eine Person, die die Website nutzt, auf deren Computer aber kein Zugriff möglich ist. Stattdessen können wir auf die Website gehen, uns in die Website hacken und von dort aus zu unserer Zielperson gehen.
Alle Geräte und Anwendungen sind miteinander verbunden, und wir können eines von ihnen zu unserem Vorteil nutzen und uns dann zu einem anderen Computer oder einem anderen Ort durchschlagen. In diesem Abschnitt konzentrieren wir uns nicht auf Angriffe auf der Client- und Serverseite, sondern auf das Testen der Sicherheit der Webanwendung selbst.
Wir werden den Metasploitable-Rechner als Zielrechner verwenden, und wenn wir den Befehl ifconfig ausführen, werden wir sehen, dass seine IP 10.0.2.4, wie im folgenden Screenshot zu sehen ist:
Wenn wir in den Ordner /var/www schauen, können wir alle gespeicherten Website-Dateien sehen, wie im folgenden Screenshot zu sehen ist:
Im obigen Screenshot können wir sehen, dass wir die phpinfo.php Seite, dvwa, mutillidae und phpMyAdmin haben. Wenn wir nun zu einem beliebigen Rechner im selben Netzwerk gehen und versuchen, den Browser zu öffnen und zu 10.0.2.4 zu gehen, werden wir sehen, dass wir eine für Metasploitable erstellte Website haben, wie auf dem Screenshot zu sehen ist. Eine Website ist nur eine Anwendung, die auf dem Webbrowser installiert ist, und wir können auf jede der Metasploitable-Websites zugreifen und sie nutzen, um ihre Sicherheit zu testen:
Nun schauen wir uns die DVWA-Seite an. Sie erfordert einen Benutzernamen (admin) und ein Passwort (password), um sich anzumelden. Sobald wir diese Anmeldedaten eingegeben haben, können wir uns anmelden, wie im folgenden Screenshot zu sehen ist:
Nachdem wir uns angemeldet haben, können wir die Sicherheitseinstellungen über die Registerkarte DVWA-Sicherheit ändern, wie im folgenden Screenshot zu sehen ist:
Unter der Registerkarte DVWA-Sicherheit setzen wir die Skriptsicherheit auf niedrig und klicken auf Absenden:
Wir werden sie im nächsten Abschnitt auf niedrig setzen. Da dies nur ein Einführungskurs ist, werden wir nur über die grundlegende Art und Weise der Entdeckung von Schwachstellen in Webanwendungen sprechen, sowohl in DVWA als auch in der Webanwendung Mutilliidae.
Wenn wir die Mutillidae-Webanwendung auf dieselbe Weise aufrufen wie die DVWA-Webanwendung, sollten wir sicherstellen, dass unsere Sicherheitsstufe auf 0 eingestellt ist, wie im folgenden Screenshot gezeigt:
Wir können die Sicherheitsstufe umschalten, indem wir auf der Seite auf die Option „Sicherheit umschalten“ klicken: