执行top命令,按1,展开多核心查看,并按c,将列表以CPU占用大小排序。CPU占用高,但是没有出现占用高的程序。
tcpdump -nn
systemctl stop network
crontab -l
cat /var/spool/cron/root
# 或者使用下面的命令
more /var/log/cron log
flock
flock——Linux 下的文件锁
当多个进程可能会对同样的数据执行操作时,这些进程需要保证其它进程没有也在操作,以免损坏数据。
通常,这样的进程会使用一个「锁文件」,也就是建立一个文件来告诉别的进程自己在运行,如果检测到那个文件存在则认为有操作同样数据的进程在工作。这样的问题是,进程不小心意外死亡了,没有清理掉那个锁文件,那么只能由用户手动来清理了。
-s,--shared:获取一个共享锁,在定向为某文件的FD上设置共享锁而未释放锁的时间内,其他进程试图在定向为此文件的FD上设置独占锁的请求失败,而其他进程试图在定向为此文件的FD上设置共享锁的请求会成功。
-x,-e,--exclusive:获取一个排它锁,或者称为写入锁,为默认项
-u,--unlock:手动释放锁,一般情况不必须,当FD关闭时,系统会自动解锁,此参数用于脚本命令一部分需要异步执行,一部分可以同步执行的情况。
-n,--nb, --nonblock:非阻塞模式,当获取锁失败时,返回1而不是等待
-w, --wait, --timeout seconds:设置阻塞超时,当超过设置的秒数时,退出阻塞模式,返回1,并继续执行后面的语句
-o, --close:表示当执行command前关闭设置锁的FD,以使command的子进程不保持锁。
-c, --command command:在shell中执行其后的语句
从日志中可以看到脚本的来源为
http://107.189.3.150/b2f628/cronb.sh
并且下载下来就被病毒拦截了,给火绒点个赞。恢复一下,用记事本看看脚本内容。
不该干的事情它全干了,感兴趣的朋友可以下载样本来研究,切忌乱运行!
如果你的机器是阿里云,还会删除系统中的防护服务或云警。
根据脚本的内容,反向处理:
chattr -iea /var/tmp/*
rm -rf /var/tmp/*
rm -rf /var/spool/cron/*
rm -rf /etc/cron.d/*
rm -rf /var/spool/cron/crontabs
rm -rf /etc/crontab
systemctl stop contab
# 删除隐藏的密钥
chattr -iea /home/hilde/
rm -rf /home/hilde/
# 停止挖矿程序
sudo systemctl disable kswapd0.service
sudo systemctl stop kswapd0.service
rm /etc/systemd/system/kswapd0.service
# 删除执行脚本
chattr -ia /etc/newsvc.sh
chattr -ia /etc/svc*
chattr -ia /etc/phpupdate
chattr -ia /etc/phpguard
chattr -ia /etc/networkmanager
chattr -ia /etc/newdat.sh
chattr -iea /etc/ld.so.preload
rm -rf /etc/ld.so.preload
rm -rf /etc/newsvc.sh
rm -rf /etc/svc*
rm -rf /etc/phpupdate
rm -rf /etc/phpguard
rm -rf /etc/networkmanager
rm -rf /etc/newdat.sh
chattr -i /usr/lib/systemd/systemd-update-daily
rm -rf /usr/lib/systemd/systemd-update-daily
chattr -ia /etc/zzh
chattr -ia /etc/newinit
前面的操作中,清除ld.so.preload文件后,就能在top中找到挖矿程序的进程并杀掉。
然后分析一下进入到原因吧。把需要备份的文件存储好,重装系统吧!
cat /var/log/secure
tc qdisc del dev eth0 root 2> /dev/null > /dev/null
tc qdisc add dev eth0 root handle 1: htb default 20
tc class add dev eth0 parent 1: classid 1:20 htb rate 2000kbit
#(1KB/s = 8KBit/s)
tc -s -d qdisc show dev eth0
tc -s -d class show dev eth0
tc qdisc del dev eth0 root
tcpdump -nn
nethogs
[root@localhost ~]# nethogs --help
nethogs: invalid option -- '-'
usage: nethogs [-V] [-b] [-d seconds] [-t] [-p] [device [device [device ...]]]
-V : 显示版本信息,注意是大写字母V.
-d : 延迟更新刷新速率,以秒为单位。默认值为 1.
-t : 跟踪模式.
-b : bug 狩猎模式 — — 意味着跟踪模式.
-p : 混合模式(不推荐).
设备 : 要监视的设备名称. 默认为 eth0
netstat -antpu | grep 2375
lsof -i :2375
kill -9 4049
vim /etc/rc.d/rc.local
Vue.js 是一套构建用户界面的渐进式框架,本书旨在帮助读者全面掌握 Vue.js 全家桶技术和单页面前后端分离项目开发,理解 MVVM 框架思想,让前端和后端开发人员快速精通 Vue.js 全家桶技术。
原文始发于微信公众号(释然IT杂谈):亲身经历,云服务器遭遇挖矿病毒之后
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论