“Debian exploit”指的是针对 Debian 系统的漏洞利用程序。在对这类安全事件进行溯源(即调查攻击来源、攻击路径、利用的漏洞及造成的危害)时,通常遵循一套系统化的安全事件响应流程。
以下是针对 Debian 系统被 exploit 后的详细溯源步骤和常用命令:
在溯源前,不要立即重启服务器或随意清理文件(重启会丢失内存中的进程和网络连接信息)。
攻击者利用 exploit 后通常会留下后门账号或提权。
cat /etc/passwd
cat /etc/shadow
awk -F: '$3 == 0 {print $1}' /etc/passwd # 检查 UID 为 0 的特权用户
last # 登录成功记录
lastlog # 用户最后登录时间
lastb # 登录失败记录 (需有记录)
w # 当前登录用户
cat /etc/sudoers
ls -la /etc/sudoers.d/
ps auxf # 查看进程树,注意不明父进程
top -c # 按 CPU/内存排序
netstat -antup # Debian 老版本
ss -antup # 新版本推荐
lsof -i # 查看打开的网络文件
crontab -l
ls -la /etc/cron* /var/spool/cron/
cat /etc/crontab
Debian 使用 systemd,攻击者可能创建恶意 service。
systemctl list-unit-files --type=service | grep enabled
ls -la /etc/systemd/system/
cat /etc/rc.local
ls -la /etc/init.d/
Debian 常作为服务器,exploit 多通过 Web 应用或服务端口打入。
ss -tulnp
# 查找近期被修改的 php/jsp/py 文件
find /var/www/ -type f -mtime -7 \( -name "*.php" -o -name "*.jsp" \)
# 查找包含可疑函数的文件(如 eval, base64_decode)
grep -r "eval(" /var/www/
# Web 访问日志(寻找攻击 payload,如 SQL注入、RCE 特征)
tail -f /var/log/apache2/access.log
tail -f /var/log/nginx/access.log
# 系统认证日志(寻找 SSH 暴破)
grep "Failed password" /var/log/auth.log
Debian 默认日志在 /var/log/ 下。
cat /var/log/syslog
cat /var/log/auth.log # SSH、sudo 认证记录
cat /var/log/kern.log # 内核日志(某些本地提权 exploit 会触发内核报错)
auditd,可以追踪文件篡改和系统调用:ausearch -m USER_Cmd # 查看用户执行的命令
cat ~/.bash_history
cat /root/.bash_history
要确定攻击者具体利用了哪个 CVE/Exploit:
lsb_release -a
uname -a
dpkg -l | grep <具体服务如 openssl/ntp/nginx>
Dirty COW (CVE-2016-5195) 等本地提权漏洞。如果进程在内存中(无文件木马,如内存马):
gdb 或 py-spy 等工具 dump 进程内存。LiME 等工具提取整个系统内存镜像,用 Volatility 框架分析。apt update && apt upgrade)。Debian exploit 溯源的核心逻辑是:从“异常现象”(陌生进程、不明外连、文件篡改)反推“入侵路径”(Web漏洞、弱口令、未授权访问),再通过“日志与时间线”锁定攻击者的 IP 和使用的 Exploit 特征。 建议平时部署 Fail2ban、Auditd 并定期更新 apt 补丁,以防患于未然。