关于木马:一次minerd肉鸡木马的排查思路
前言在日常应用Linux零碎服务器时,如果系统安全保护方面做的不够标准和谨严,很容易导致主机被黑客植入歹意木马病毒被当做肉鸡。当前就是一次肉鸡木马病毒的排查过程,有助于运维服务器时遇到此状况时进行针对性的排查和修复。 【问题景象】Linux主机CPU跑满,或者应用服务器越来越慢,以及收到报警信息提醒服务器有对外歹意扫描。 【问题起因】这种情况在呈现时通过top命令能够看到有一个minerd过程占用CPU较高。 经定位,该过程是一个挖矿程序,通过上述截图能够看到过程对应的PID为1170,依据过程ID查问一下产生过程的程序门路执行ll /proc/$PID/exe,其中$PID为查问到的过程ID 异样程序在/opt目录下此程序个别是由打算工作产生的,Linux零碎中默认创立了打算工作后会在/var/spool/cron目录下创立对应用户的打算工作脚本,执行ls /var/spool/cron 查问一下零碎中是否有异样的打算工作脚本程序。 能够看到,在此目录下有1个root的打算工作脚本和一个异样的目录crontabs(默认状况下不会有此目录,用户创立打算工作也不会产生此目录)查看脚本内容,有一个每隔10分钟便会通过curl下载执行的脚本程序(crontabs目录下为同样内容的打算工作)手动将脚本内容下载到本地,脚本内容如下:剖析此脚本,次要进行了如下批改:1、创立了上述查看到的两个打算工作脚本2、创立了密钥认证文件,导入到了/root/.ssh目录下(以后脚本的密钥文件名是KHK75NEOiq,此名称可能会有所变动,要依据具体情况进行核实)3、批改ssh配置文件容许了root近程登录,容许了密钥认证,批改默认的密钥认证文件名4、重启了sshd服务使配置失效5、创立了假装程序ntp,并运行了ntp程序6、查问零碎中是否有失常运行的打算工作,杀死正在运行的打算工作过程。 【解决办法】依据以上剖析,提供以下解决办法:1、删除打算工作脚本中异样配置项,如果以后零碎之前并未配置过打算工作,能够间接执行rm -rf /var/spool/cron/* 状况打算脚本目录即可。2、删除黑客创立的密钥认证文件,如果以后零碎之前并未配置过密钥认证,能够间接执行rm -rf /root/.ssh/* 清空认证寄存目录即可。如果有配置过密钥认证,须要删除指定的黑客创立的认证文件即可,以后脚本的密钥文件名是KHK75NEOiq,此名称可能会有所变动,要依据具体情况进行核实。3、修复ssh配置项,依据集体需要进行批改,个别默认脚本中进行批改的PermitRootLogin、RSAAuthentication、PubkeyAuthentication为开启状态,须要批改的是密钥认证文件名,倡议批改成默认值AuthorizedKeysFile .ssh/authorized_keys即可。批改实现后重启sshd服务,使配置失效即可。4、删除黑客创立的假装程序ntp 执行ls /etc/init.d/能够看到零碎中是由对应的假装程序的通过chkconfig --list ntp 能够看到此程序默认设置的是开机主动启动。如果此程序不进行革除,即便删除了minerd程序并且杀死了对应的过程,过一会零碎还会从新创立minerd程序,并产生新的过程查问一下以后零碎中是否有ntp过程,能够看到ntp过程是通过/usr/sbin/ntp程序产生,因而须要把对应的执行程序也进行删除。总结一下删除假装程序的操作步骤kill -9 $PID 杀死查问到的ntp过程rm -rf /etc/init.d/ntprm -rf /usr/sbin/ntp (此门路要依据具体的查问数据确定,理论状况可能会有所变动) 5、依据之前的查问minerd程序所在门路为/opt,在执行的脚本中同时也在/opt目录下创立了一个KHK75NEOiq33的程序文件,因而要删除这两个文件,执行rm -rf KHK75NEOiq33 minerd 即可。6、应用kill命令杀死minerd过程通过ps命令查问一下minerd对应的过程详细情况。kill -9 $PID 杀死对应的过程ID备注:依据ps查问结果显示minerd有向域名xmr.crypto-pool.fr进行数据通信,通过ping测试域名解析核实此域名对应的IP地址,而后在ip.taobao.com进行查问显示IP为法国的IP,而后通过iftop -i eth1 -PB命令对流量进行了监控,的确存在向法国的IP发送数据的状况,为了防止再次被入侵,能够通过iptables屏蔽对应的异样IP(具体的IP和域名要依据理论查问的状况而定,可能会有所不同)。 以上修复实现后能够期待一会再次进行一下察看,看看是否还会在/opt目录下创立新的minerd程序,以及是否还有新的minerd过程产生。 最初,倡议平时加强服务器的平安保护,优化代码,以防止因程序破绽等导致服务器被入侵。