在 Debian(以及大多数 Linux 发行版)中,“隐藏进程”通常指:
. 开头、或在 ps/top 中不明显ps 看不到,但内核里存在)下面按从简单到专业的方式说明如何查找。
ps -ef
ps aux
隐藏用户态进程一般只是名字像 .xxx,还是能看到。
ls /proc | grep '^[0-9]'
每个数字目录是一个 PID。
对比:
ps -eo pid | sort -n > ps.txt
ls /proc | grep '^[0-9]' | sort -n > proc.txt
diff ps.txt proc.txt
✅ 如果 /proc 有但 ps 没有 → 很可能是被隐藏的进程
unhide(最强推荐)sudo apt install unhide
sudo unhide proc
sudo unhide sys
unhide proc:对比 /proc 和内核调度unhide sys:使用系统调用检测输出示例:
Found HIDDEN PID: 1234
chkrootkitsudo apt install chkrootkit
sudo chkrootkit
rkhuntersudo apt install rkhunter
sudo rkhunter --check
sudo cat /proc/self/mountinfo
或使用:
sudo ls /sys/kernel/debug/tracing/events/sched/
bpftrace(高级)sudo bpftrace -e 'tracepoint:sched:sched_process_exec { printf("%d %s\n", pid, comm); }'
可发现 ps 看不到的新进程。
如果:
unhide 发现隐藏 PIDchkrootkit / rkhunter 报警/proc 和 ps 不一致✅ 高度疑似 rootkit 或恶意程序
如果你愿意,可以告诉我:
unhide 的输出结果我可以进一步帮你分析。