# 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