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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Temas
Páginas: [1] 2
1  Seguridad Informática / Nivel Web / Fallo en facebook en: 7 Mayo 2011, 16:35 pm
Sin más adjunto la imagen por si alguno se anima a investigar el fallo, como poco hay un full path disclosure ahi, la petición va por GET sin más parámetros que los que se ven en la barra de direcciones

:http://img717.imageshack.us/img717/1140/screenshotal.png
2  Seguridad Informática / Hacking / Inyección packetes 802.11 en: 3 Abril 2011, 22:56 pm
Hola, últimamente estoy trasteando con la inyección raw de paquetes del estándard 802.11 (wifi para entendernos) en mi distro ubuntu.

Trabajo con C y hago uso de la librería pcap, el tema está en que, no se porque, parece ser que el kernel o puede que los drivers de mi tarjeta (abajo más info), me tiran muchos paquetes, me explico:
-Localmente (wireshark) veo la generación de paquetes exactamente como la he definido en mi programa (100% de los generados)
-Remotamente (wireshark tmb.) me llegan al rededor del 20/30% de los pquetes generados y con campos modificados, del estilo de flags de señal y tal

Lo que me preocupa es que intento poner en práctica (para una asignatura de la facultad) un ataque DOS, y con un 20% en recepción no llego a hacerle ni risa al otro pc.

Alguna manera de que el kernel no me filtre paquetes ni modifique paquetes al enviarlos?

PD: Linux 2.6.35-28-generic #49-Ubuntu x86_64 GNU/Linux
PD2: pcap 0.8Dev
PD3: intel 4965agn mode monitor drivers = compat-wireless-2.6.39-rc1-3
3  Seguridad Informática / Nivel Web / Las 10 mejores ténicas de hacking web 2010 (Jeremiah Grossman) en: 23 Enero 2011, 11:00 am
Un año más sale a la luz el top ten de las técnicas hacking web más influyentes del año pasado. Como podreis ver otra vez aparece sirdarckcat con su "Universal XSS in IE8". Bueno sin mas, la lista y el enlace completo al artículo:

Código:
1) 'Padding Oracle' Crypto Attack (poet, Padbuster, demo, ASP.NET)
Juliano Rizzo (@julianor), Thai Duong (@thaidn)

2) Evercookie
Samy Kamkar (@samykamkar)

3) Hacking Auto-Complete (Safari v1, Safari v2 TabHack, Firefox, Internet Explorer)
Jeremiah Grossman (@jeremiahg)

4) Attacking HTTPS with Cache Injection (Bad Memories)
Elie Bursztein (@ELIE), Baptiste Gourdin (@bapt1ste), Dan Boneh

5) Bypassing CSRF protections with ClickJacking and HTTP Parameter Pollution
Lavakumar Kuppan (@lavakumark)

6) Universal XSS in IE8 (CVE, White Paper)
Eduardo Vela (@sirdarckcat), David Lindsay (@thornmaker)

7) HTTP POST DoS
Wong Onn Chee, Tom Brennan (@brennantom)

8) JavaSnoop
Arshan Dabirsiaghi (@nahsra)

9) CSS History Hack In Firefox Without javascript for Intranet Portscanning
Robert "RSnake" Hansen (@rsnake)

10) Java Applet DNS Rebinding
Stefano Di Paola (@WisecWisec)

articulo: :http://jeremiahgrossman.blogspot.com/2011/01/top-ten-web-hacking-techniques-of-2010.html
4  Seguridad Informática / Nivel Web / TRACE & httponly en: 15 Noviembre 2010, 12:07 pm
Puede el tener activado el metodo trace en un servidor compromoter la seguridad de una cookie marcada con httponly?

Mediante un ajax realizar una peticion trace, que te devuelva las cabeceras mandadas, y a partir de ahi sacar la cookie...


PD: espero haber sido suficientemente claro para la gente que entiende de lo que estoy hablando.


Un saludo y gracias de antemano!

1: http://www.owasp.org/index.php/HttpOnly
2: http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.8



O como hacer un tema con 0 respuestas!
5  Seguridad Informática / Nivel Web / Exploitation of [Path Normalization Bug] & [Path Truncation Bug] en: 6 Septiembre 2010, 14:43 pm
Leyendo el genial blog de Reiners ( link ) llego hasta la publicación de dos interesantes papers denominados PHP filesystem attack vectors ( parte1 | parte 2 ) en los cuales con detalles muy técnicos pero a la vez fácilmente digeribles se nos explica 2 bugs que existen en las versiones PHP y PHP+Suhosin existentes hasta ( al menos ) Septiembre del 2009 (no debemos olvidar que la mayoría de sistemas actualizan sus motores cada bastante tiempo).

Mediante estos dos bugs localizados en el código fuente en C del motor PHP, seremos capaces de bypassear filtros anti LFI.




