php后门解码
前言
简单的后门解析,密文都会明确以下方法,说白了就是字符串下标字符拼接
//base64_decode
//$c(原文经过strtr置换后的密文,由 目标字符+替换字符+base64_encode(‘原文内容’)构成)
//strtr
//substr
//52(这个值不一定)
//urldecode解析过的字符串
提示:以下是本篇文章正文内容,下面案例仅供参考
常用后门
代码如下(示例):
$��� = '�B�F���l�C�GE�_�w���t0Jc��H�b�i�n2u���L�h廓�O�f�5�r�VyUK�3v6���4jxmz�8��RMs�X�SQ��o�YW�eZ1毾Ik��AqgP�7�p���9����N�dTD�a';
$经� = $���[76];
$�许可 = $���[28] . $���[122] . $���[76] . $���[89] . $���[61] . $���[65] . $���[14] . $���[118] . $���[89] . $���[23] . $���[84] . $���[118] . $���[89];
$��可擅� = $���[76] . $���[20] . $���[52] . $���[20] . $���[52];
$可擅自� = $���[76] . $���[34] . $���[28] . $���[76] . $���[20] . $���[52];
$�擅自破解 = $���[34] . $���[52] . $���[7] . $���[118] . $���[89] . $���[23] . $���[84] . $���[118] . $���[89];
eval($�许可("JOe7j+iuPSJMeXJDQVZFVUpPVFpZaVRxQlJUb2NWSWNZVkVnZGlhN0JSVE1ZT1RnQkRVcWNWNXFBaFc3QndXR2RPSnNLUm1DYzNQc0tScU5CaFBNSndJZ1ROeVphUkQ1SkxtNHZuWUd2TGE1VE5ZMX...="));
破解(示例):
//以eval为标志 截取为数组,前半部分为密文中的替换掉的函数名,后半部分为密文
$m = explode('eval', $整个evel密文);
//对系统函数的替换部分进行执行,得到系统变量
$varStr = substr($m[0], strpos($m[0], '$'));
//执行后,后续就可以使用替换后的系统函数名
eval($varStr);
//判断是否有密文
if (!isset($m[1])) {
return $this;
}
//对密文进行截取 substr
$star = strripos($m[1], '(');
$end = strpos($m[1], ')');
$str = substr($m[1], $star, $end);
//对密文解密 base64_decode
$str = base64_decode($str);
// 下面的是打印出来的
$经� = "LyrCAVEUJOTZYiTqBRTocVIcYVEgdia7BRTMYOTgBDUqcV5qAhW7BwWGdOJsKRmCc3PsKRqNBhPMJwIgTNyZaRD5JLm4vnYGvLa5TNY1vRPNaiTkvRTqYVBZJiEWctbsQnMCcwIxARqNBwT0YOPlYGWVKi5NKRqV255V75A2I57v757HF5Jhv5Y%2WZ5dRj5YdJ5YxZBHiEfvizCvVENQQ9jN4%2W6YiT572H5Y%2Wh5liZBHS4jQvXCxclvGW9Bw0CFSW9BX%3L%3L";
// 以下是根据解码最后一个方法执行,替换方法名
$this1 = base64_decode(
urldecode(strtr(substr($经�, 0, 21221).
substr($经�, 21325),
substr($经�, 21273, 52),substr($经�, 21221, 52))));
总结
提示:php加密就是使用了php能读取base64加密的内容,使用evel将支付串转换为php代码执行: