ClamAV 恶意软件缺少 PHP base64_decode() 和 eval() 攻击

ClamAV 恶意软件缺少 PHP base64_decode() 和 eval() 攻击

我已经在我的 CentOS 7 服务器上安装了 Linux Malware Detect 和 ClamAV,看起来一切正常,因为它击中了EICAR 恶意软件测试文件并顺利执行预定的扫描。

当我上传一个真实的恶意软件 PHP 文件(该文件是我在旧的共享网络服务器中从以前的攻击中保存下来的)时,问题就出现了。Maldet 不会将其视为恶意文件。

我知道所有的 AV 都可能错过一些威胁,但在这种情况下,这是一个非常明显的受感染文件,在我看来。

//footer.php
<?php 
function nBMj($NrG)
{
    $NrG=gzinflate(base64_decode($NrG));
    for($i=0;$i<strlen($NrG);$i++)
    {
        $NrG[$i] = chr(ord($NrG[$i])-1);
    }
    return $NrG;
}
eval(nBMj("Some_base64_encoded_text"));
?>

这是一个非常常见的 Wordpress 黑客攻击,甚至没有可疑的函数被混淆了。

Maldet 开发者页面

特征

  • 用于检测混淆威胁的统计分析组件(例如:base64)
  • 更清洁的规则以删除 base64 和 gzinflate(base64 注入的恶意软件)

这是一个拥有 10 到 20 个站点的网络服务器,运行着 drupal 和 wordpress 等流行的 CMS,因此绝大多数攻击都与此类文件感染有关。

那么,问题是:我遗漏了什么?base64/gzinflate 脚本是否有任何特殊配置,或者这是一种正常行为?也许 Maldet w/ClamAv 不是 Web 服务器的最佳工具?

答案1

我补充道PHP 恶意软件签名(从https://malware.expert/signatures/) 并成功在 WordPress 网站中检测到了其中一些威胁。

答案2

我遗漏了什么吗?

基本上是的。重点是,像和这样的工具maldetclamav不能为您提供 100% 的检测率和恶意软件保护。即使是企业级防病毒解决方案也可能无法做到这一点 - 但从我的经验来看(其中一些)比这两个要好得多。

maldetclamav帮助您摆脱一大堆恶意软件 - 相信我,这是很多其中。你的问题的第二部分是关于一些非常知名的恶意软件的缺失。不幸的是,这种情况确实发生了。这是讨论的主题。

令我震惊的是,这两个人未能发现b374k 外壳。但同样,这种情况发生并证明,即使检测率达到 99.9%,也不应该依赖反恶意软件扫描程序的质量来制定安全策略。


在此答案中再补充 2 点:包含PHP相关代码的文件肯定会被标记为可疑文件贝壳探测器。但是,请做好应对可能出现的许多误报的准备。您必须仔细检查并将它们列入白名单。

相关内容