3.4_Linux 应急响应排查速查命令表

Linux 应急响应排查速查命令表

现象 命令 作用
系统负载高 / CPU 飙升 top -c -o %CPU 按 CPU 使用率排序,查看高消耗进程及完整命令行
`ps aux --sort=-%cpu head -10`
pidstat 1 5 每秒采样一次,连续 5 次,观察各进程 CPU 动态变化
内存异常占用 free -h 查看内存整体使用情况(总量、已用、可用)
`ps aux --sort=-%mem head -10`
smem -p -s rss 更精确统计进程实际物理内存(含共享库)
可疑网络连接 netstat -antup 显示所有 TCP/UDP 连接、监听端口及对应进程 PID
ss -tunp 替代 netstat,快速列出带进程名的网络连接
lsof -i 列出所有打开的网络连接及对应程序
lsof -i :<端口号> 查看指定端口的连接详情
异常外连 IP `netstat -ant awk '/ESTABLISHED/{print $5}'
`ss -tunp grep ESTAB
可疑进程 ps auxf 树状显示进程关系,发现异常子进程
pstree -p 进程树展示,便于识别恶意进程派生关系
ls -l /proc/<PID>/exe 查看进程对应的可执行文件路径
cat /proc/<PID>/cmdline 获取进程完整启动命令(含参数)
strace -p <PID> 实时跟踪进程的系统调用,发现恶意行为
隐藏进程 `ps -e -o pid,cmd grep -v '^ *PID'
`cat /proc/[0-9]*/status | grep -E "^(Pid Name)"`
异常登录 / 用户 last 查看近期所有登录记录(包括重启)
lastb 查看失败的登录尝试(暴力破解痕迹)
who 当前登录的用户及其终端、时间
w 更详细的当前登录用户及活动
`cat /etc/passwd grep -E "/bin/bash$"`
grep ':x:0:' /etc/passwd 检查是否存在除 root 外的 UID=0 用户
awk -F: '$3==0 {print $1}' /etc/passwd 同上,更简洁
历史命令异常 history 查看当前用户执行过的命令历史
cat ~/.bash_history 直接读取 bash 历史文件
grep -i wget ~/.bash_history 搜索历史中的下载操作
grep -i curl ~/.bash_history 搜索 curl 命令痕迹
定时任务(后门持久化) crontab -l 查看当前用户的 cron 任务
crontab -u root -l 查看 root 用户的 cron 任务
ls -la /etc/cron* 检查系统级 cron 目录(cron.d, cron.daily, hourly 等)
cat /etc/crontab 查看系统主 crontab 文件
cat /var/spool/cron/crontabs/* 查看所有用户的 crontab 文件(Debian/Ubuntu 路径)
cat /var/spool/cron/* (CentOS/RHEL 路径)
开机启动项 / 服务后门 `systemctl list-unit-files grep enabled`
ls -la /etc/systemd/system/multi-user.target.wants/ 查看多用户模式下的自启服务软链接
chkconfig --list (旧 sysvinit)查看所有运行级服务状态
cat /etc/rc.local 检查 rc.local 中的自启命令(常见后门位置)
ls -la ~/.config/autostart/ 检查桌面环境自启动项(针对图形界面)
文件篡改 / 木马文件 find / -type f -mtime -1 -ls 查找最近 1 天内修改过的文件
find / -name "*.jsp" -mtime -2 按扩展名+修改时间查找(Webshell 常见)
find / -perm -4000 -type f -ls 查找 SUID 文件(提权后门)
stat <文件路径> 查看文件修改时间、访问时间、属性变化
`md5sum <文件> diff - <(cat 原始md5)`
ls -la /tmp /var/tmp /dev/shm 检查常见临时目录是否有可疑执行文件
find / -type f -size +10M -exec ls -lh {} \; 查找大文件(可能为加密容器或数据打包)
SSH 后门 / 密钥 cat ~/.ssh/authorized_keys 查看当前用户的 SSH 授权公钥(异常入口)
`cat /etc/ssh/sshd_config | grep -E "(PermitRootLogin PasswordAuthentication
find / -name "id_rsa" -o -name "id_dsa" 2>/dev/null 搜索私钥文件位置
Webshell 排查 find /var/www/ -name "*.php" -mtime -3 查找最近 3 天新创建的 PHP 文件
grep -r "eval(" /var/www/html/ 在 Web 目录搜索常见恶意函数
grep -r "base64_decode" /var/www/html/ 搜索 base64 解码(混淆 WebShell 常用)
grep -r "system(" /var/www/html/ 搜索命令执行函数
find /var/www/ -type f -name "*.jsp" -exec grep -l "getRuntime" {} \; 搜索 Java WebShell 特征
日志分析 tail -f /var/log/messages (或 /var/log/syslog) 实时跟踪系统日志
grep "Failed password" /var/log/secure (CentOS) 查看 SSH 登录失败记录
grep "Accepted password" /var/log/auth.log (Ubuntu) 查看成功的 SSH 登录
`grep -E "([0-9]{1,3}.){3}[0-9]{1,3}" /var/log/secure cut -d: -f4`
journalctl -u sshd --since "1 hour ago" 使用 systemd 日志查看 SSH 服务最近 1 小时记录
last -f /var/log/wtmp.1 查看历史 wtmp 日志(被轮转的)
内核模块 / Rootkit lsmod 列出已加载的内核模块,排查可疑 ko
modinfo <模块名> 查看模块详细信息(路径、依赖)
cat /proc/modules 原始格式的已加载模块列表
rkhunter -c 运行 Rootkit Hunter(需安装)
chkrootkit 另一款 Rootkit 扫描工具
环境变量 / 动态链接劫持 echo $PATH 查看当前 PATH 路径,确认是否存在异常目录
cat /etc/ld.so.preload 检查动态链接器预加载文件(常见用户态 Rootkit)
ldd /bin/ls 查看 ls 命令依赖的共享库,判断是否被劫持
进程隐藏 / 替换系统命令 which ps which netstat 确认命令路径是否被篡改(例如指向 /tmp)
type ps 查看 ps 是内部命令还是别名/文件
alias 检查是否存在命令别名劫持(如 ls 别名隐藏文件)
busybox ps (若安装了 busybox) 使用静态编译的 busybox 执行,绕过被替换的系统命令
系统资源异常(IO/带宽) iotop -o 查看正在进行磁盘 IO 的进程(需 root)
nethogs 按进程实时显示网络带宽占用
iftop 显示主机与外部 IP 的实时流量详情
清理与恢复辅助 kill -9 <PID> 强制终止可疑进程
chattr -i <文件> 移除不可变属性,以便删除被锁定的后门文件
rm -rf <可疑文件> 删除恶意文件
systemctl disable <恶意服务> 禁用自启的服务
crontab -r 清空当前用户的 cron 任务(谨慎使用)