PATH TRUNCATION
0x01: Escenario:

Código
  1. <?php
  2. $file = "pagina/".$_GET['file'].".html";
  3. include($file);
  4. ?>

además las magic quotes, están activas.

0x02: Limitaciones:

Con este planteamiento las opciones son limitadas, dado que no podemos usar el "null byte attack", podemos cargar cualquier html del sistema... pero qué archivos html contendrían informacion VITAL para la web? Realmente, opino que muy pocos, más aun sin poder lsitar archivos! (podemos hacer un full path disclosure ingresando un archivo no existente, pero suponemos que no nos devuelve información relevante!)

Bueno, lo que nos plantean los dos papers arriba mencionados, es que usando un bug del sistema podemos alcanzar CUALQUIER tipo de archivo, librándonos de la extensión impuesta ".html".

0x03: Conociendo el bug:

Las versiones mencionadas arriba de PHP poseen una especie de operador "neutro", por el que si se le añade a un archivo, éste, es removido antes de hacer un include (por ejemplo). Suponemos que el archivo a.php existe, si hiciesemos
Código
  1. include("includes/a.php");
  2.  

o

Código
  1. include("includes/a.php/./././././");
  2.  

El efecto sería exactamente igual, en algunas versiones que cuenten con el Suoshin patch, como operador neutro tambien es válido:  /  (0x2F), es decir, sin el punto!

Ahora bien, por si solo este operador neutro, de momento (luego veremos más cosas) no nos proporcion ningun gran avance... Pero pensemos en como se ejecuta nuestro include() a nivel de C, cuando se pasa un nombre de archivo a la funcion fopen, existe un tamaño máximo en la longitud del nombre pasado, este tamaño viene definido por el "MAXPATHLEN". De manera que si el tamaño es mayor, se trunca, y además silenciosamente, sin avisar de esta operacion. De este modo si nuestro archivo se llamase
Código:
aaaaaaaaaaaaaaaaaa(... 100000 vecse más xD)aaaaa
se truncaría a un tamaño predeterminado de 4k en la mayoria de sistemas ( segun el paper, aunque yo tenia entendido que eran 256 caracteres... ).

Esto SI es una gran ventaja, puesto que si pudiesemos hacer que el nombre pasado a la variable mediante GET superase ese límite, la extensión predefinida, se truncaría, quedando así nuestra extensión deseada.  Pero... como hacer que exista un archivo con ese nombre tan tremendamente largo? Usando el operador normalizado!

Así, si el include recibiese un nombre de esta forma...:

Código:
pagina/asdf/../../../../../../boot.ini/././././././(un puñao de veces más xD)/././.html

en algun momento de la secuencia de puntos y contrabarras el MAXPATHLEN entraría en juego, truncando el final y dejando fuera de juego a la extensión .html!

0x04: Explotandolo:

Por razones que se esacpan a esta explicacion ( se detallan muy bien en los papers linkados arriba ) en windows el modo a explotar es acabando la cadena en "/" y en linux en "/."

Además se ha de empezar con una barra inclinada "/". De la siguiente manera

www.web.com/includeFAIL.php?pagina=/../../../../boot.ini/./././././././././././././
www.web.com/includeFAIL.php?pagina=/../../../../etc/passwd/././././././././././.

el primero para windows y el segundo para *nix (obviametne...)



PATH NORMALIZATION


Aunque debería haber empezado por aquí, he preferido hacerlo a la inversa, ya que la mayoría lo que buscan es resultados rápidos, y no comprender el problema por dentro... ( lo que considero un fallo enorme de planteamiento ). De cualquier manera, el concepto de normalización ya está explicado, si quereis más información a cerca del código en C responsable de elimiar todas esas barras y puntos (:P) ya sabeis donde encontrar la información.

0x11: Escenario:

Supongams que tenemos un código como el siguiente y que, de nuevo, magic_quotes on.


Código
  1. $file = $_GET['file'];
  2. if(substr($file, -4. 4)!=".txt"){
  3.   include("/includes".$file);
  4. }else{  
  5.    die("Lo siento, nada de archivos de texto");
  6. }

0x12: Limitaciones:

Dado este código a priori solo nos restringiria incluir txt, si por ejemplo, somos capaces de subir, un txt al sistema, supongamos que es una web... de yo que se, poemas, y nos dejan subir poemas en formato txt, un formato muy... inocente! XD mediante este código se nos restringiría el incluir esos txt mediante php.

0x13: Explotación:

facilmente se nos ocurre que una petición del estilo

www.web.com/includeFAIL.php?pagina=poemaMaligno.txt/.

dado el bug de la normalización bypassearía la condición de quew no termine en ".txt" pero el sistema, internamente cargaría un ".txt".

