
Laravel RCE Exploit. CVE-2018-15133
| | __ _ _ __ __ _ ___ ___ _ __ () _ __ | |
| | / || '__| / _ |/ | / || '|| || ' \ | |
| | | (| || | | (| |_ | (__ | | | || |) || |
|| _,||| _,||/ _||| ||| .__/ _|
|_|
Autoren: @pwnedshell & @rsgbengi
CVE-2018-15133 ausnutzt und entfernte Befehle ausführen kann, wenn eine verwundbare Laravel-App freigegeben ist. Sie können Befehle senden und Antworten erhalten, wie z. B. cat /etc/passwd. Sie können aber auch nach einer Shell fragen, die Ihnen eine Reverse Shell gibt. Es bietet einige Argumentanpassungen, sodass Sie angeben können, welche Art von Reverse Shell Sie erhalten (bash oder sh), welche Reverse-Shell-Sprache zum Abrufen der Shell verwendet wird (php, bash, mkfifo, python…) oder die Laravel-RCE-Methode (1,2,3 oder 4). Es bietet auch eine gute Shell-Interaktion und Verweise auf die Shell-Behandlung oder Linux-Privilege-Escalation.
Im Laravel Framework bis 5.5.40 und 5.6.x bis 5.6.29 kann es zu einer Remote-Code-Ausführung kommen, wenn ein potenziell nicht vertrauenswürdiger X-XSRF-TOKEN-Wert deserialisiert wird. Dies betrifft die decrypt-Methode in Illuminate/Encryption/Encrypter.php und PendingBroadcast in gadgetchains/Laravel/RCE/3/chain.php in phpggc. Der Angreifer muss den Anwendungsschlüssel kennen, was normalerweise nie vorkommen würde, aber passieren kann, wenn der Angreifer zuvor privilegierten Zugriff hatte oder einen vorherigen Angriff erfolgreich durchgeführt hat.
Erforderliche Parameter sind die verwundbare und der in base64. Siehe .
Senden Sie den Befehl
Holen Sie sich eine Reverse Shell mit dem mkfifo-Payload. Setzen Sie den lhost auf Ihre lokale Maschine.
git clone https://github.com/PwnedShell/Larascript pip3 install -r requirements.txt
larascript.py -husage: larascript.py [-h] -k APPKEY [-c COMMAND] [-m {1,2,3,4,5}] [-s {bash,python,perl,php,ruby,nc,mkfifo,lua,java}]
[-t {bash,sh}] [-p PORT] [-P LPORT] [-U LHOST]
url
whoami