Les seuls répertoires mandatés par la FHS qui sont généralement accessibles en écriture mondiale sont /tmp
et /var/tmp
. Dans les deux cas, c'est parce qu'ils sont destinés à stocker des fichiers temporaires qui peuvent être créés par n'importe qui.
Il est également courant /dev/shm
, en tant que tmpfs (système de fichiers soutenu par la RAM), d'accéder rapidement aux données de taille moyenne partagées entre les processus, ou tout simplement de créer des fichiers dont la destruction est garantie au redémarrage.
Il peut également y avoir un /var/mail
ou /var/spool/mail
, et parfois d'autres répertoires de spouleur. Ceux-ci sont utilisés pour conserver temporairement le courrier avant qu'il ne soit traité. Ils ne sont pas toujours accessibles en écriture, selon les outils utilisés. Quand ils le sont, c'est parce que les fichiers peuvent y être créés par des outils utilisateur pour être traités par des démons.
Tous ces répertoires ont généralement le sticky bit ( t
) défini, ce qui signifie que seul le propriétaire d'un fichier ou du répertoire peut déplacer ou supprimer les fichiers qu'il contient.
Tout programme fonctionnant comme n'importe quel utilisateur peut créer des fichiers dans ces répertoires, et c'est au programme de création de faire ce qu'il faut en matière de sécurité pour ses données particulières. Il n'y a pas de problème de sécurité général particulier autre que quelqu'un remplissant potentiellement le système de fichiers, mais beaucoup de possibilités pour un programme de se tromper.
Il y a eu quelques mouvements vers des /tmp
répertoires spécifiques aux services . Ceux-ci évitent certains des bogues potentiels qui peuvent survenir, il n'est donc pas aussi vital que le programme soit exempt de bogues dans la façon dont il utilise le répertoire.
Vous pouvez trouver les répertoires accessibles en écriture sur votre système avec:
find / -maxdepth 3 -type d -perm -777
/var/lock
→/run/lock