看来我们的 VPS 被黑客入侵了,我注意到网站运行缓慢,所以我使用 htop 检查了进程。有各种 cpuminer 存在,处理器使用率接近 100%。我认为黑客入侵是由于常用 CMS 的安装过时造成的。进程的所有者是 www-data。
是否有可能以某种方式摆脱这种情况?clamav 会感染病毒吗?还是我需要进行全新安装?
答案1
TL;DR:设置一个新的 VPS 并从头开始重新设置 CMS。
尤其是如果您不知道如何自己清理系统,最安全、最简单的方法是设置一个新的 VPS。如果您不知道要查找什么以及感染如何工作,则很容易在清理时遗漏某些内容,然后感染可能会从这些残留物中再次开始。很难找到并清除系统中感染的所有痕迹。我已经为我们的一些客户这样做了,这是可能的,但需要时间和知识。
如果您设置了新的 VPS,请不要将旧的、过时的 CMS 安装放在新的 VPS 上,因为只需几个小时或几天就会被感染。您必须将 CMS 更新为受支持的安全版本,并清除攻击者植入的任何后门。同样,如果您不知道如何执行此操作,最简单的方法可能是在新的 VPS 上安装 CMS,然后将旧安装中的内容复制到新安装中。不要复制整个数据库或文件,因为两者都可能包含后门,具体取决于所讨论的 CMS。
如果您有一个干净、未受感染的 CMS 副本,您可以将其复制到新的 VPS。
如果您有一份副本但它已经过时,而您想保留旧内容,您可以尝试将该副本与受感染的安装进行比较。diff -ru copy infected
可能在这里有所帮助,但同样,您需要知道您在寻找什么。
无论有没有副本,你都可以尝试使用 列出过去一个月内修改过的所有文件(如果感染发生在一段时间之前,则时间更长)find -mtime -30
。但这并不安全,因为攻击者可能伪造了文件的修改时间。
如果您在文件中看到一些乱码行,.php
这通常是文件被感染的迹象。类似下面的内容是文件被感染的确切迹象。
eval(base64_decode('ZWNobyAiSGVsbG8gTHViV24sIHRoaXMgaXMgaG93IGNvZGUgb2Z0ZW4gbG9va3MgbGlrZSBpZiBhbiBhdHRhY2tlciB3YW50cyB0byBoaWRlIHdoYXQgdGhlIGNvZGUgZG9lcyBmcm9tIHlvdXIgcHJ5aW5nIGV5ZXMuIjs='));
当然,您可以grep -r eval .
针对这些行执行此操作,但并非所有感染都一定包含eval
。还有其他方法可以执行随机代码,攻击者可能添加了未混淆的代码。
请注意,如果您选择这条路,您必须找到攻击者操纵您的 CMS 的所有地方并清理它们,否则感染可能会继续。
在你的情况下,也可能有中间方法。假设攻击者尚未获得root
特权(当然,这种假设并不安全,但随着矿工的运行,www-data
这可能是真的),你可以备份然后删除属于的所有文件www-data
。备份当然应该在不同的系统上,CMS 不应从该备份运行。你还应该清除www-data
( crontab -e -u www-data
) 的 crontab。如果只有用户 www-data 被感染,这应该会完全从你的系统中清除感染,你可以开始在 VPS 上安装新的 CMS。如果感染继续,你应该设置一个新的 VPS 并再次进行 CMS 安装。
关于clamav
:您可以尝试运行它,但它很可能无法清除感染,因此您的净收益可能为零。