Linuxでは、権限のないユーザーが環境変数を表示できますか?

Linuxでは、権限のないユーザーが環境変数を表示できますか?

Linuxでは、root以外のユーザーがプロセスの環境変数を観察できることを確認しようとしています。

即時のユースケースは、秘密を環境変数に入れることです。これはウェブ上の多くの場所では安全ではないと考えられますが、Linuxの正確な露出ポイントに焦点を当てることはできません。

参考にしてください。いいえプレーンテキストの秘密をファイルに入れることについて話します。また、私いいえルートアカウントへの露出について話してください(ルートを使用して敵から秘密を隠そうとすることは不可能だと思います)。

この問題私の問題を解決するように見えるコメントは、環境変数を完全に安全ではないか、単に難読化されたものに分類します。しかし、その変数にどのようにアクセスしますか?

テストでは、権限のないユーザーはプロセステーブル(「ps auxwwe」)を介して他のユーザーの環境変数を観察できませんでした。環境変数(エクスポートなど)を設定するコマンドはシェルに組み込まれており、プロセステーブルには入らず、拡張時に/proc/$pid/cmdlineにはありません。 /proc/$pid/environは、プロセス所有者のUIDでのみ読み取ることができます。

おそらく、異なるオペレーティングシステムまたはバージョン間で混乱が発生する可能性があります。 Web上のさまざまな(最近の)ソースは環境変数の不安定性を非難しましたが、他のLinuxバージョンの私のランダムチェックは、これが少なくとも2007年(おそらくそれ以上であるかもしれませんが、箱はありません)にさかのぼる可能性がないようです。手で)テスト)。

Linuxでは、権限のないユーザーが他のプロセスの環境変数をどのように観察できますか?

ベストアンサー1

Gilesが非常に包括的な記事で説明したように回答security.stackexchange.comに関する同様の質問に関連して、プロセス環境はプロセス(もちろんルート)を所有しているユーザーだけがアクセスできます。

おすすめ記事