El ejemplo de los txt en sí, es muy malo, pero se puede extender a cualquier tipo de comprobación de extensión, supongamos un uploader, la funcion "fopen" y "move_uploaded_file" tambien adolecen de este problema. (Se describe en la segunda parte del paper mencionado ). De esta manera, si al comprobar la extensión se nos vigilase que no se subiesen ".php" podríamos subir un ".php/." ;)








Ala a ser malignos pero bajo vuestra propia responsabilidad! Espero que a esta aportación se le haga un poco más de caso que me e tirado un ratico escribiendola ¬¬
6  Seguridad Informática / Nivel Web / Exploitation of Cpanel PHP Restriction Bypass Vulnerability en: 5 Septiembre 2010, 19:32 pm
Bueno, he pensado que estaría bien hacer una contribución a esta comunidad, asi que aprovechando el disclosure de esta vuln que han hecho los chicos de abysssec ( link! ) para el recien estrenado MOAUB  (Month Of Abysssec Undisclosed Bugs) voy a hacer una puesta en escena de como se realizaría la explotación y de paso traduciré algunos fragmentos del texto expuesto en la web apuntada.

0x01: INFO

      Versiones afectadas: cPanel <= 11.25
      Efectos: Atacantes debidamente logueados pueden conseguir acceso a archivos restringidos, bypasseando mod_security, Safemod, y funciones desabilitadas.
      Impacto: Critico, explotable localmente y una vez logueados.


0x02: Finalidad

      Usuarios de hosts compartidos (/virtuales) pueden acceder a otras webs del sistema, así como ejecutar funciones prohibidas (exec, system, passthru... ).
      Defacing múltiples, acceso a otros servidores internos etc...


0x03: Código vulnerable
Código
  1.  
  2. Line 529 :
  3.  function Show_Notice ( $Script , $Version_Numbers )
  4.    {
  5.        $Home_Directory = $GLOBALS['enc_cpanel_homedir'] ;
  6.        if ( substr ( $Home_Directory , -1 ) != '/' )
  7.        {
  8.            $Home_Directory = $Home_Directory . '/' ;
  9.        }
  10.        $Files = Array ( ) ;
  11.        $Directory = $Home_Directory . '.fantasticodata/' . $Script . '/' ;  // AQUI!
  12.        $Files = Get_Files ( $Directory ) ;
  13.        if ( !empty ( $Files ) AND is_array ( $Files ) )
  14.        {
  15.            $Temporary = natcasesort ( $Files ) ;
  16.        }
  17.        foreach ( $Files As $File )
  18.        {
  19.            $Name    = '' ;
  20.            $Path    = '' ;
  21.            if ( strstr ( $File , "|" ) )
  22.            {
  23.                $Name = explode ( "|" , $File ) ;
  24.                $Name = $Name[1] ;
  25.            }
  26.            else
  27.            {
  28.                $Name = $File ;
  29.            }
  30.            /* Debugging */ // echo $Directory . $File . '<br/>' ;
  31.            if ( is_file ( $Directory . $File ) )
  32.            {
  33.                include $Directory . $File ;
  34.                if ( !empty ( $thisscriptpath ) )
  35.                {
  36.                    $Path = $thisscriptpath ;
  37.                }
  38.                else
  39.                {
  40.                    $Path = $Home_Directory . 'public_html/' . $Name . '/' ;
  41.                }
  42.                if ( substr ( $Path , -1 ) != '/' )
  43.                {
  44.                    $Path = $Path . '/' ;
  45.                }
  46.                /* Debugging */ // echo $Path . 'fantversion.php<br/><br/>' ;
  47.                if ( is_file ( $Path . 'fantversion.php' ) )
  48.                {
  49.                    include $Path . 'fantversion.php' ;
  50.                    if ( !empty ( $version ) )
  51.                    {
  52.                        if ( in_array ( $version , $Version_Numbers ) )
  53.                        {
  54.                            return 'Yes' ;
  55.                        }
  56.                    }
  57.                }
  58.            }
  59.        }
  60.        return 'No' ;
  61.    }

0x04: Explotación

Yo tuve que primero entrar en http ://www.[MIWEB].com:2082/frontend/x3/fantastico/index.php, instalar un script cualquiera para que así se creara el archivo necesario en el ftp, suponemos que instalamos el phpFormGenerator, accediendo a: http ://www.[MIWEB].com:2082/frontend/x3/fantastico/autoinstallhome.php?app=phpFormGenerator.

Una vez instalado accedemos mediante el ftp o el filemanager del cPanel a "/home/.fantasticodata/phpFormGenerator/" y subimos nuestro archivo que podrá bypassear la seguridad del host, supongamos una shell, c99.php, tenemos que nombrarla de la siguiente manera:
Código:
web.com|archivo
, por ejemplo si mi web es www.tragantras.com debería crear un archivo que se llamase:  tragantras.com|c99  (puede llamarse c99.php sii..., pero al caso da igual).

