我刚刚获得一台装有 Windows 2008 标准版的专用服务器,并正在尝试进行必要的配置以便在其上运行我的 Web 应用程序。
我想知道,在网络服务器上安装防病毒软件是不是一个好主意?在应用程序中,用户无法上传除图像之外的任何文件(并且他们在将图像保存到服务器之前检查了应用程序代码中是否为图像)。我被鼓励不要安装防病毒软件,以免影响性能或导致应用程序出现任何问题,这样做会错过什么吗?
谢谢
答案1
我认为,运行良好的 Web 服务器不应该安装商业防病毒 (AV) 软件包。AV 软件包针对 Office 宏病毒和大众市场木马进行了优化,但这些病毒和木马与 Web 服务器的问题并不相符。
你应该做的是:
- 绝对重视输入验证。例如:用户不能将恶意内容上传到您的网站(病毒、SQL 注入等);您不易受到跨站点脚本攻击等。
- 确保你的服务器安装最新的安全更新,并根据最佳实践进行配置。查看以下内容微软安全工具包。
- 拥有单独的防火墙。在入侵方面没有太大帮助,但它增加了另一层防御,以抵御配置错误的网络服务,并有助于抵御简单的 DOS 攻击。它还有助于锁定远程管理可能性等。
- 安装主机入侵检测系统(H-IDS)在你的服务器上,类似于古老的绊线。
关于这些术语有很多令人困惑的地方,这些词在这里经常以多种不同方式使用。为了清楚起见,我在这里所说的 H-IDS 是指:
- 计算机上的服务
- 它不断对计算机上的所有可执行文件进行校验
- 和每当添加可执行文件时都会发出警报或修改(未经授权)。
实际上,一个好的 H-IDS 可以做更多的事情,比如监控文件权限、注册表访问等,但以上内容是它的要点。
主机入侵检测系统需要进行一些配置,因为如果设置不当,它会产生很多错误。但一旦启动并运行,它将比 AV 软件包捕获更多的入侵。特别是 H-IDS 应该可以检测到独一无二的黑客后门,而商业 AV 软件包可能无法检测到。
H-IDS 对服务器的负载也较轻,但这只是次要的好处——主要的好处是更好的检测率。
现在,如果资源有限;如果要在商业 AV 软件包和不做任何事情之间做出选择,那么我会安装 AV.但要知道这并不理想。
答案2
如果它是基于 Windows 的(正如您所说的那样),我会这样做。我还会尝试找到某种形式的主机入侵检测(一种监控/审核服务器上正在更改的文件并提醒您更改的程序)。
只是因为你没有更改服务器上的文件并不意味着没有缓冲区溢出或漏洞,从而允许其他人远程更改服务器上的文件。
当存在漏洞时,漏洞利用的事实通常会在发现和发布修复之间的一段时间内被知晓,然后会有一段时间才能获得修复并应用它。在此期间,通常会有某种形式的自动漏洞利用,而脚本小子会运行它来扩展他们的机器人网络。
请注意,这也会影响 AV,因为:新恶意软件被创建,恶意软件被分发,样本被送到您的 AV 公司,AV 公司进行分析,AV 公司发布新签名,您更新签名,您理应“安全”,如此循环往复。在您“接种疫苗”之前,仍然有一个窗口,恶意软件会自动传播。
理想情况下,您可以运行一些程序来检查文件更改并向您发出警报,例如 TripWire 或类似功能,并将日志保存在另一台与使用隔离的机器上,这样如果系统受到威胁,日志就不会被更改。问题是,一旦文件被检测为新的或被更改的,您就已经被感染了,一旦您被感染或入侵者进入,再相信机器没有发生其他更改就为时已晚。如果有人破解了系统,他们可能会更改其他二进制文件。
那么问题来了,您是否相信校验和和主机入侵日志以及您自己的技能,相信您已经清除了所有内容,包括可能存在的 rootkit 和备用数据流文件?或者您是否遵循“最佳实践”,清除并从备份中恢复,因为入侵日志至少应该会告诉您发生的时间?
任何连接到互联网并运行服务的系统都可能被利用。如果你的系统连接到互联网但实际上没有运行任何服务,我认为你很可能是安全的。Web 服务器不属于此类别 :-)
答案3
视情况而定。如果您没有执行任何未知代码,那么它可能没有必要。
如果您的文件感染了病毒,那么文件本身在硬盘上时是无害的。只有执行它时才会造成危害。您是否控制了服务器上执行的所有内容?
一个小小的变化是上传文件。它们对您的服务器无害 - 如果我上传了被操纵的图像或受木马感染的 .exe,则不会发生任何事情(除非您执行它)。但是,如果其他人下载了这些受感染的文件(或者如果在页面上使用了被操纵的图像),那么他们的 PC 可能会受到感染。
如果您的网站允许用户上传任何事物向其他用户显示或下载,那么您可能需要在 Web 服务器上安装病毒扫描程序,或者在您的网络中安装某种“病毒扫描服务器”来扫描每个文件。
第三个选择是安装防病毒软件,但禁用按访问扫描,转而使用非高峰时段的计划扫描。
而将这个答案完全颠倒过来:安全总是比后悔好。如果你在网络服务器上工作,很容易意外点击坏文件并造成严重破坏。当然,你可以通过 RDP 连接它一千次来做某事而不接触任何文件,但第 1001 次你会意外执行该 exe 并后悔,因为你甚至无法确切知道病毒会做什么(如今他们也会从互联网上下载新代码),并且必须对整个网络进行一些密集的取证。