GNU/Linux >> Tutoriales Linux >  >> Linux

¿Las variables de entorno son visibles para usuarios sin privilegios en Linux?

Como explicó Gilles en una respuesta muy completa a una pregunta similar en security.stackexchange.com, los entornos de proceso solo son accesibles para el usuario propietario del proceso (y raíz, por supuesto).


Las variables de entorno son bastante seguras. Lo que dice la pregunta a la que se vinculó es que si el sistema está comprometido, el único beneficio de seguridad de usar variables de entorno sobre un archivo de configuración es la oscuridad. Lo que significa que si alguien ha obtenido acceso de root, puede acceder a ambos.
También es discutible si el uso de variables de entorno para datos secretos se considera "oscuro". Esta es una práctica muy común, y por lo tanto no la consideraría tal.

Solo puede acceder a los datos almacenados en una variable de entorno en 2 lugares:

1. El entorno de ejecución del proceso

Cuando el proceso se está ejecutando, se puede acceder a las variables de entorno de ese proceso a través de /proc/$PID/environ . Sin embargo, solo el usuario propietario del proceso, o root, puede acceder a ese archivo.

2. La fuente de las variables de entorno

Si está utilizando un script de inicio y las variables están almacenadas en ese script de inicio, las variables, por supuesto, se pueden obtener leyendo ese script.

O si las variables de entorno provienen de otro lugar, entonces donde sea que esté.

3. salida 'ps'

Sí, sé que dije 2, y en cualquier sistema decente, será 2. Sin embargo, si el administrador no sabe lo que está haciendo, es posible abrir una tercera vía.

Si el proceso se inicia a través de algo como sh -c 'cd /foo/bar; POP=tart /my/executable' , entonces ese sh el proceso será visible en 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. Linux:¿variable de entorno permanente para todos los usuarios?

  2. Linux:¿cómo hacer que un proceso sea invisible para otros usuarios?

  3. Cómo configurar las variables de entorno de Linux con Ansible

  4. Configuración de variables de entorno de Linux

  5. Cómo leer las variables de entorno de un proceso

Cómo establecer variables de entorno en Linux

Cómo establecer y enumerar variables de entorno en Linux

Cómo establecer y enumerar variables ambientales en Linux

Cómo configurar y desactivar variables de entorno en Linux

Guía fácil paso a paso de variables de entorno de Linux

Variables de entorno de Linux