服务器中毒导致的wget等系统命令失效后的恢复

在阿里云主机上,安装监控插件,根据官方提示,输入命令

:~$ 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命令自己也被替换成了空文件,并且还加了保护!导致删除都无法删除。
至此,可以判断此病毒干了很多坏事:

  1. 将一些常用的命令替换成了无效的文件
  2. 将这些无效的文件设置成了保护权限,因此无法被删除和替换
  3. 将去处保护命令所需要的命令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

至此,服务器恢复正常。
如果还有其他命令或文件异常,可以以同样的方式恢复。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,467评论 2 59
  • 文章大纲 一、数据库简介二、Mysql数据库简介三、Mysql安装与服务启动(Windows版本)四、Mysql图...
    故事爱人c阅读 8,195评论 0 1
  • 阿里,百度,腾讯,360,新浪,网易,小米等 文章汇总:https://www.cnblogs.com/dotne...
    IM魂影阅读 13,907评论 8 472
  • ---------------------------------------------------------...
    零一间阅读 5,443评论 1 12
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 9,326评论 0 5