GNU/Linux >> Belajar Linux >  >> Linux

Apakah variabel lingkungan terlihat oleh pengguna yang tidak memiliki hak di Linux?

Seperti yang dijelaskan Gilles dalam jawaban yang sangat komprehensif untuk pertanyaan serupa di security.stackexchange.com, lingkungan proses hanya dapat diakses oleh pengguna yang memiliki proses (dan tentunya root).


Variabel lingkungan sangat aman. Apa pertanyaan yang Anda tautkan katakan adalah bahwa jika sistem dikompromikan, satu-satunya manfaat keamanan menggunakan variabel lingkungan di atas file konfigurasi adalah ketidakjelasan. Artinya jika seseorang telah mendapatkan akses root, mereka dapat mengakses keduanya.
Apakah menggunakan variabel lingkungan untuk data rahasia dianggap 'tidak jelas' juga masih bisa diperdebatkan. Ini adalah praktik yang sangat umum, dan karena itu saya tidak akan menganggapnya seperti itu.

Anda hanya dapat mengakses data yang disimpan dalam variabel lingkungan di 2 tempat:

1. Lingkungan proses yang sedang berjalan

Saat proses sedang berjalan, variabel lingkungan dari proses tersebut dapat diakses melalui /proc/$PID/environ . Namun, hanya pengguna yang memiliki proses, atau root, yang dapat mengakses file tersebut.

2. Sumber variabel lingkungan

Jika Anda menggunakan skrip init, dan variabel disimpan dalam skrip init tersebut, tentu saja variabel tersebut dapat diperoleh dengan membaca skrip tersebut.

Atau jika variabel lingkungan berasal dari tempat lain, maka dari mana pun itu.

3. keluaran 'ps'

Ya, saya tahu saya mengatakan 2, dan dalam sistem yang layak, itu akan menjadi 2. Namun jika admin tidak tahu apa yang dia lakukan, mungkin untuk membuka jalan ke-3.

Jika proses diluncurkan melalui sesuatu seperti sh -c 'cd /foo/bar; POP=tart /my/executable' , lalu sh itu proses akan terlihat di ps :

$ sh -c 'cd /; POP=tart sleep 10' &
[1] 3085

$ ps ax | grep POP
phemmer   3085  14   5  0.0  0.0 SN         00:00 sh -c cd /; POP=tart sleep 10

Linux
  1. Variabel Lingkungan Pengguna Dengan "su" dan "sudo" di Linux

  2. Mengatur variabel lingkungan Linux

  3. aksesibilitas variabel lingkungan di Linux

  1. Linux – Variabel Lingkungan Permanen Untuk Semua Pengguna?

  2. Linux – Bagaimana Membuat Proses Tidak Terlihat oleh Pengguna Lain?

  3. Variabel lingkungan dari proses yang berjalan di Unix?

  1. Cara Mengatur/Membuat Variabel Lingkungan dan Shell di Linux

  2. Cara Mengatur, Mendaftar, dan Menghapus Variabel Lingkungan di Linux

  3. Linux Mint - menambahkan variabel lingkungan secara permanen