Saya mencoba menentukan apakah, di Linux, variabel lingkungan untuk suatu proses dapat diamati oleh pengguna (non-root) lainnya.
Kasus penggunaan langsung adalah memasukkan rahasia ke dalam variabel lingkungan. Ini dibahas di banyak tempat di seluruh web sebagai tidak aman, tapi saya belum bisa membidik titik eksposur yang tepat di Linux.
Perhatikan bahwa saya tidak berbicara tentang memasukkan rahasia cleartext ke dalam file. Perhatikan juga bahwa saya tidak berbicara tentang pemaparan ke akun root (saya melihat upaya untuk menyembunyikan rahasia dari musuh dengan root sebagai nonstarter).
Pertanyaan ini muncul untuk menjawab pertanyaan saya, dengan komentar yang mengklasifikasikan variabel lingkungan sebagai benar-benar tanpa keamanan, atau hanya dikaburkan, tetapi bagaimana seseorang mengaksesnya?
Dalam pengujian saya, satu pengguna yang tidak memiliki hak tidak dapat mengamati variabel lingkungan untuk pengguna lain melalui tabel proses ('ps auxwwe'). Perintah yang mengatur variabel lingkungan (mis. Ekspor) adalah shell bawaan yang tidak membuatnya ke tabel proses dan dengan ekstensi tidak di / proc / $ pid / cmdline. / proc / $ pid /viron hanya dapat dibaca oleh UID dari pemilik proses.
Mungkin kebingungannya adalah antara sistem operasi atau versi yang berbeda. Berbagai sumber (baru-baru ini) di web mengutuk ketidakamanan variabel lingkungan, tetapi pengecekan langsung saya terhadap berbagai versi linux tampaknya mengindikasikan bahwa ini tidak mungkin dilakukan paling tidak pada 2007 (mungkin lebih jauh tetapi saya tidak memiliki kotak pada tangan untuk menguji).
Di Linux, bagaimana pengguna yang tidak memiliki hak istimewa dapat mengamati variabel lingkungan untuk proses orang lain?