elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 21:12  


Tema destacado: ¡Aprende hacking con práctica! - WarZone, el wargame de elhacker.net

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking Avanzado
| | |-+  Hacking Linux/Unix (Moderadores: kamsky, TRICKY, berz3k)
| | | |-+  Pregunta: Cómo se aprovechan los SUID?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pregunta: Cómo se aprovechan los SUID?  (Leído 2,433 veces)
CODE:NIAL

Desconectado Desconectado

Mensajes: 9


"No hay casualidades sino causalidades"...


Ver Perfil
Pregunta: Cómo se aprovechan los SUID?
« en: 14 Noviembre 2009, 13:56 »

Hola a todos ;)

Actualmente me encuentro ante una gran duda. Tengo archivos en un servidor que tienen suid root. Les pongo una lista:

391713   20 -r-sr-xr-x   1 root     root        18000 Mar 18  2009 /sbin/unix_chkpwd
 49404  824 -rwsr-xr-x   1 root     root       837304 Mar  7  2007 /usr/bin/gpg
 97935   24 -rws--x--x   1 root     root        24536 Sep  8  2008 /usr/lib/apache-ssl/suexec
 97936   12 -rwsr-xr-x   1 root     root        10164 May 27  2008 /usr/lib/apache-ssl/suexec.disabled
135477   56 -rwsr-xr-x   1 root     root        51088 Jul  8 11:08 /usr/lib/openssh/sftp-server
135478  160 -rws--x--x   1 root     root       159372 Jul  8 11:08 /usr/lib/openssh/ssh-keysign
 85937   12 -rwsr-xr-x   1 root     root         9580 Jan 17  2009 /usr/lib/pt_chown
136311  328 -rwsr-sr-x   1 mail     mail       331512 Sep 28 17:09 /usr/sbin/sendmail

Cómo es que se aprovechan este tipo de permisos???. :huh: He leido mucha información en la red que no me deja muy convencido. Se que se ejecutan con permisos de root pero por ejemplo, al querer usar gpg para cifrar un archivo con permisos de root (como shadow, my.cnf, etc...) me dice acceso denegado, entonces no se cómo es que se aprovechan esos "permisos" en los archivos bins con suid root.

Acaso el programa tiene que tener algun bug??? buffer overflow o algo por el estilo???

Cualquier aclaración es bienvenida. :D

OJO: No quiero meter exploits para conseguir root por que eso ya se hacerlo, me interesa saber cómo funciona esto de los suids....


En línea

w00t!
kamsky
Moderador
***
Desconectado Desconectado

Mensajes: 2.210


Como no sabían que era imposible, lo hicieron...


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #1 en: 14 Noviembre 2009, 14:13 »

Citar
Acaso el programa tiene que tener algun bug??? buffer overflow o algo por el estilo???

eso es, lo más común es que los binarios tengan algún tipo de BoF,HoF, Format Strings, o variantes, y que mediante la inyección de cadenas especialmente formadas puedas explotar esto para obtener una shell, y dado que esta shell se ejecutará con permisos de root, serás el dueño del sistema.

te dejo un link muy bueno: http://milw0rm.com/papers/97


En línea

----NO HAY ARMA MÁS MORTÍFERA QUE UNA PALABRA BROTADA DE UN CORAZÓN NOBLE, Y UN PAR DE HUEVOS QUE LA RESPALDEN---

                       hack 4 free!!
CODE:NIAL

Desconectado Desconectado

Mensajes: 9


"No hay casualidades sino causalidades"...


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #2 en: 14 Noviembre 2009, 14:18 »

Ya me sospechaba que no era algo tan sencillo, ;D voy a leerme el paper a ver si puedo aprovecharme de alguno de los binarios que tengo. Les informo si puedo hacerme de algo y lo comparto... ::)


Gracias!!  :D
En línea

w00t!
TRICKY
The "Tricky" ..
Moderador
***
Desconectado Desconectado

Mensajes: 1.605


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #3 en: 15 Noviembre 2009, 00:42 »

Que tal.

Es algo as coplejillo..

