修改后的环境的环境变量可以从外部访问吗?

修改后的环境的环境变量可以从外部访问吗?

好的,我有一些由两个进程组成的代码:(a)父/启动器进程,(b)子进程。 (a) 有一个密码需要安全地传递给 (b)。由于我不会在这里讨论的原因,我无法通过在两者之间打开管道来传递密码。我正在考虑(a)为(b)创建一个修改过的环境(使用这里的 env 参数,FWIW)包含密码环境变量。我希望这个带有密码的环境变量在进程 (b) 的上下文之外将无法访问。那是对的吗?

理想情况下,我需要确保它在 Linux 和 Unix 系统上都是安全的。

答案1

我希望这个带有密码的环境变量在进程 (b) 的上下文之外无法访问。那是对的吗?

不,你不应该依赖这个。例如,在 Linux 上,同一用户运行的进程可以通过以下方式访问您的环境/proc/<pid>/environ

尝试:

tr '\0' '\n' < /proc/$$/environ

(或者使用任何进程的 PID)

相关内容