Con el archivo ya subido al ftp, tan solo tenemos que entrar de nuevo en http ://www.[MIWEB].com:2082/frontend/x3/fantastico/autoinstallhome.php?app=phpFormGenerator para que mediante el código expuesto anteriormente se haga el include y se cargue sin restricciones nuestro archivo.

0x05: Why?

Bueno, para poder modificar los archivos del host es necesario que el mod fantastico del cpanel no esté restringido por funciones, mod_security o safemod, por ello, podemos hacer uso de esta práctica relajada para hacernos con el sistema. En hosts compartidos podemos llegar a tener acceso a más de 1000 webs con tan solo tener una cuenta en el host...

0x06: DECLINACIÓN DE RESPONSABILIDAD

Como simple usuario de internet no me hago responsable de lo que vosotros, almas corrompibles podeis llegar a hacer con esta info, yo, por mi parte, ya avisé a mi proveedor de servicios en todas las webs de que dispongo.




Sin más un saludo!

7  Seguridad Informática / Nivel Web / PHP-Fusion LFI en: 29 Agosto 2010, 12:07 pm
Hola, navegando por google he dado con este LFI que recientemente ha salido para la plataforma PHP-Fusion. El responsable del fallo es el script "maincore.php", aqui pongo el trozo de código:

Código
  1. // Locate config.php and set the basedir path
  2. $folder_level = “”; $i = 0;
  3. while (!file_exists($folder_level.”config.php”)) {
  4. $folder_level .=../; $i++;
  5. if ($i == 5) { die(”Config file not found”); }
  6. }
  7. require_once $folder_level.”config.php”;
  8. define(”BASEDIR”, $folder_level);

y la manera de explotarlo:

Código:
http://{website}/{path}/maincore.php?folder_level=LFI


He estado intentando hacerlo funcionar en varias web, sin éxito alguno. Empiezo a pensar que es un fake xD Si alguien es capaz de hacerlo funcionar, agradecería que explicase el método. Abajo pongo un par d webs para que probeis :)


http://www.retrotraktor.pl
http://www.happy2you.net
http://www.kaytarmaca.com



EDIT: creo que es por esta primera linea del archivo maincore.php

Código
  1. if (eregi("maincore.php", $_SERVER['PHP_SELF'])) { die(); }

hay que acceder al maincore.php sin entrar directamente al maincore... fuck xD

8  Programación / Programación General / Swing vs C# en: 10 Julio 2010, 11:39 am
Woooooola! No se muy bien donde poner este tema, ya que como suele pasar, no encaja demasiado bien en ninguna categoria. Se trata de una dura decisión! xD Entre usar Swing (java) o C#.net

EL principal objetivo sería desarrollar un programa de gestión, en el que la interfaz grafica es muy importante. Se que .net está mas orientado al mundo de las "ventanas" y tal, pero el handicap es que no conozco el lenguaje c# ( si c / c++ ) ( realmente no se las diferencias xD ) Por otra parte tengo una buena base de java y de swing algo de iniciación.

Que elegiriais vosotros para un proyecto en el que la interfaz grafica es importante, Swing apoyado en java o directamente C# sobre .net?
9  Comunicaciones / Redes / Sequency number en: 28 Junio 2010, 10:41 am
Hola comunidad!

Yo tenia entendido que en una conversacion TCP, el SN se generaba aleatoriamente para evitar ataques de denegacion de servicio o "interferencias" en la comunicación. Entonces pq la mayoria de los sitios web, incluso google empiezan su SN con un valor de 0??

Estoy dejandome algo por medio?

EDIT

ya se que pasaba realmente, si alguien tiene el mismo problema o quiere saber la respuesta, que me mande un privado, estoy cansado de que la gente no ayude...

Un saludo leechers :3
10  Programación / PHP / perdida del ambito entre llamadas system() en: 22 Junio 2010, 21:25 pm
Bueno, despues de ese titulo tan estrambótico, procedo jaja

[aclaro que todo lo que acontinuacion expongo es en Windows como SO anfitrion]

mediante la funcion system es posible hacer llamadas al sistema, por ejemplo system("dir") devuelve el listado del directorio, y system("cd asdf") te "introduce" en la carpeta asdf, bien, pero si hago:

system("cd asdf")
system("dir")

no me lista el contenido de la carpeta "asdf", sino que me lista el de la carpeta que contenga el script php. La pregunta se ve venir, no? jajaj

Como acer para no perder el ámibito entre llamdas system?! xD Para que cuando ejecute esa sucesión de llamadas a system, se liste el contenido de asdf!

Un saludo y gracias de antemano =)
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines