[gull] Problème dans passage à Ubuntu

Félix Hauri felix at f-hauri.ch
Wed Apr 20 09:23:01 CEST 2005


On Tue, Apr 19, 2005 at 09:27:26AM +0200, Daniel Cordey wrote:
> On Monday 18 April 2005 19:23, Félix Hauri wrote:
> 
> > # find /home /var -uid 501 -exec chown -h 1000 {} \;
> >
> > N.B.: utiliser la récursivité avec une commande comme chown n'est pas une
> > habitude à prendre...
> 
> # find /  -uid 501 -exec chown -h 1000 {} \;
> 
> N'offre pas plus de securite que (ou alors je suis vraiment endormi ce 
> matin :-)) :

Bonjour,

J'espère que tu as bien dormi! ;-)

Je parlais d'habitude à prendre,

Si tu tapes ``find / ...'' tu sais ce que tu fais,
si tu tapes ``chown -R toto /...'' et qu'à ce moment ton
fils préféré viens te faire un bisou (gentil) et que pour grimper
sur tes genoux, il met sa main malencontreusement sur la touche ``return'',
tu es mal.
 1. envoyer baigner ton fils préféré :-(
 2. taper CTRL-C (fort) sur ton clavier.
 3. annalyser tes pulsations cardiaques...
 4. entreprendre d'évaluer les dégats.
 5. faire des excuses à ton fils...
 6. passer à confesse.



On Tue, Apr 19, 2005 at 11:47:31AM +0200, Daniel Cordey wrote:
> ...
> Oui, mais comme j'ai tendance a ne pas avoir de fichiers "etrangers" dans ma
> structure 'home'... :-)
>

On Tue, Apr 19, 2005 at 10:52:03AM +0200, Marc SCHAEFER wrote:
> On Tue, Apr 19, 2005 at 09:41:42AM +0200, Grégoire Métral wrote:
> > l'occurrence, on rend toto propriétaire de tous les documents, y compris
> > ceux qu'il n'a pas forcément créés... Bref, on écrase des infos, alors
>
> Et y compris la *destination* des liens symboliques avec certaines
> implémentations de chown.

Encore une fois, je parlais d'habitude, là cela rejoint une notion de sécurité,
Il est possible pour un utilisateur local d'élever ses privilèges ou d'accéder
à des fichier réservés en préparant des liens, planqués dans des sous-répertoires,
puis en demandant à l'administrateur (qui a pris des mauvaises habitudes;)
de ré-obtenir les accès à ses fichier. (ce type d'attaque peut être préparées p.
ex en prévision d'une mise à jour majeure du système.)

Et pour finir,

On Tue, Apr 19, 2005 at 11:47:31AM +0200, Daniel Cordey wrote:
> ...
> A part ca, le veritable danger ne vient pas d'une faute de frappe en tapant
> '/' au lieu de '/home/toto', mais plutot de l'utilisation lors de
> l'utilisation de variables dans un programme bash. Par exemple :
>
> nrwdir=/home/toto
> ...

On s'écarte du problème initial qui était la ligne de commande, mais...

Avant un truc comme

cd $newdir &&
    find . ...

tu peux faire:

[ "$newdir" ] || exit 1

ou mieux:

die() {
    echo >&2 "Error: $@"
}

nrwdir=/home/toto
...

[ "$newdir" ] || die "La variable 'newdir' est vide"
cd $newdir &&
    find . ...

voire

[ "$newdir" ] &&
    cd $newdir &&
    find . ...
...

De plus avant de lancer un script complexe en root:

   ... find . -name... -exec echo chown toto:hisgroup {} \;

Tu peux mettre un ``echo'' pour afficher l'action plutôt que de l'effectuer
au premier lancement d'un script potentiellement buggé.

C'est comme tu veux, tu choise, mais si tu fais des c... en scriptant du 
shell en ``root'', tu ne peux t'en prendre qu'à toi.

Il est l'heure du café...
Bonne journée!

-- 
 Félix Hauri  -  <felix at f-hauri.ch>  -  http://www.f-hauri.ch



More information about the gull mailing list