Linux病毒应急响应方案"

admin 2026-10-18 16:43:47 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

Linux 病毒应急响应方案

灰帽大于
灰帽大于

灰帽大于

2026年7月5日 21:19
河北

在小说阅读器读本章

去阅读


一、应急响应概述

当 Linux 服务器出现异常行为(CPU/内存异常、可疑进程、网络连接异常等)时,需要按照标准化流程进行应急处置,快速定位问题、遏制影响、恢复服务并留存证据。

二、应急响应流程

1. 初步识别与研判

1.1 异常现象确认

  • 系统负载异常升高(top、htop)
  • 可疑进程占用资源
  • 异常网络连接
  • 文件被篡改或删除
  • 定时任务异常
  • 用户账户异常登录

1.2 初步排查命令

# 查看系统负载和进程
top-c
ps auxf

# 查看网络连接
netstat -antlp
ss -antlp

# 查看登录用户
w
last
lastb  # 失败登录记录

# 查看定时任务
crontab -l
cat /etc/crontab
ls-la /etc/cron.d/
ls-la /var/spool/cron/

# 查看开机启动项
systemctl list-unit-files --type=service | grep enabled
chkconfig --list  # CentOS 6

2. 现场保护与证据固定

2.1 立即执行

  • ✅ 记录当前时间:date
  • ✅ 保存进程信息:ps auxf > /tmp/ps_info.txt
  • ✅ 保存网络连接:netstat -antlp > /tmp/net_info.txt
  • ✅ 保存登录记录:last > /tmp/last_info.txt
  • ✅ 对可疑文件进行备份(勿删除)

2.2 系统快照(如有条件)

# 虚拟机快照
# 或使用 LiME 进行内存取证(需提前准备)
insmod lime.ko \"path=/tmp/mem.lime format=lime\"

2.3 重要文件备份

# 备份关键系统文件
tar -czvf /tmp/system_backup_$(date +%Y%m%d_%H%M%S).tar.gz \\
  /etc/passwd /etc/shadow /etc/sudoers \\
  /etc/ssh/sshd_config /etc/crontab /var/spool/cron/ \\
  /etc/init.d/ /etc/systemd/ /etc/rc.local

3. 威胁排查与定位

3.1 恶意进程排查

# 查看所有进程及其命令行参数
ps auxf
ps-eo pid,user,args --forest

# 查看进程打开的文件
lsof -p <PID>

# 查看进程的可执行文件路径
ls-l /proc/<PID>/exe
ls-l /proc/<PID>/cwd  # 工作目录
ls-l /proc/<PID>/fd   # 文件描述符

# 查看隐藏进程(对比 /proc 和 ps 输出)
ls /proc | grep-E'^[0-9]+$' | sort > /tmp/proc_pids.txt
ps-eo pid | tail -n+2 | sort > /tmp/ps_pids.txt
diff /tmp/proc_pids.txt /tmp/ps_pids.txt

3.2 网络连接排查

# 查看所有网络连接
netstat -antlp
ss -antlp

# 查看进程监听端口
lsof -i

# 查看特定端口的进程
lsof -i :<PORT>
netstat -antlp | grep <PORT>

# 检查可疑外连
netstat -antlp | grep ESTABLISHED

3.3 可疑文件排查

# 查找最近修改的文件
find / -type f -mtime-7-ls2>/dev/null

# 查找最近24小时内创建的文件
find / -type f -ctime-1-ls2>/dev/null

# 查找 SUID/SGID 文件(提权后门)
find / -perm-4000-type f -ls2>/dev/null
find / -perm-2000-type f -ls2>/dev/null

# 查找隐藏文件
find / -name\".*\"-type f 2>/dev/null

