修复被Relaxscan篡改的linux系统

  昨天一时心血来潮,在一台生产用服务器上测试一个软件:relaxscan。说是一个暴力破解ssh密码的小工具,原文作者说建议在虚拟机中测试,原文如下“如果感兴趣的话可以玩玩,最好是在虚拟机下运行吧。我不能保证该软件是否也加了后门了。因为不是源代码编译过的。so,good luck!”

  直接加了可执行权限,跑了一把。结果发现ls不行了,报Segmentation fault.然后重启发现停留在启动loop back interface这儿,进不了系统了。得,这下玩儿大了。

  下面简单描述一下我的修复过程,以备有同样问题的朋友参考。进入单用户模式,再手动启动network,lo还是不能正常启动,然后禁止自己启动network,正常启动系统。手动ifup lo,成功,手动ifup ifcfg-eth0,让网络正常。坐到自己的座位上,远程登录,再认真看。which ls;发现在/bin下,rpm -qf /bin/ls,发现在fils-utils这个包,重装这个包,ls能用了。再ls /bin -t一看,好家伙,好多文件被替换了!rpm -Va > chanage.list.查看都什么包被替换了,然后一一重新强制安装。发现这个里面的文件日期正常了,用rpm -V也不再报告被替换了,再service network restart,可以正常启动网络了。不过,后来发现scp又不能用了,查了一下。也被替换了。下载openssh,openssh-client,openssh-server的包,重新安装。OK,终于一切正常了。用chkrookit查一下,也不再报错了。

  谢天谢地,总算正常了。折腾了我好久,友情提示,没有事儿,不要随便在生产系统上测试未经验证的任何程序!