Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
好像我们可以用trace函数来追踪其他进程?操作系统有义务提供这样的接口。显然我们可以在他们调用系统调用时获取其他数据,例如隐藏密码,这是有风险的。是否有防止进程被跟踪的机制?
您需要 Linux 下的 CAP_SYS_PTRACE 功能。如果你没有它,你只能跟踪你可以发送信号的进程,除了那些运行 set-user-ID/set-group-ID 的进程。使用 prctl() 并设置 PR_SET_DUMPABLE 标志,进程也可以明确拒绝被跟踪。
有关详细信息,请参阅 man ptrace(2)。
我认为,您始终可以散列密码,因为发出系统调用。而且我认为您需要一定数量的特权才能挂钩登录管理器的 API 调用,所以应该没有任何问题。