在排查服务器被中木马的时候我们看一下开机启动项,那开机启动项就是伴随着开机启动,那其实在生产环境一般的服务器它很少重启了,那部署完业务之后,手动重启服务这种非常少见,但是有一些勒索病毒或者木马,他有这个功能,它会默认写入开机启动项作为复活手段,那我们就需要排查一下,因为我们不知道中了的是什么,病毒或者木马,还有可能是安全人员的攻击。
那我们看一下这个文件,这个文件里边的内容,上一部分其实都是注释,这是一条命令。那每一次开机启动都会执行一条这个命令,如果大家不能确定这个命令是正常的一个命令还是非法命令,那与运维技术那边确认,因为有一些业务是需要有一些开机启动的。我们再看下一个文件,那这两个文件其实类似它也是这样的,下面有一个命令,那比如我现在再加一条命令,也是touch temp 这样的话每一次开机启动的时候,我都会在temp下边创建一个temp文件,那比如这是一个木马命令,是不是就会远程现在木马并且执行了,这里这是一个文件夹,这个movie下边放了可执行的文件和脚本,这个时候就要仔细的排查一下,首先是不是有可疑的文件或者可疑的脚本。
那第二就要排查一下原先的脚本是不是被篡改了,那你确认不了的话,要需要与让对方的运维去配合你。那最好的方式是在服务器上做一些关键文件的MD5值,也就是希值。这时候文件被更改之后,我们可以快速的定位被更改的文件。如果没有做这些,那其实在查的过程当中大海捞针,那就需要一项一项去排查,这也是一个开机启动的目录,这里边装的全是一些服务,那也需要去排查一下,看看是不是有最近被更改过的,防止恶意的命令插入到这些服务里面,它也是随着开机启动而启动的。
那好,我们现在再看这条命令,之前这些文件我的系统里都没有,它可能是在centos,这些系统里才有,那这条命令的话,应该是通用的,最起码乌斑图都有这个命令。那我现在直接执行一下这条命令,看一下它有disabled和Enable。那Ena英文单词的意思就是启用,那disab其实就是关闭着,这时候我们其实不关注关闭的应用的怎么办,那加一个过滤条件,grape,这时候我们看到的全都是启用的服务了,那这里太乱了,我们把它复制出来之后粘贴到这了,这是一部分。
那比如我们确定这一条服务它不是我们的,它是一个木马勒索病毒,就需要关停它,关停服务,用sudu提升到root权限。也就是说我现在是普通用户,大家看这是一个$符号,那它是一个井号的时候,你就是root权限,但是现在是dolphin,这个时候你只是普通权限,你没有能力去关闭这个服务,必须要通过sudu输入sudu回车,密码,这个时候服务已经被关停了,那关停之后,它还是随着开机启动的,我们没有删除到它的开机启动服务,再通过这条命令删除它,执行成功是这个样子的,它会删除开机启动里边的这个服务,比如咱们删错了,把客户的正常的服务开机启动删了,把他的服务也关了,那咱们悄悄的把它重启起来,启动的再添加到开机启动里。整个开机启动项的检查已经完毕了,大家可以按照我的方法去仔细排查看看有无可疑的启动进程和木马后门之类的。