Protecciones en Linux [Was: Re: Concreto FW]

Luis Sandoval zerox en systat.cl
Mie Ene 12 00:25:49 CLST 2005


Hi,
El mar, 11-01-2005 a las 21:54 -0300, Carlos Manuel Duclos Vergara
escribió:
> Holas,
> 
> >
> > El ejemplo que probe es:
> >
> > [zerox en fc3 xp]$ cat abo1.c
> > #include <stdio.h>
> >
> > int main(int argc,char **argv)
> > {
> >         char buf[256];
> >         strcpy (buf,argv[1]);
> > }
> >
> >
> 
> carlos en linux:/tmp> vi exploit.c
> carlos en linux:/tmp> gcc -O2 -Wall exploit.c -o xp
> exploit.c: In function `main':
> exploit.c:6: warning: implicit declaration of function `strcpy'
> exploit.c:7: warning: control reaches end of non-void function
> carlos en mama:/tmp> ./xp
> Violación de segmento
> carlos en linux:/tmp> id
> uid=502(carlos) gid=100(users) grupos=14(uucp),16(dialout),17(audio),33
> (video),100(users)
> 
> 
> SUSE 9.1....
> pero me parece que algun parametro raro tendras que pasar pq veo muy dificil 
> que con un "exploit" como ese se consiga algo mas que un segmentation 
> fault...
> 
> o faltan datos que no agregaste, o no entendi que fue lo que hiciste
si, yo no explique parece.

abo1.c es el ejemplo de  un programa vulnerable y es el que use para
realizar   test en las distros y *BSD que mencione.

Luego a abo1.c le active el bit suid root  y ejecute el exploit xp  que
desborda  a abo1.c  y  logra una shell con los privilegios que tenga
abo1, en este caso root.

saludos,

Luis




Más información sobre la lista de distribución BSD