GNU/Linux >> Znalost Linux >  >> Linux

Jsou proměnné prostředí viditelné pro neprivilegované uživatele v systému Linux?

Jak Gilles vysvětlil ve velmi obsáhlé odpovědi na podobnou otázku na security.stackexchange.com, prostředí procesů jsou přístupná pouze uživateli, který proces vlastní (a samozřejmě root).


Proměnné prostředí jsou dostatečně bezpečné. Otázka, na kterou jste odkazovali, říká, že pokud je systém kompromitován, jedinou bezpečnostní výhodou používání proměnných prostředí v konfiguračním souboru je nejasnost. To znamená, že pokud někdo získal root přístup, může se dostat k oběma.
Je také diskutabilní, zda je použití proměnných prostředí pro tajná data považováno za „obskurní“. Jedná se o velmi běžnou praxi, a proto bych ji za takovou nepovažoval.

K datům uloženým v proměnné prostředí máte přístup pouze na 2 místech:

1. Běžící prostředí procesu

Když je proces spuštěn, lze k proměnným prostředí tohoto procesu přistupovat prostřednictvím /proc/$PID/environ . K tomuto souboru však má přístup pouze uživatel, který proces vlastní, neboli root.

2. Zdroj proměnných prostředí

Pokud používáte init skript a proměnné jsou uloženy v tomto init skriptu, proměnné lze samozřejmě získat přečtením tohoto skriptu.

Nebo pokud proměnné prostředí přicházejí odjinud, pak kdekoli.

3. výstup 'ps'

Jo, vím, že jsem řekl 2, a v každém slušném systému to bude 2. Pokud však admin neví, co dělá, je možné otevřít třetí cestu.

Pokud je proces spuštěn pomocí něčeho jako sh -c 'cd /foo/bar; POP=tart /my/executable' , pak sh proces bude viditelný v 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. Jak nastavit/vytvořit proměnné prostředí a prostředí v Linuxu

  2. Linux – trvalá proměnná prostředí pro všechny uživatele?

  3. Linux – Jsou proměnné prostředí viditelné pro neprivilegované uživatele na Linuxu?

  1. Linux – jak učinit proces neviditelným pro ostatní uživatele?

  2. Jak nastavit, vypsat a odebrat proměnné prostředí v Linuxu

  3. Proměnné uživatelského prostředí S „su“ a „sudo“ v Linuxu

  1. Linux Mint – trvalé přidávání proměnných prostředí

  2. Jak nastavit proměnné prostředí Linuxu pomocí Ansible

  3. Nastavení proměnných prostředí Linuxu