这个编码是什么,我该如何解码呢?

时间:2013-01-08 18:47:09

标签: php encoding

我最近获得了一个Wordpress主题,无法弄清楚包含大量下划线的所有这些编码是什么。我已经弄清楚它做了什么,但我还没弄明白如何比一个一个更快地解码它。你能

吗?

1)告诉我编码是什么?和 2)如何解码它,更快?

    function aj_________e() {
        global $_GET, $wt___q;

        $dw________e = rk_______g();
        $xt____________m = pc__p();
        $zq_______o = iw__________h();

        $ci______m = "full";
        if ($_GET["wp_cache_cl"] == "197ab5deb39daad8baacae1bdd5a8852") {
            if ($zq_______o == "file") {
                $rd_________v = $dw________e["dir_upload"]["path"]."/".$xt____________m.".jpg";
                if ($wt___q($rd_________v)) {
                    @unlink($rd_________v);
                    $ci______m = "deleted";
                }
            }

            $uk___s = array(
                "s" => $ci______m,
                "t" => time(),
                "v" => WP_ID
            );

            echo "<!--";
            foreach ($uk___s AS $ce_____________t => $ik__________m) echo " [$ce_____________t:$ik__________m]";
            echo " -->";
        }
    }

3 个答案:

答案 0 :(得分:2)

Wordpress被强奸了。你不能这么容易阅读它们。关于这个:http://en.wikipedia.org/wiki/Obfuscation

答案 1 :(得分:1)

我认为原作者通过某种混淆器运行此代码。或许联系他们获得一个干净的版本?

答案 2 :(得分:1)

此代码会定期使用主题供应商控制的更新广告替换某些文件内容。混淆代码通常会通过广告获得一磅肉,包括您不想要的广告。 (好吧,这段代码没有做到这一点 - 但你只是在这里提供了一段代码。)

你错过的是这样的东西,它将值base64_decode赋给一个方便地命名为$csGIYFfb的变量。一旦知道了所有字符串的值,就可以阅读代码:

$HnSjwuR='e';
$JBzO='s';
$CiCHjis='6';
$APNhIK='d';
$TWmEOd='d';
$jygti='_';
$PuGIIg='4';
$nyyif='e';
$mgtv='o';
$AJAsO='a';
$LRRqTj='e';
$KCHbUS='b';
$DjstEZ='c';
$csGIYFfb=$KCHbUS.$AJAsO.$JBzO.$LRRqTj.$CiCHjis.$PuGIIg.$jygti.$TWmEOd.$HnSjwuR.$DjstEZ.$mgtv.$APNhIK.$nyyif;

这里要清楚的是,你提供的代码几乎没有被混淆 - 它只是被丑化了,可能有意义的变量和函数名称被包含大量下划线的随机字符串替换。您未提供的代码部分定义了这些功能的含义,这些功能碰巧使用curl来填充系统中可能不需要的广告。