# Linux 应急排查命令速查(入侵响应,红队/蓝队通用)
> 原则:优先导出日志、不随意执行高危命令;**先取证,后处置**;尽量避免修改系统时间、删除日志。适用于服务器被植入后门、挖矿、webshell、账号入侵、反弹Shell场景。
## 一、基础信息收集
```bash
# 系统版本、内核
uname -a
cat /etc/os-release
hostname
hostname -I
# 系统时间(判断日志时间线)
date
# 系统历史记录(重点,攻击者操作痕迹)
history
cat ~/.bash_history
# 所有用户bash历史
for i in /home/*;do cat $i/.bash_history 2>/dev/null;done
```
## 二、账号排查(可疑账号、特权账号)
```bash
# 全部系统账号
cat /etc/passwd
# 查看特权UID=0账号(除root外出现即为异常)
awk -F: '$3==0 {print $1}' /etc/passwd
# 查看影子文件
cat /etc/shadow
# 查看用户组
cat /etc/group
# 查看最近登录、失败登录
last # 成功登录记录
lastb # 登录失败记录(需要root)
lastlog # 所有用户最近一次登录
# 查看当前在线用户
w
who
```
## 三、网络连接排查(外联C2、挖矿、反弹shell)
```bash
# 推荐(替代netstat,速度更快)
ss -tulnp
ss -antp
# netstat版本
netstat -antp
# 查看路由
ip route
route
# DNS配置
cat /etc/resolv.conf
# ARP缓存
arp -n
# 查看监听端口(重点:0.0.0.0 全网监听)
ss -ltn
```
> 关注:陌生ESTABLISHED外联、境外IP、异常高位端口、恶意端口(挖矿端口、代理端口)
## 四、进程排查(恶意进程、挖矿、反弹shell)
```bash
# 进程树,看父子关系(推荐)
pstree -ap
# 完整进程信息(命令行、PID)
ps -ef
ps aux
# 按CPU排序(挖矿首选排查)
ps aux --sort=-%cpu
# 按内存排序
ps aux --sort=-%mem
# 查看进程打开的文件(查找恶意程序文件)
lsof -p
lsof | grep deleted # 已删除但仍在运行的恶意文件(内存驻留)
# 查看哪个进程占用端口
lsof -i :端口号
```
可疑特征:进程路径在 `/tmp /var/tmp /dev/shm`、进程名乱码、CPU100%、父进程异常(bash被网络进程拉起)
## 五、开机自启 & 持久化(后门驻留重点)
```bash
# 1. crontab 计划任务(Linux后门最高发)
crontab -l # 当前用户
for u in $(cut -f1 -d: /etc/passwd);do crontab -u $u -l 2>/dev/null;done
ls -l /etc/cron.*
cat /etc/crontab
# 2. systemd 服务(重点!新型后门常用)
systemctl list-unit-files --type=service
systemctl list-units --type=service
ls /etc/systemd/system/
# 3. rc.local
cat /etc/rc.local
# 4. 开机脚本 /etc/profile /bashrc 后门
cat /etc/profile
cat ~/.bashrc
cat /etc/bash.bashrc
```
## 六、可疑文件检索(webshell、木马、脚本)
```bash
# 查找7天内新增的可执行文件
find /tmp -type f -mtime -7
find /var/tmp -type f -mtime -7
find /dev/shm -type f -mtime -7
# 查找SUID提权文件(高危)
find / -perm -4000 -type f 2>/dev/null
# 查找webshell关键词(php后门)
grep -r "eval(" /var/www 2>/dev/null
grep -r "system(" /var/www 2>/dev/null
# 查找大文件、可疑压缩包
ls -lh /tmp
ls -lh /dev/shm
```
高危目录:`/tmp /var/tmp /dev/shm /var/www /home`
## 七、日志审计(溯源入侵行为)
```bash
# 系统登录、认证日志
cat /var/log/secure
cat /var/log/auth.log
# 系统日志
cat /var/log/messages
cat /var/log/syslog
# web日志(nginx/apache)
tail -f /var/log/nginx/access.log
tail -f /var/log/apache2/access.log
# 查看日志是否被篡改/清空
ls -l /var/log/
```
> 重点关键词:`Accepted password`、`Failed password`、`sudo`、`wget/curl`(攻击者下载木马)
## 八、环境变量 & 恶意预加载(高级后门)
```bash
# 查看环境变量
env
# LD_PRELOAD 恶意动态库劫持后门
cat /etc/ld.so.preload
ls /etc/ld.so.preload
```
## 九、内核与模块排查(rootkit 内核后门)
```bash
# 查看内核版本
uname -r
# 列出内核模块
lsmod
# 查找可疑内核模块
dmesg | grep -i module
```
## 十、应急处置常用命令
```bash
# 结束恶意进程
kill -9 PID
# 隔离服务器(阻断所有网络,应急断网)
iptables -P INPUT DROP
iptables -P OUTPUT DROP
# 备份日志(取证)
cp -r /var/log /tmp/log_bak
# 查找恶意文件并删除(谨慎!先备份样本)
rm 恶意文件路径
```
## 快速排查顺序(5分钟初查流程)
1. `w / last / lastb` → 登录异常
2. `ss -antp` → 异常外联端口
3. `ps aux --sort=-%cpu` → 挖矿/恶意进程
4. `crontab -l && ls /etc/cron.*` → 计划任务后门
5. `ls /tmp /dev/shm` → 临时目录木马
6. 查看 `/var/log/secure` 登录日志
## 常见后门点位速记
1. crontab 定时任务(最多)
2. /tmp /dev/shm 临时文件
3. systemd 恶意服务
4. bashrc / profile 环境变量劫持
5. LD_PRELOAD rootkit
6. Web目录下WebShell