On Mon, 26 Jan 2004 02:06:41 +0100, Alain Tesio <[EMAIL PROTECTED]>
wrote :

> > 3) Comme indiqu� dans :
> > http://www.linuxsecurity.com/feature_stories/feature_story-99.html
> > Il est fondamental d'�liminer tout notion de 'root' dans la prison,
> > mais je ne vois pas bien comment lancer les programmes en tant
> > qu'utilisateur? car d�s que je lance chroot il semble que je sois
> > directement devenu root dans l'environnement (UID 0)
> 
> Plus pr�cis�ment il est fondamental qu'un utilisateur qui cracke le
> programme qui tourne dans le chroot ne puisse pas obtenir un acc�s
> root sinon le chroot ne sert plus � rien. Tu peux laisser des fichiers
> ex�cutables par root uniquement, mais surtout pas de binaire avec le
> flag suid.

Ok j'ai compris !

> > J'ai essay� -sans succ�s- d'utiliser le programme setuidgid des
> > daemontools pour fixer l'UID du processus que je vais lancer mais
> > bizarrement m�me si j'importe dans la 'prison' /etc/passwd et
> > /etc/group, setuidgid persiste � me dire que l'utilisateur n'existe
> 
> En g�n�ral le programme doit tourner en root au d�part (par exemple
> pour binder une socket < 1024) et change vers un autre user le plus
> vite possible.

D'accord mais comment faire dans le cas d'un programme qui n'est pas
con�u comme �a d�s le d�but ? Par exemple 'ls' ou 'find' ?
C'est pourquoi j'avais pens� � setuidgid/

> > pas... De plus le fait m�me d'avoir setuidgid dans la 'prison' me
> > renvoi � la case d�part (d�sol� c'est � force de jouer au
> > Monopoly...) car du coup la notion de root peut revenir par la
> > fen�tre (un attaquant peut corrompre le setuidgid pour acqu�rir
> > l'UID 0).
> 
> Je ne connais pas setuidgid, si c'est un ex�cutable suid comme celui
> de perl il y a un probl�me, si c'est un truc que tu lances en root
> pour abandonner des privil�ges il n'y a pas de risque particulier
> d'escalade d'une intrusion.

Je ne sais pas exactement comment il fonctionne mais il sert justement �
lancer un ex�cutable sous l'UID d'un utilisateur (cf.
http://cr.yp.to/daemontools/setuidgid.html)

> Essaies makejail (package du m�me nom), en gros il essaie de trouver
> tous les fichiers requis par ton programme qui tourne en chroot. Il y
> a d�j� des fichiers de configuration pour les trucs courants comme
> apache bind mysql, environ une dizaine de lignes dont tu peux
> t'inspirer pour ton cas.

Ok merci du tuyau, je vais jeter un oeil !

Répondre à