服务器上安装了火绒防火墙,最近两个月每次全盘扫描都会发现类似如下的提示:
c:\windows\system32\logfiles\httperr\httperr603.log中提示有后门病毒heur:backdoor/php.webshell.a
那实际看了那么多行代码,都是一些出错页面,包括恶意代码攻击后,都是记录着403或404错误提示。
那么到底是怎么回事呢?
我们来分解一下这个问题,并解释相关概念及潜在的威胁。
*.log是IIS(Internet Information Services) 服务器的日志文件。IIS 是 Windows 的 Web 服务器,这些日志文件通常用于记录与 HTTP 请求和错误相关的详细信息,如请求超时、无效请求等。在这种情况下,火绒防火墙提示的 “后门病毒” 警告涉及到一种WebShell 后门程序,具体检测类型为 heur:backdoor/php.webshell.a。

1. 什么是 WebShell?
WebShell 是一种被攻击者用来在服务器上获得远程控制的恶意脚本。通常,它们被上传到受攻击的服务器上,并允许攻击者通过 Web 访问来执行任意命令。
WebShell 的特点:
- 通常是恶意 PHP、ASP、JSP 或其他脚本文件。
- 允许攻击者执行系统命令、查看文件、修改文件权限,甚至进一步感染服务器。
- 经常隐藏在合法的网站中,通过网站漏洞上传到服务器。
2. 火绒提示的 heur:backdoor/php.webshell.a 是什么?
heur 表示火绒使用了一种启发式扫描机制(Heuristic Analysis),这种机制通过分析文件的行为特征,而不是直接匹配已知的病毒签名,来检测潜在的威胁。因此,虽然你看到的是 .log 文件,但很可能里面的内容与某些已知的 WebShell 后门特征相匹配,触发了启发式警报。
backdoor/php.webshell.a 表示火绒认为这可能是一种通过 PHP 脚本实现的后门程序,通常用于服务器上执行远程操作。即使这个文件是 .log 格式,火绒可能检测到其中有可疑的 PHP 代码片段。
3. 为什么在日志文件中提示后门病毒?
通常,HTTPERR 日志文件会记录 HTTP 请求中的错误信息。如果你的服务器曾经受到攻击或有人试图通过恶意请求上传 WebShell,那么这些恶意的请求可能会被记录在这些日志文件中。
- 日志记录恶意请求:攻击者可能尝试通过发送包含恶意 PHP 代码的 HTTP 请求(例如,试图通过文件上传漏洞上传 WebShell),这些请求可能被 IIS 服务器拒绝,并因此记录到 HTTPERR 日志中。
- 火绒扫描该日志文件时,发现日志中记录的恶意请求包含类似 WebShell 的特征,所以触发了警报。
4. 举例:恶意请求如何被记录到日志中?
假设攻击者试图通过 HTTP 请求注入恶意的 PHP 代码,向服务器上传 WebShell 或执行恶意命令。以下是一个简单的例子:
攻击请求的例子:
GET /vulnerable-upload.php?file=<?php system('whoami'); ?> HTTP/1.1
Host: example.com
这段请求试图在 Web 服务器上执行 system(‘whoami’) 命令(用于获取当前用户)。虽然服务器可能拒绝了这个请求,但该请求的内容可能被记录到 httperr603.log 中。类似的攻击可能试图利用服务器的漏洞上传一个 WebShell 文件。
日志文件中的记录:
日志文件中可能会包含类似如下的记录:
2024-10-18 12:34:56 192.168.1.100 GET /vulnerable-upload.php file=<?php system('whoami'); ?> 400 - - - 1234 0 0
在这个例子中,httperr603.log 记录了攻击者试图通过参数 file 发送恶意 PHP 代码的请求,虽然请求被拒绝(400 错误),但恶意的代码片段仍然出现在日志文件中,触发了火绒的启发式检测。
5. 如何处理?
既然 httperr603.log 只是一个日志文件,通常它本身不执行任何代码,但如果你发现这样的日志,说明你的服务器可能曾遭到恶意请求或攻击。你可以采取以下措施:
(1) 检查日志内容:
打开 httperr603.log 文件,搜索类似 <?php、eval、system 等敏感关键词,查看是否有攻击者发送的恶意请求。
检查是否存在类似 WebShell 的可疑代码片段,即使是记录在日志中,也要引起重视。
(2) 检查服务器是否有漏洞:
确保服务器的安全性,例如检查是否存在文件上传漏洞、SQL 注入漏洞等。
更新服务器的 Web 服务器(如 IIS)的安全配置,并确保所有补丁和更新都已应用。
(3) 检查实际的 WebShell 文件:
仅仅检测到日志中的恶意请求不一定意味着服务器已经被成功攻破,但你应该检查服务器的文件系统,确认没有攻击者上传的 WebShell 文件。
WebShell 文件通常以 .php、.asp、.jsp 为后缀,检查这些文件是否存在,尤其是在可写的目录(如文件上传目录)。
(4) 清理日志:
如果日志文件中存在恶意请求的记录,你可以在确保系统没有被感染的情况下清理这些日志。
日志本身不会执行恶意代码,但定期清理日志并监控新的恶意请求是一个良好的安全习惯。
总结:
- 火绒的提示说明 httperr603.log 文件中记录了可疑的 WebShell 请求,但它只是日志中的记录,通常并不会直接导致服务器被感染。
- 这种警报表明服务器可能曾经收到过恶意的 HTTP 请求,可能攻击者试图上传后门或执行远程命令。
- 你需要查看日志中的内容,检查是否有恶意代码片段,确保服务器没有被攻破或存在漏洞。
- 你现在可以检查 httperr603.log 文件中的详细记录,看看有没有类似的可疑请求。


1万+

被折叠的 条评论
为什么被折叠?



