Bonsoir,
Petite question sur le niveau de sécurité apporté par une solution :
1) Une application installée sur un serveur doit pouvoir être lancée de 2 façons :
- en mode daemon via un script dans init.d
- manuellement à des fins de test
2) Pour des raisons de sécurité, cette appli est installée (et lancée via init.d) sous un compte utilisateur quelconque (mettons user), ne possédant ni shell ni mot de passe valide (!! dans /etc/shadow)
3) Aucun problème pour la lancer sous ce compte en mode daemon
4) Le souci : pouvoir lancer ce programme depuis un compte utilisateur quelconque sans que les fichiers de logs, de config, etc... puissent être modifiés par cet utilisateur.
5) Solution proposée :
Droits des fichiers de config / log / etc... en user:user et 644
Ces fichiers sont situés dans un répertoire dont les droits sont 755 appartenant à user:user
L'utilisateur normal n'a donc normalement pas la possibilité de les modifier ou de les effacer.
Le problème est que si l'appli est en 755, l'utilisateur toto qui lancera l'appli en mode test ne pourra pas écrire dans les logs puisqu'ils ne lui appartiennent pas.
La solution à laquelle je pense est de mettre cette appli setuid "user" ce qui règle le problème d'écriture dans les logs, n'oblige pas à mettre un mot de passe et un shell sur ce compte.
Bref, je ne vois pas de risques inconsidérés à cette méthode.
Quel est l'avis des experts sécurité sur ce point ?
Y-a-t-il un trou dans la raquette auquel je ne pense pas ?
Merci d'avance
Jacques