使用建议

  • 以上命令多数需要 root 权限,建议先 sudo -i 切换到 root 用户。
  • 排查前先对关键数据进行备份(如 ddtar),避免破坏证据链。
  • 发现可疑进程或文件后,谨慎使用 killrm,先确认影响范围。
  • 若进程或文件无法删除,检查是否被 chattr +i 锁定、内核模块挂钩或位于 /proc/ 等特殊路径。
  • 生产环境操作需谨慎,必要时先隔离主机再排查。
相关推荐
孪生质数-1 小时前
Linux高危漏洞通报Copy Fail - CVE-2026-31431
linux·运维·服务器·ubuntu·网络安全·debian·cve-2026-31431
vortex51 小时前
Villain:新一代轻量级 C2 框架完整使用指南
python·网络安全·kali·c2
IMPYLH1 小时前
Linux 的 tee 命令
linux·运维·服务器·bash
lzh200409191 小时前
Linux信号(Signal)
linux·c++
pc07932 小时前
带网络接口的打印机和USB接口打印机的共享区别
运维·服务器·网络
汤愈韬2 小时前
Full Cone NAT、行为模式
网络·网络协议·网络安全·security
星河耀银海2 小时前
JAVA 泛型与通配符:从原理到实战应用
android·java·服务器
理人综艺好会2 小时前
nginx了解
运维·nginx
雷工笔记2 小时前
KingFusion|最近开发调试中遇到的几个问题及解决办法(2)
运维·服务器