Linux服务器挖矿病毒处理
情况说明:挖矿进程被隐藏(CPU占用90%,top/htop却看不到异常进程),结束挖矿进程后马上又会运行起来(corntab -l查看发现没有定时任务)。
1、中毒表现
- 在没有使用软件的情况下,CPU使用率很高(使用top或者htop查看系统内存占用情况)。
- 通过 netstat -ntulp 发现有异常IP地址。
2、解决办法
2.1 断网并修改root密码
在发现中了挖矿病毒后,一定要首先断网并修改root密码! ! !
2.2 找出隐藏的挖矿进程
这里利用两个工具【sysdig】和【unhide】来搜寻被隐藏的进程。
# 安装 sysdig
sudo apt install sysdig
https://gitee.com/mirrors/sysdig
# 安装 unhide
sudo apt install unhide
https://pkgs.org/download/unhide
# 输出cpu占用的排行,可以显示出隐藏的进程
sudo sysdig -c topprocs_cpu
# 搜索隐藏进程,proc目录下保存的是所有正在运行程序的进程ID,即PID
sudo unhide proc
通过上面unhide proc发现的隐藏进程,利用systemctl status PID来检查 systemd 管理的服务或者进程状态.。
systemctl stop xxx.service
systemctl disable xxx.service
关闭了挖矿病毒的启动服务之后,现在就可以将挖矿进程kill了。kill之后,CPU恢复正常,并且也没有了隐藏进程。
3、防止黑客再次入侵
3.1 查找异常IP
将查到的异常IP直接在百度中输入就可以看到该IP的一些信息。3.2 封禁异常IP
iptables -I INPUT -s IP -j DROP
iptables -L INPUT -v -n
iptables 添加的规则在系统重启后会丢失。如果希望规则在重启后依然有效,需要将规则保存到配置文件中。可以使用 iptables-persistent 工具来实现。
# 安装iptables-persistent
sudo apt-get install iptables-persistent
# 将规则保存到配置文件
sudo netfilter-persistent save
# 设置为开机自启
systemctl enable iptables
# 打开服务
systemctl start iptables
3.3 查看是否有陌生公钥
cat ~/.ssh/authorized_keys
如果有陌生公钥立即删掉。
4、安装安全狗进行防护
装说明请查看官网地址:https://www.safedog.cn/install_desc_server.html
操作手册:https://www.safedog.cn/download/software/safedogfwq_linux_Help.pdf
5、Linux病毒扫描工具ClamAV
https://www.moewah.com/archives/5296.html
ClamAV 是一款开源的防病毒引擎,用于检测各类恶意软件。其特色是提供命令行扫描,定制病毒数据库更新,以及对新病毒的快速反应。适用于各种系统,包括 Windows、Mac 以及 Linux 等。本教程将指导你如何安装、配置和使用 ClamAV 的主要功能。
对于 Debian/Ubuntu 系统,使用以下命令安装:
sudo apt-get update
sudo apt-get install clamav clamav-daemon
对于 CentOS/RHEL 系统,使用以下命令安装:
sudo yum install epel-release
sudo yum install clamav clamav-update
更新 ClamAV 的病毒数据库
sudo freshclam
ClamAV 关于 clamscan 命令常见使用示例,更多用法请运行 clamscan -help 查看帮助文件:
# 扫描单个文件
clamscan /path/to/your/file
# 扫描整个目录
clamscan -r /path/to/directory
# 自动删除检测到的病毒
clamscan --remove -r /path/to/directory
# 为扫描结果生成报告
clamscan -r /path/to/directory > scanreport.txt
# 在扫描时显示病毒被发现的信息
clamscan -r --bell -i /path/to/directory
如果要使用 ClamAV 守护进程 clamdscan 命令进行扫描,首先确保守护进程已启动:
sudo systemctl start clamav-daemon
6、安全狗安装缺少命令组件解决方案
yum -y install mlocate pciutils lsof net-tools psmisc
7、Linux——“没有可用软件包”
在CentOS 7上,当使用yum命令安装软件包时,如果出现“没有可用的软件包”提示,这通常意味着yum源中已经没有对应的安装包了。
解决方法——>安装epel-release软件包
yum install -y epel-release
8、linux系统上安装sysdig
sysdig是一个超级系统工具,比 strace、tcpdump、lsof 加起来还强大。可用来捕获系统状态信息,保存数据并进行过滤和分析。
在linux系统上安装sysdig可以一键式安装:
curl -s https://s3.amazonaws.com/download.draios.com/stable/install-sysdig| sudo bash
测试是否安装成功:
sysdig -pc -c topconns