elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | | |-+  Relato de una intrusión - Un miserable LFI
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Relato de una intrusión - Un miserable LFI  (Leído 11,687 veces)
cibergolen

Desconectado Desconectado

Mensajes: 69


Ver Perfil
Relato de una intrusión - Un miserable LFI
« en: 2 Diciembre 2011, 19:37 pm »

No se si llegué a publicar esto, de ser así, que algún moderador elimine este tema

--

15/08/2011

--

Citar
Hace unos dias, mientras navegaba aburrido por la Web, encontre una pagina con una vulnerabilidad LFI.

El sitio, por privacidad, lo llamaremos www.site.com.

Observe que la dirección del archivo a incluir lo pasaba mediante GET por la variable "site.com/index.php?Page=", a la cual se agregaba la extensión ".PHP" por seguridad...

Estuve un rato pensando como evadirlo, y llegue a una conclusión: Tratar con el Null Byte.

Básicamente, para explotarlo, o que hice fue utilizar un archivo inexistente, observar la ruta donde estaba el directorio htdocs, (/var/www/htdocs), para después buscar algún fichero que vulnerar.

En un primer intento, trate de enviarle la ruta: ../../../etc/passwd%00, el cual funciono exitosamente, y buscando, concluí que existía el fichero /proc/self/environ, el cual mostraba mi User-Agent. Cabe aclarar que este permitia la inclusión de PHP modificando via Live HTTP Headers.

Con todo esto, conseguí crear una webshell en el servidor, lo que me facilito los datos de la base de datos, y una copia de la web.

Se trataba de un kernel 2.6.30, así que decidí dejar mi netcat escuchando en modo recursivo, y cree la conexión con el Host.

Posteriormente, vía wget descargue un Root Exploit que encontré por la red, lo cual me permitió permisos de Root en dicho servidor.

Resulta que, en dicho servidor, habían mas de 50 usuarios, con varios dominios cada uno...
Lejos de hacer un deface masivo, lo cual nunca fue, ni sera, mi objetivo, decidí limpiar mis huellas y salir de ahí, con una clara conclusión:

Un solo fallo, lo pueden pagar muchos.

Mi único trofeo fue la copia de la Web, y de la base de datos.

Un saludo!
« Última modificación: 2 Diciembre 2011, 19:43 pm por cibergolen » En línea

ruben_linux

Desconectado Desconectado

Mensajes: 138



Ver Perfil WWW
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #1 en: 11 Diciembre 2011, 13:23 pm »

TEngo una duda. he probado algunas veces LFI, y en las ocasiones en que la web añade la extensión ".php" a los archivos que trato de abrir, sea inexistente o no, nunca llego a conseguir mi objetivo.

Me explico, si la web añade ".php" , nunca se podrá realizar LFI, a no ser que tengamos una manera de puentear estea seguridad, y en estos casos el byte null no sirve, porque da como resultado

www.xxxxxx.com/index.php?page=webshell.txt.php

Citar
a la cual se agregaba la extensión ".PHP" por seguridad...
En línea

cibergolen

Desconectado Desconectado

Mensajes: 69


Ver Perfil
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #2 en: 11 Diciembre 2011, 18:17 pm »

TEngo una duda. he probado algunas veces LFI, y en las ocasiones en que la web añade la extensión ".php" a los archivos que trato de abrir, sea inexistente o no, nunca llego a conseguir mi objetivo.

Me explico, si la web añade ".php" , nunca se podrá realizar LFI, a no ser que tengamos una manera de puentear estea seguridad, y en estos casos el byte null no sirve, porque da como resultado

www.xxxxxx.com/index.php?page=webshell.txt.php


Citar
En un primer intento, trate de enviarle la ruta: ../../../etc/passwd%00, el cual funciono exitosamente

Null Byte, my friend...

Saludos
« Última modificación: 11 Diciembre 2011, 18:18 pm por cibergolen » En línea

ruben_linux

Desconectado Desconectado

Mensajes: 138



Ver Perfil WWW
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #3 en: 11 Diciembre 2011, 19:44 pm »

  :-[
pido disculpas, leer dos veces antes de contestar.

 ;)
En línea

cibergolen

Desconectado Desconectado

Mensajes: 69


Ver Perfil
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #4 en: 12 Diciembre 2011, 15:24 pm »

  :-[
pido disculpas, leer dos veces antes de contestar.

 ;)

Me van a patear las bo.. cuentas, pero adelantado siento desviar el tema

Cuando tienes algún problema con la extensión, símplemente córtala usando el null byte, tanto en LFI como otros. Te toparás que a veces sale con un:
file=../../../../.../../../etc/passwd/0.php, en ese caso sigue intentando por otro medio.

Saludos.
En línea

ruben_linux

Desconectado Desconectado

Mensajes: 138



Ver Perfil WWW
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #5 en: 12 Diciembre 2011, 19:23 pm »

Citar
en ese caso sigue intentando por otro medio.

no sse cuales son los otros medios, puedes ayudarme, dame una explicacion o una direccion para poder aprender esas tecnicas.

gracias
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #6 en: 21 Diciembre 2011, 02:54 am »

bypasea esto:

Código
  1. <?php include('./paginas/'.$_GET['page'].'.php'); ?>

Siempre he dicho que para aprender a vulnerar un sitio web es necesario aprender su lenguaje primero.

Puedes usar null byte de muchas formas:
%0 %00 %000 \0 \00

También puedes probar si el sistema urlencodea dos veces las variables o las filtra:
%2500 %255c0 %255c00
En línea

PanConMantequilla

Desconectado Desconectado

Mensajes: 82



Ver Perfil
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #7 en: 21 Diciembre 2011, 06:46 am »

bypasea esto:

Código
  1. <?php include('./paginas/'.$_GET['page'].'.php'); ?>

Siempre he dicho que para aprender a vulnerar un sitio web es necesario aprender su lenguaje primero.

Puedes usar null byte de muchas formas:
%0 %00 %000 \0 \00

También puedes probar si el sistema urlencodea dos veces las variables o las filtra:
%2500 %255c0 %255c00

Aunque no abrí el tema, que bueno que hayan respondido  ;D

Bueno, hasta el momento nunca he podido bypasear con null byte, tengo en localhost un include similar que nunca me funcionó, ahora copio y pego tu código de ejemplo (que es casi el mismo):

Código
  1. <?php include('./paginas/'.$_GET['page'].'.php'); ?>

Creo una carpeta paginas como tu ejemplo y dentro agrego 2 archivos:

inclusion.php
claves.txt (intentaré ver su contenido)

Ahora mi problema de toda la vida, abro:

http://localhost/index.php?page=inclusion

Y se incluye sin problemas el contenido de inclusion.php
Ahora quiero bypasear intentando ver el contenido de claves.txt que se encuentra en la misma carpeta

http://localhost/index.php?page=claves.txt%0   = Warning: include..........
http://localhost/index.php?page=claves.txt%00   = Warning: include..........
http://localhost/index.php?page=claves.txt%000   = Warning: include..........
http://localhost/index.php?page=claves.txt\0   = Warning: include..........
http://localhost/index.php?page=claves.txt\00   = Warning: include..........

El error de toda mi vida, siempre me quedo aqui, que es lo que estoy haciendo mal?

Saludos







« Última modificación: 21 Diciembre 2011, 06:48 am por PanConMantequilla » En línea

cibergolen

Desconectado Desconectado

Mensajes: 69


Ver Perfil
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #8 en: 21 Diciembre 2011, 19:03 pm »

Puede que tengas algún tipo de protección, debería saltar al fichero "claves.txt%00".

Saludos.
En línea

PanConMantequilla

Desconectado Desconectado

Mensajes: 82



Ver Perfil
Re: Relato de una intrusión - Un miserable LFI
« Respuesta #9 en: 21 Diciembre 2011, 20:13 pm »

Puede que tengas algún tipo de protección, debería saltar al fichero "claves.txt%00".

Saludos.


Uso wamp, y el codigo tambien lo probe en debian y me bota el mismo warning error, no solo eso, cada vez que encuentro un LFI siempre me arroja ese error.
Siento que esa vulnerabilidad solo existiera para el resto  :-\
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines