如何隐藏特定进程?

GAD*_*D3R 4 linux process debian

该命令hidepid用于防止用户看到不属于他们的所有进程,但它不提供选择特定进程的可能性。是否可以在 Linux 机器上只隐藏一个进程?

use*_*039 9

有点脏,可能有更简洁的解决方案(可能使用 SELinux 或 grsec),但是您可以通过在/proc/<pid>.

例如,这样的事情:

mount -o bind /empty/dir /proc/42
Run Code Online (Sandbox Code Playgroud)

将阻止普通用户看到进程 42。

然而,他们会看到某些东西被隐藏了,因为他们将能够看到挂载点。

如果您想为服务执行此操作,则必须在每次启动时使用其 init 脚本或其他方式执行此操作。

如果您只想对特定用户隐藏 pid,您可以使用命名空间(可能使用pam_namespace)来让挂载绑定仅在目标用户的命名空间中完成。

为了扭转这种情况,只需运行:

umount /proc/42
Run Code Online (Sandbox Code Playgroud)