# 查找可疑脚本
find / \\( -name\"*.sh\"-o-name\"*.py\"-o-name\"*.pl\"-o-name\"*.php\" \\) \\
  -mtime-30-ls2>/dev/null

# 检查常见 Webshell 目录
find /var/www /home -type f -name\"*.php\"-mtime-72>/dev/null

3.4 定时任务排查

# 用户定时任务
for user in$(cut -f1 -d: /etc/passwd); do
  echo\"=== $user ===\"
  crontab -u$user-l2>/dev/null
done

# 系统定时任务
cat /etc/crontab
ls-la /etc/cron.d/
ls-la /etc/cron.daily/
ls-la /etc/cron.hourly/
ls-la /etc/cron.monthly/
ls-la /etc/cron.weekly/
ls-la /var/spool/cron/

# 检查 anacron
cat /etc/anacrontab

3.5 启动项排查

# Systemd 服务
systemctl list-unit-files --type=service--state=enabled
ls-la /etc/systemd/system/
ls-la /lib/systemd/system/

# Init.d 脚本
ls-la /etc/init.d/

# RC 本地启动
cat /etc/rc.local
ls-la /etc/rc.d/

# 用户自启动项
ls-la ~/.config/autostart/
ls-la /home/*/.config/autostart/

3.6 用户账户排查

# 检查特权用户
awk-F: '$3==0 {print $1}' /etc/passwd

# 检查有密码的用户
awk-F: '($2!=\"\" && $2!=\"x\") {print $1}' /etc/shadow

# 检查 sudo 权限
cat /etc/sudoers
ls-la /etc/sudoers.d/

# 检查 SSH 密钥
ls-la /root/.ssh/
cat /root/.ssh/authorized_keys
ls-la /home/*/.ssh/
cat /home/*/.ssh/authorized_keys 2>/dev/null

# 检查可疑账户
cat /etc/passwd | grep-v nologin | grep-vfalse

3.7 日志分析

# 系统日志
tail -100 /var/log/messages
tail -100 /var/log/syslog

# 安全日志(登录、sudo等)
tail -500 /var/log/secure      # RHEL/CentOS
tail -500 /var/log/auth.log    # Debian/Ubuntu

# SSH 日志
grep-i\"failed\\|accepted\\|invalid\" /var/log/secure
grep-i\"failed\\|accepted\\|invalid\" /var/log/auth.log

# 用户命令历史
cat ~/.bash_history
cat /home/*/.bash_history 2>/dev/null

# Web 服务器日志(如有)
tail -500 /var/log/nginx/access.log
tail -500 /var/log/apache2/access.log
grep-i\"eval\\|base64\\|exec\\|shell\" /var/log/nginx/access.log

4. 威胁遏制与清除

4.1 隔离网络(视情况)

# 禁用网络接口
ifconfig eth0 down
# 或
ip link set eth0 down

# 配置防火墙阻断外连
iptables -A OUTPUT -d <恶意IP> -j DROP
iptables -A OUTPUT -p tcp --dport <恶意端口> -j DROP

# 保存防火墙规则
iptables-save > /tmp/iptables_backup.rules

4.2 终止恶意进程

# 终止进程
kill-9 <PID>

# 终止进程树
kill-9-$(ps -o pgid= -p <PID> | tr -d ' ')

# 防止进程重启(检查定时任务、启动项)

4.3 删除恶意文件

# 先备份可疑文件(用于后续分析)
mkdir-p /tmp/malware_backup
cp <可疑文件> /tmp/malware_backup/

# 计算文件哈希(用于威胁情报查询)
md5sum <可疑文件>
sha256sum <可疑文件>

# 删除恶意文件
rm-f <恶意文件路径>

# 删除恶意定时任务
crontab -e  # 编辑删除
rm-f /etc/cron.d/<恶意任务文件>

# 删除恶意启动项
systemctl disable <恶意服务>
rm-f /etc/systemd/system/<恶意服务>.service
systemctl daemon-reload

# 删除恶意用户
userdel -r <恶意用户名>

4.4 清除后门

# 清除 SSH 后门密钥
vim /root/.ssh/authorized_keys
vim /home/*/.ssh/authorized_keys

# 清除 SUID 后门
chmod u-s <可疑SUID文件>

# 检查并清除内核模块后门
lsmod | grep <可疑模块名>
rmmod <可疑模块名>

5. 系统恢复与加固

5.1 修复漏洞

  • 更新系统和软件包:yum update / apt update && apt upgrade
  • 修复被利用的漏洞点(Web应用、弱密码等)
  • 检查并关闭不必要的服务和端口

5.2 加固措施

# SSH 加固
vim /etc/ssh/sshd_config
# PermitRootLogin no
# PasswordAuthentication no
# Port <非默认端口>

# 配置防火墙白名单
iptables -A INPUT -s <信任IP> -j ACCEPT
iptables -A INPUT -j DROP

# 禁用不必要的服务
systemctl disable <服务名>

# 安装入侵检测工具(可选)
yum install -y rkhunter chkrootkit
rkhunter --check
chkrootkit

5.3 密码重置

  • 重置所有可能泄露的密码
  • 重置 SSH 密钥
  • 重置数据库密码

5.4 监控与告警

# 安装监控工具
yum install -y aide  # 文件完整性监控
aide --init
aide --check

# 配置日志监控
# 考虑部署 ELK、Wazuh 等 SIEM 系统

6. 事件总结与报告

6.1 事件报告内容

  • 事件概述:发现时间、发现方式、影响范围
  • 攻击时间线:入侵时间、攻击者行为、持续时间
  • 攻击手段:利用的漏洞、植入的后门、持久化方式
  • 影响评估:受影响系统、数据泄露情况、业务影响
  • 处置措施:遏制措施、清除措施、加固措施
  • 改进建议:预防措施、监控改进、流程优化

6.2 威胁情报共享

  • 提交恶意文件样本到 VirusTotal、微步在线
  • 提交恶意 IP/域名到威胁情报平台
  • 内部知识库记录攻击特征

三、常用工具

1. 文件分析

# 文件类型识别
file <文件名>

# 字符串提取
strings <文件名>

# 文件哈希
md5sum <文件名>
sha256sum <文件名>

# 查看文件时间属性
stat <文件名>

2. 网络分析

# 抓包分析
tcpdump -i eth0 -w capture.pcap
tcpdump -i eth0 port <端口>

# 查看流量统计
iftop
nethogs

3. 进程分析

# 进程树
pstree -p

# 进程资源占用
pidstat -p <PID>

# 系统调用跟踪
strace -p <PID>

4. 专业工具

工具 用途
Volatility 内存取证
LiME 内存采集
chkrootkit Rootkit检测
rkhunter Rootkit检测
ClamAV 开源杀毒
YARA 恶意代码识别
CrowdStrike EDR平台
Wazuh SIEM平台

📌 声明:本文仅供安全研究与学习使用,请勿用于非法用途。应急响应过程中请遵守相关法律法规,保护用户隐私和数据安全。



Linux病毒应急响应方案" 网络安全文章

Linux病毒应急响应方案"

本文档详细介绍了Linux服务器遭遇病毒或恶意软件时的应急响应标准化流程,包括初步识别异常现象、现场保护与证据固定、威胁排查与定位、遏制清除、系统恢复加固以及事件总结报告。提供了大量实用命令如ps、netstat、find、crontab等用于排查恶意进程、网络连接、可疑文件、定时任务和用户账户。强调先备份再清除,并建议修复漏洞、加固SSH、配置防火墙、安装监控工具。可操作性强,适合安全运维人员参考。
Bjorn—树莓派驱动的自主网络安全评估平台" 网络安全文章

Bjorn—树莓派驱动的自主网络安全评估平台"

Bjorn是一个基于树莓派Zero2W的轻量级网络安全自评估工具,由国外技术博主开发。它通过自动扫描开放端口、发现暴露的Web接口、识别已知漏洞服务和设备指纹,生成HTML报告。其核心价值在于低成本(15美元硬件)、零配置和即插即用,适用于家庭网络自检或红队现场初测,但需在授权环境下使用。
工具推荐|Burp/Yakit平替?SwordfishSuite无缝拦截与修改HTTP/S请求。集成云端虚拟手机,快速定位APP漏洞" 网络安全文章

工具推荐|Burp/Yakit平替?SwordfishSuite无缝拦截与修改HTTP/S请求。集成云端虚拟手机,快速定位APP漏洞"

本文介绍SwordfishSuite,一款受BurpSuite启发的现代化Web安全测试平台,具备智能拦截代理、流量拦截、负载扫描及Python插件系统等核心功能。文章强调其用于安全测试与防御研究,并引导读者关注公众号获取下载地址及加入付费知识星球,内容包含大量工具推广与社群引流信息。
评论:0   参与:  0