Linux应急响应-“消灭挖矿木马”
字数 1035 2025-08-22 12:23:25
Linux应急响应:消灭挖矿木马全面指南
一、应急响应启动判断
当发现以下情况时,主机很可能已被植入挖矿木马:
- CPU占用率持续居高不下
- 系统响应变慢
- 异常网络连接
二、处理流程
1. 主机隔离
网络隔离措施:
# 允许维护人员的IP访问
iptables -I INPUT -s xx.xxx.xx.xx -p tcp -j ACCEPT
# 禁止入站流量
iptables -A INPUT -p tcp -j DROP
# 禁止出站流量
iptables -A OUTPUT -p tcp -j DROP
# 清除现有规则
iptables -F
2. 系统命令完整性检查
检查命令是否被篡改:
rpm -Vf /usr/bin/*
rpm -Vf /usr/sbin/*
# 关键标志解释:
# S - 文件大小变化
# 5 - MD5值变化
# T - 文件时间变化
常见被篡改命令:
- ps
- top
- kill
- ls
- rc.local
处理方案:
- 删除被篡改的命令文件
- 从备份恢复原始命令文件
3. 恶意脚本分析
典型挖矿木马脚本示例:
if ! pgrep -x "king" > /dev/null
then
chmod +x /etc/rc.local & > /dev/null
grep king /etc/rc.local > /dev/null || echo "nohup /var/lib/king &" >> /etc/rc.local
grep king /etc/cron.hourly/nginx > /dev/null || echo "nohup /var/lib/king &" >> /etc/cron.hourly/nginx
grep king /etc/cron.daily/nginx > /dev/null || echo "nohup /var/lib/king &" >> /etc/cron.daily/nginx
grep king /var/spool/cron/root > /dev/null || echo "*nohup /var/lib/king &" >> /var/spool/cron/root
cp -arf /var/yp/king.sh /var/lib/king & > /dev/null
fi
脚本功能解析:
- 检查"king"进程是否运行
- 如果没有运行,则:
- 修改rc.local权限
- 向多个位置添加自启动项
- 复制恶意文件
4. 动态链接库劫持检测
检查点:
# 检查是否存在预加载库
ls -la /etc/ld.so.preload
# 删除恶意预加载配置
rm -f /etc/ld.so.preload
# 检查并删除恶意动态链接库
rm -f /lib64/libupload.so
5. 恶意进程处理
识别异常进程:
ps aux
top
netstat -antp
处理流程:
- 暂停可疑进程(防止守护进程重启)
kill -STOP <PID>
kill -STOP $(pgrep king)
pkill <进程名>
- 定位进程文件
lsof -p <PID>
- 删除恶意文件(注意特殊权限)
lsattr <文件路径>
chattr -i <文件路径> # 移除不可更改属性
rm -f <文件路径>
6. 持久化机制清除
检查点:
- 计划任务
ls /etc/cron.*
grep king /etc/cron.*/*
find /etc/ -mtime -1
atq # 查看at计划任务
- 开机启动项
/etc/rc.local
/etc/rc.d/rc0.d/ # rc0-rc6
/etc/init.d/
/usr/lib/systemd/system/
find /usr/lib/systemd/system -mtime -1
- SSH公钥
cat ~/.ssh/authorized_keys
- 环境变量
grep king /etc/profile /etc/profile.d/* /etc/bashrc ~/.bashrc ~/.bash_profile
7. 系统配置恢复
检查内核参数:
cat /etc/sysctl.conf
重点关注异常的内存参数,如:
vm.nr_hugepages=4069
三、溯源分析
1. 日志分析
关键日志文件:
/var/log/secure- 认证日志/var/log/audit/audit.log- 审计日志~/.bash_history- 命令历史- 中间件日志(Apache/Nginx/Tomcat等)
常用分析命令:
- 定位爆破root的IP:
grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
- 提取所有爆破IP:
grep "Failed password" /var/log/secure | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" | sort | uniq -c | sort -nr
- 查看成功登录IP:
grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
- 用户添加记录:
grep "useradd" /var/log/secure
- sudo授权执行记录:
grep "sudo" /var/log/secure
- 爆破用户名统计:
grep "Failed password" /var/log/secure | awk '{if ($9 == "invalid") print $11; else print $9}' | sort | uniq -c | sort -nr
四、加固建议
-
系统清理:
- 使用专业杀毒软件全面扫描
- 手动清理残留文件和配置
-
系统更新:
- 及时安装安全补丁
- 保持所有软件最新
-
计划任务管理:
- 定期检查cron任务
- 限制脚本执行权限
-
文件完整性监控:
- 部署Tripwire等工具
- 监控关键系统文件
-
审计机制:
- 启用系统日志审计
- 实施网络流量监控
-
权限管理:
- 遵循最小权限原则
- 实施强密码策略
-
防护系统:
- 合理配置防火墙规则
- 部署入侵检测系统(IDS)
五、典型挖矿木马特征
-
常见行为:
- 修改系统命令(ps, top等)
- 设置多种持久化机制
- 使用守护进程监控
- 隐藏进程和文件
-
常见文件路径:
/var/lib/king/var/yp/king.sh/etc/.init/watchdog/var/.X11CE/
-
常见进程名:
- king
- watchdog
- kthreadd
通过以上全面的应急响应流程,可以有效识别、清除和防御挖矿木马,恢复系统安全状态。