Un script de shell ( myscript
) se ejecutará como root, por cron
. Lee las direcciones IP de un archivo de configuración y actualiza iptables
para incluir en la lista blanca las IP de las conexiones entrantes.
myscript
usa una expresión regular (expresión regular) para analizar el archivo de configuración de las direcciones IP al principio de las líneas. No existe un riesgo obvio de un desbordamiento del búfer o una escalada de privilegios, porque se ignora todo lo que no coincida con la estructura y la longitud de una dirección IP.
Por razones operativas, este archivo de configuración debe ser actualizado por una persona específica y de confianza cuyo único acceso es a través de SFTP desde un programa antiguo de GUI SFTP que no puede autenticarse en sudo
. (Piense en CyberDuck, FileZilla, WinSCP). Esta persona no debe hacer nada más en la máquina. Claramente, deben iniciar sesión a través de una cuenta no root. Llamemos a su cuenta sftp-user
.
Si el archivo de configuración tenía root:root
como propietario y grupo, como la mayoría de los archivos de configuración de GNU / Linux, AFAIK, la única forma de que sftp-user
los edite sería si la cuenta sftp-user
tuviera sin contraseña sudo
privilegios Esto sería peligroso: le daría a la cuenta mucho más poder del necesario. Por lo tanto, se necesita una alternativa menos arriesgada.
Mi pregunta es: de lo siguiente, ¿cuál es el conjunto de permisos menos riesgoso para el archivo de configuración y por qué?
permissions owner group
----rw---- root sftp-user
-rw------- sftp-user root
-rw------- sftp-user sftp-user
Edite en respuesta a la ayuda de David answer : Sí, en circunstancias normales, los permisos anteriores son equivalentes. Suponiendo que el único miembro del grupo sftp-user
es sftp-user
, entonces cada uno de ellos permite el acceso de lectura y escritura solo a sftp-user
y a root
. Pero ¿qué pasa con las circunstancias extraordinarias: una de las configuraciones presenta menos riesgo que las otras? P.ej. ¿Ha habido casos de escalada de privilegios solo a través de la propiedad de archivos, de modo que la mezcla de un propietario raíz y un grupo no raíz (o viceversa) es una mala idea?