Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[HS?] rm sur un fichier possédé par root possible par un utilisateur non root??

3 réponses
Avatar
Damien Courousse
Chers debianistes,

Je viens de faire par hasard un rm sur un fichier de mon compte, ce
fichier appartenant au user root: normalement je n'aurais pas dû pouvoir
le supprimer! Si?
Pouvez-vous éclairer ma lanterne?


Voici ci-dessous quelques détails:


(13:07:30):~/.xplanet/images
damien@MaisonLnx$ ls -l
total 768
-rw-r--r-- 1 root root 392668 2007-08-19 08:54 clouds_2048.jpg
-rw-r--r-- 1 root root 384653 2007-09-01 22:07 clouds.jpg

(13:07:31):~/.xplanet/images
damien@MaisonLnx$ rm clouds_2048.jpg
rm: détruire un fichier protégé en écriture fichier régulier
`clouds_2048.jpg'? o

(13:07:40):~/.xplanet/images
damien@MaisonLnx$ ls -l
total 380
-rw-r--r-- 1 root root 384653 2007-09-01 22:07 clouds.jpg

(13:07:47):~/.xplanet/images
damien@MaisonLnx$ groups
damien adm disk lp mail news man dialout fax voice cdrom floppy audio
www-data list irc gnats video plugdev games users ssh camera scanner
lpadmin delphine invite wheel memoire nogroup

(13:08:10):~/.xplanet/images
damien@MaisonLnx$ alias rm
bash: alias: rm: not found

(13:08:26):~/.xplanet/images
damien@MaisonLnx$ which rm
/bin/rm


quid?
Cordialement,
Damien


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

3 réponses

Avatar
Damien Courousse
Bonsoir Pascal!

Merci de ta réponse ultra-réactive!


Pascal Hambourg a écrit :

Je viens de faire par hasard un rm sur un fichier de mon compte, ce
fichier appartenant au user root: normalement je n'aurais pas dû
pouvoir le supprimer! Si?



Réponse courte : ça dépend de tes droits sur le répertoire contenant le
fichier.




cf. mon mail précédent.

le fichier est possédé par l'utilisateur root (rw), et le groupe root
n'a que les droits de lecture (r), ainsi que les autres utilisateurs:

(13:07:30):~/.xplanet/images
$ ls -l
total 768
-rw-r--r-- 1 root root 392668 2007-08-19 08:54 clouds_2048.jpg

Aussi, je n'appartiens pas au groupe 'root':

$ groups
damien adm disk lp mail news man dialout fax voice cdrom floppy audio
www-data list irc gnats video plugdev games users ssh camera scanner
lpadmin delphine invite wheel memoire nogroup



Réponse longue :


[snip]
Comme tu as
les droits en écriture sur le répertoire, tu peux "supprimer" n'importe
quel fichier qu'il contient même si tu ne peux pas l'écrire voire le lire.



C'est donc ça!

(20:41:14):~/.xplanet/images
$ ls -l ..
total 584
drwxr-xr-x 2 damien damien 4096 2007-09-06 20:06 images



Encore merci!
Damien


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Pascal Hambourg
Salut,

Damien Courousse a écrit :

Je viens de faire par hasard un rm sur un fichier de mon compte, ce
fichier appartenant au user root: normalement je n'aurais pas dû pouvoir
le supprimer! Si?



Réponse courte : ça dépend de tes droits sur le répertoire contenant le
fichier.

Réponse longue :
La présence d'un fichier dans un répertoire est une liaison (hard link)
entre le répertoire et l'inode du fichier. Plusieurs "fichiers" dans
différents répertoires d'un même système de fichiers peuvent être liés
au même inode, c'est en fait le même fichier (espace de stockage,
contenu) avec les mêmes droits vu sous plusieurs noms. Le nombre de
liaisons d'un fichier est affiché par ls -l après les droits d'accès. La
suppression d'un fichier avec rm n'est en fait que la suppression de la
liaison (unlink) entre le nom dans le répertoire et l'inode. Lorsque la
dernière liaison d'un inode est supprimée et qu'il n'est plus ouvert par
aucun programme, le fichier est effectivement supprimé du système de
fichiers (l'espace de stockage qu'il occupait est libéré). La commande
rm est une opération sur le répertoire et non sur l'inode. Comme tu as
les droits en écriture sur le répertoire, tu peux "supprimer" n'importe
quel fichier qu'il contient même si tu ne peux pas l'écrire voire le lire.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
fra-duf-no-spam
Le 13762ième jour après Epoch,
Damien Courousse écrivait:

Chers debianistes,

Je viens de faire par hasard un rm sur un fichier de mon compte, ce
fichier appartenant au user root: normalement je n'aurais pas dû
pouvoir le supprimer! Si?
Pouvez-vous éclairer ma lanterne?



Salut.

Le fichier était dans ton répertoire. Détruire un fichier si gnifie
avoir des droits sur le répertoire qui le supporte.