Proteger las carpetas compartidas de trucos con enlaces y archivos

Riesgo bajo Marcado por defecto en IbexWall Catálogo revisado: 2026-11-05

Bloquea los ataques clásicos que colocan un enlace o un archivo en /tmp para que un programa con privilegios escriba donde quiere el atacante.

Por qué importa

En una carpeta compartida como /tmp, cualquiera puede crear archivos. Un atacante planta ahí un enlace que apunta a algo importante, como un archivo de tu carpeta personal, y espera a que un script o un programa privilegiado escriba en el nombre de siempre. El programa sigue el enlace y sobrescribe el objetivo.

Cómo funciona

Activa cuatro protecciones del kernel: fs.protected_symlinks=1 y fs.protected_hardlinks=1 limitan seguir y crear enlaces en directorios compartidos con sticky bit, y fs.protected_fifos=2 y fs.protected_regular=2 impiden que programas abran, con creación, una tubería o un archivo de otro usuario en esas carpetas.

Quién debería usarlo

Apto para todos. Muchos sistemas ya activan la mayoría. Desactívalo solo si un script antiguo depende de reutilizar archivos creados por otro usuario en /tmp.

Qué puedes notar

Normalmente nada. Un script que escriba en un archivo de /tmp creado por otro usuario puede fallar con Permission denied.

Compruébalo en tu equipo

Lee el valor actual:

sysctl fs.protected_symlinks
sysctl fs.protected_hardlinks
sysctl fs.protected_fifos
sysctl fs.protected_regular

Aplícalo a mano

Establécelo ahora (hasta el próximo reinicio):

sudo sysctl -w fs.protected_symlinks=1
sudo sysctl -w fs.protected_hardlinks=1
sudo sysctl -w fs.protected_fifos=2
sudo sysctl -w fs.protected_regular=2

Consérvalo tras los reinicios, en un archivo tuyo:

sudo tee /etc/sysctl.d/90-fs-protected-files.conf <<'EOF'
fs.protected_symlinks = 1
fs.protected_hardlinks = 1
fs.protected_fifos = 2
fs.protected_regular = 2
EOF
sudo sysctl --system

Deshazlo

Elimina el archivo y reinicia, o vuelve a poner el valor anterior con sysctl -w.

Ajustes relacionados

Fuentes

Linux Hardening Guide (madaidans)
2.2.3
Linux kernel documentation
fs.protected_symlinks