如何在进程列表和/proc/pid/cmdline中隐藏进程名称。如果进程名出现在进程列表中,这是可以的,但是它的参数不应该出现在列表中。原因参数包含纯文本密码和/或一些我想隐藏的敏感信息。
蒂娅,萨蒂什
发布于 2011-01-29 22:07:58
你不能隐藏它。这就是为什么许多好的CLI程序不在命令行中提供密码的原因。
有隐藏进程的软件,它被称为rootkit,因为它们想要隐藏。
提供密码的一种更好的方法是提供一个仅供进程用户读取的文件,并将密码存储在那里。例如,这是通过挂载和凭证选项来完成的。
发布于 2011-01-29 22:07:25
通常,不要在命令行上传递敏感信息。在环境变量*中传递它,或者在文件的内容中传递它,或者通过文件描述符传递它。
可以在程序启动后修改命令行(通过覆盖argv1指向的内存),但这会在程序启动和其参数被擦除之间留下一个漏洞窗口。一般来说,这是无法避免的。因此,不要对任何敏感数据使用程序命令行参数。
*-环境变量的安全性可能因unixes而异。在Linux上,这应该是安全的--如果您能够读取环境变量,那么您也可以直接读取进程内存。
https://stackoverflow.com/questions/4837257
复制相似问题