Vous êtes ici : Accueil / Debian GNU/Linux / Système / Sécurité / Sécuriser le dossier temporaire sur Debian

Sécuriser le dossier temporaire sur Debian

Par Pierre-Yves Landuré Dernière modification 11/11/2017 09:31

Le dossier /tmp peut être utilisé pour compromettre la sécurité du système. Une méthode simple et efficace pour palier à ce problème est d'empêcher l'exécution des scripts dans ce dossier. Cet article vous guide durant la mise en place de cette solution.

Ce guide est testé sur:

  • Debian 5.0 Lenny
  • Debian 6.0 Squeeze

Installation

Créez un dossier destiné à contenir la partition loopback remplaçant le dossier temporaire :

command mkdir '/var/lib/tmpfs'

Créez un fichier vide d'1 Go destiné à remplacer le dossier /tmp (cette opération peut prendre plusieurs secondes):

command dd if=/dev/zero of='/var/lib/tmpfs/tmp.fs' bs=1024 count=1000000

Formater le fichier en ext3 :

command mkfs.ext3 -F '/var/lib/tmpfs/tmp.fs'

Ajoutez la ligne adéquate au fichier fstab :

command echo "/var/lib/tmpfs/tmp.fs /tmp ext3 loop,noexec,nosuid,nodev,rw 0 0" \
>> '/etc/fstab'

Les commandes suivantes ne sont pas élégantes mais limitent les perturbations des logiciels utilisant le dossier temporaire lors de l'activation de notre nouvelle partition.

command mv '/tmp' '/tmp.old'
command mkdir '/tmp'
command mount '/tmp'
command mv '/tmp.old/'* '/tmp/'
command mv '/tmp.old/'.* '/tmp/'
command rm -r '/tmp.old'

Ajustez les droits d'écriture du dossier temporaire:

command chmod ugo+rwx '/tmp'

Ajustez la configuration d'apt pour qu'il ne soit pas gêné par cette modification de comportement :

command echo 'DPkg
{
Pre-Invoke { "command mount /tmp -o remount,exec" };
Post-Invoke { "command mount /tmp -o remount,noexec || true" };
};' > '/etc/apt/apt.conf.d/90mount'

Le répertoire temporaire ne peut maintenant plus être utilisé pour exécuter des scripts.

Désinstallation

Pour désinstaller les réglages mis en place par ce guide, désactivez le point de montage:

command sed -i -e '/\/var\/lib\/tmpfs\/tmp.fs/d' '/etc/fstab'

Redémarrez le système (obligatoire pour désactiver le montage):

command reboot

Supprimez les fichiers:

command rm '/etc/apt/apt.conf.d/90mount' \
           '/var/lib/tmpfs/tmp.fs'

Remerciements

  • Merci à fighting_falcon pour son aide avec la configuration d'Apt.
  • Merci à Kevin pour son guide "Secure your /tmp folder".