私がbashでコマンドを実行している場合、別のユーザーはさまざまな方法で引数を見ることができます。だからSomeCommand $PASSWORD
は悪い考えです。私はSomeCommandが、今では、Pythonでos.environ["PASSWORD"]
と言うの内部で環境変数を読み込み他のユーザが `SECRET =" ... "`を見ることは可能ですか?
env PASSWORD="SECRET" SomeCommand PASSWORD
をすれば同じことが当てはまると仮定します。 Passwordは現在のところ短時間で利用可能ですが、SomeCommandを実行するコマンドラインはenv
です(環境内でPASSWORDを使用するので、/proc
を見ている人はenv PASSWORD="SECRET" SomeCommand PASSWORD
と表示されます)。/proc/PID/environ
は通常ルートでのみ読み取り可能であり、通常env
は短くこれはより安全ですが、引き続きその議論が漏れています)。
ただし、私がexport
を使用する場合も同様です。 export
はbashビルトインです(つまり、エクスポートされたものはリークしません(例:proc
)。
コンソールにその名前を入力すると、他のユーザーが潜在的にアクセスできる '.bash_history'ファイルに入力されます。 – paddy
はい...私は考慮しています。ホームディレクトリはプライベートディレクトリです。 – divbyzero
'ps'はそれを表示しません。しかし、rootユーザには '/ proc/PID/environ'に表示されます。 – codeforester