在阿里云主机上,安装监控插件,根据官方提示,输入命令
:~$ sudo ARGUS_VERSION=3.4.10 /bin/bash -c "$(datacURL -s https://cms-agent-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/Argus/agent_install_ecs-1.2.sh)"
installing
networkType is classic
download from http://cloudmonitor-agent.oss-cn-hangzhou-internal.aliyuncs.com/Argus/3.4.10/cloudmonitor_linux64.tar.gz
download failed: {/usr/local/cloudmonitor/cloudmonitor_linux64.tar.gz}
单独运行wget尝试
:~$ wget http://cloudmonitor-agent.oss-cn-hangzhou-internal.aliyuncs.com/Argus/3.4.10/cloudmonitor_linux64.tar.gz
发现没有任何反应
查看wget命令文件
:~$ ls /usr/bin/wget -l
-rwxr-xr-x 1 root root 0 Feb 2 02:55 /usr/bin/wget
发现wget命令是一个空文件。
联想到这台服务器曾经种过病毒,虽然病毒清除,但是可能对操作系统造成了一些破坏。
尝试删除无效的wget文件
:~$ sudo rm /usr/bin/wget
rm: cannot remove '/usr/bin/wget': Operation not permitted
居然无法删除。这可能是设置了保护属性,使用lsattr确认
----ia--------e--- /usr/bin/wget
ia表示被设置过保护,无法修改。需要用chattr去掉保护
:~$ sudo chattr -i /usr/bin/wget
sudo: chattr: command not found
chattr命令文件没有执行权限,所以加执行
:~$ sudo chmod +x /usr/bin/chattr
chmod: changing permissions of '/usr/bin/chattr': Operation not permitted
:~$ lsattr /usr/bin/chattr
----ia--------e--- /usr/bin/chattr
:~$ ll /usr/bin/chattr
-rw-r--r-- 1 root root 0 Feb 2 03:13 /usr/bin/chattr
居然chattr命令自己也被替换成了空文件,并且还加了保护!导致删除都无法删除。
至此,可以判断此病毒干了很多坏事:
- 将一些常用的命令替换成了无效的文件
- 将这些无效的文件设置成了保护权限,因此无法被删除和替换
- 将去处保护命令所需要的命令chattr也做了上述两项操作
经过这一番操作,这台服务器自己是彻底无法恢复正常了。因此我们需要借助另一台正常的服务器帮助这台服务器恢复。
利用scp命令,将另一台服务器上的chattr, wget命令文件拷贝到一个临时目录,例如~/tmp
:~$ sudo scp xxx@xxxxx:/usr/bin/chattr ~/tmp/
:~$ sudo scp xxx@xxxxx:/usr/bin/wget ~/tmp/
利用新的chattr命令,解锁无效的文件保护
:~$ sudo chmod +x ~/tmp/chattr
:~$ sudo ~/tmp/chattr -ia /usr/bin/chattr
:~$ sudo ~/tmp/chattr -ia /usr/bin/wget
将新的文件拷贝进去
:~$ sudo cp ~/tmp/chattr /usr/bin/chattr
:~$ sudo cp ~/tmp/wget /usr/bin/wget
:~$ sudo chmod +x /usr/bin/chattr
:~$ sudo chmod +x /usr/bin/wget
至此,服务器恢复正常。
如果还有其他命令或文件异常,可以以同样的方式恢复。