Si tienen un Bof o similar, pues puedes hacer que ejecuten una shell y como un proceso suele heredar el uid del proceso padre, pues ahi tienes una shell con permisos de root.

Hay ataques mas que consisten en ver o averiguar si esas aplicaciones sui o sgid usan funciones o llamadas al systema algo comprometidas o simplemente de manera insegura.

Piensa en que por ejemplo, usar execlp(), system() y demas de manera insegura puede comprometer a un programa suid o sgid de maneras diferentes, si estamos en entorno local aun mas.

Es decir, si haces una llamada desde un suid tal:

..
execlp("ls", "ls", NULL);
..

y tu como atacante puedes poner en el cwd (current working directory) donde se encuentra el suid un script por ejemplo tal, llamado "ls":

#!/bin/bash

exec /bin/sh -i
# o lo q se t ocurra

exit 0
#EOF

pues si corres la aplicacion, probablemente la hagas ejecutar tu ls en vez de /bin/ls, ya que con execlp() por ejemplo no se especifica el PATH completo.

Hay que ser un poco nerdo para hacer un suid asi, pero  es un ejemplo.
Otro caso seria usar strings, strace||ltrace, ldd y demas para averiguar las funciones o llamadas inseguras.


Saludos.


  /*** MOD ***/

Hoy dia SElinux y demas tecnicas intentan resolver problemas como este, poniendo mas dificil el hacer cosas como estas.
« Última modificación: 15 Noviembre 2009, 00:44 por averno » En línea

"La envidia es una declaración de inferioridad"
Napoleón.
CODE:NIAL

Desconectado Desconectado

Mensajes: 9


"No hay casualidades sino causalidades"...


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #4 en: 15 Noviembre 2009, 05:08 »

Es algo bastante complejo, por que requiere de mucho tiempo y paciencia para analizar los bins.... una posible solución es cambiarles los permisos pero en el caso de gpg, tengo entendido que el problema se resuelve actualizando la versión. El problema radica cuando estos bins requieren de root para funcionar leyendo o escribiendo en sitios donde el solo el root puede. Como el shadow por ej, para cuando un usuario quiera cambiar su password...

Cuando esto ocurre, no hay solución al problema??? :huh:
En línea

w00t!
kamsky
Moderador
***
Desconectado Desconectado

Mensajes: 2.210


Como no sabían que era imposible, lo hicieron...


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #5 en: 15 Noviembre 2009, 15:07 »

se supone que en un sistema el número de binarios "setuidados" tiene que ser el mínimo necesario para que todo funcione correctamente, es decir, cuando no queda más opción, por ejemplo en el caso que comentas...

estos programas están muy testeados y auditados y es bastante dificil encontrar algún fallo...el problema viene cuando hay binarios "propios" (es decir, los no standar) que están "setuidados", entonces si que es probable que puedas encontrar algo de donde tirar
En línea

----NO HAY ARMA MÁS MORTÍFERA QUE UNA PALABRA BROTADA DE UN CORAZÓN NOBLE, Y UN PAR DE HUEVOS QUE LA RESPALDEN---

                       hack 4 free!!
CODE:NIAL

Desconectado Desconectado

Mensajes: 9


"No hay casualidades sino causalidades"...


Ver Perfil
Re: Pregunta: Cómo se aprovechan los SUID?
« Respuesta #6 en: 15 Noviembre 2009, 23:58 »

Muy bien, perfecto!

Todas mis dudas han quedado aclaradas. Gracias a todos  ;D
En línea

w00t!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
PTCS Empresas que se aprovechan de ti? Aprovechate tu de ellos!
Foro Libre
Zhardz 9 1,168 Último mensaje 29 Junio 2011, 08:23
por Kase
Los ciberdelincuentes se aprovechan de la inocencia de los niños
Noticias
wolfbcn 0 297 Último mensaje 21 Septiembre 2011, 17:50
por wolfbcn
Cineclick, Wuaki.tv y Filmin aprovechan el cierre de Megaupload
Noticias
wolfbcn 0 797 Último mensaje 26 Enero 2012, 21:43
por wolfbcn
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines