Volatility Framework Installer

Estándar

Hola a tod@s!!

Hace tiempo que salió al público el estupendo trabajo de muchos investigadores que dio como resultado la herramienta Volafility Framework.

Los que me conocéis, sabéis que yo llevo dando por saco con el tema de la memoria RAM desde hace bastante tiempo. Gracias a Dios, que conforme más tiempo pasa, más información sobre este tema hay.

Yo mismo he dado algún que otro Webcast en Microsoft sobre este mismo tema, he hablado en las FIST, y en algún que otro Asegur@IT.

El Framework está escrito en su totalidad en Python. En su día, para hacer funcionar la herramienta, tanto en Windows como en Linux o MAC, tan sólo hacía falta instalar Python y vualá! Ya teníamos el Framework en funcionamiento.

Hoy día la cosa ha cambiado bastante. Existen multitud de Plugins que hacen de la herramienta una tool muy poderosa para analizar por completo la memoria RAM, pudiendo ahorrar costes en tiempo en un análisis forense corporativo o por proyecto. E incluso por diversión!!

El problema para gente que está empezando en esto, es que a día de hoy existen tantos plugins y dependencias, que instalar la herramienta desde cero, y dotarla de una funcionalidad aceptable, puede conllevar una inversión de tiempo importante.

Esto lo pensó en su día Jamie Levy (aka Gleeda), colaboradora habitual en el desarrollo de Volatility Framework, y desarrolló, entre otros impresionantes plugins, uno con la posibilidad de descargar todos los plugins de un tirón. El script para la versión 1.4 de la herramienta, e instalación bajo Linux, lo tenéis disponible aquí.

Yo he realizado mi particular script (en batch! con dos cojones!! jaja) para la total instalación de Volatility Framework, junto con todas sus dependencias. Entre las “capacidades” del Script de instalación se encuentran los siguientes puntos:

  • Descarga e instalación de Python, MinGW
  • Descarga e instalación de YARA (Gracias Hispasec!!), PYGame, PIL (Python Image Library), Distorm3
  • Descarga e instalación de Volatility Framework 1.3 (Versión estable)
  • Descarga e instalación de Plugins válidos para la versión 1.3
  • Compilación automática e instalación de diversos plugins
  • Procesado de Logs de todo lo que se descarga
  • Procesado de HASH (MD5 y SHA1) de todo lo que se descarga
  • Inclusión de rutas en PATH para dotar de máxima funcionalidad
  • Inclusión de shell de comandos con el botón derecho del ratón para facilitar el análisis (Open cmd Here)

Ahora mismo, el script es totalmente funcional para instalarlo en Windows XP/Vista/7, y, como hoy en el FTSAI nos vamos a “pelear” con la memoria y todos sus componentes, me ha parecido buena idea colgarlo por aquí.

En su día, hablando con Lympex de opensec.es, éste me pasó una versión que desarrolló para Linux, la cual todavía no he puesto en el proyecto, debido a que tiene que actualizarse. Me ha prometido que cuando la tenga funcional la colgará en el proyecto.

El proyecto está alojado en Google, y ahora sí…. No tienes excusa para seguir ampliando conocimientos en materia Forense, porque documentación hay, y facilidades también!!

http://code.google.com/p/volatility-installer/

Esta semana he empezado a realizar el mismo script en PowerShell, debido a que como batch tiene muchas restricciones, he tenido que “tirar” de herramientas de terceros, como 7zip, wget y HashMyFiles para hacerla totalmente funcional. El script es muy sencillo de utilizar y no requiere parámetros. Sólo doble clic, y a jugar….

Nota: Tanto Python, como las dependencias, junto con MinGW, se instalan de manera interactiva con el usuario. Las instalaciones son del entorno Next–>Next, menos MinGW, que necesitaremos marcar las opciones de MAKE, más el compilador. Este paso de “interacción” es necesario, ya que de manera desatendida no se compilan bien algunas bibliotecas en Python bajo Windows.

Doy por supuesto (y por invitado!) que colaboraciones y ayudas, serán muy, pero que muy bien recibidas…..

Update.- Chema, de opensec, ya me ha pasado el script de instalación y está subido al proyecto. Su script soporta la instalación de Volatility Framework en los sistemas Arch, Debian y FreeBSD!

Buen fin de semana a tod@s!!

Anuncios

SYSTEM, causa y efecto IV de IV

Estándar

Artículos anteriores

https://windowstips.wordpress.com/2011/01/10/system-causa-y-efecto-i-de-iv/

https://windowstips.wordpress.com/2011/01/11/system-causa-y-efecto-ii-de-iv/

https://windowstips.wordpress.com/2011/01/17/system-causa-y-efecto-iii-de-iv/

Hola a tod@s!

En este último post, nos centraremos en cómo la cuenta SYSTEM se comporta a la hora de ser utilizada de forma interactiva.

Para ello, y en el banco de pruebas que hemos montado, realizaremos una elevación de privilegios, tal y como se ha comentado ampliamente por la Red. Tenéis artículos con formas de realizar este tipo de elevación en los siguientes links:

http://vtroger.blogspot.com/2005/09/mas-vale-quedarse-corto.html

http://www.securitybydefault.com/2010/12/bienaventurados-los-que-no-ven-porque.html

Al realizar el truco, (que no vulnerabilidad) y cambiar alguno de los componentes de accesibilidad por una Shell de Windows, ésta se iniciará de forma interactiva y podremos interactuar con la misma. Entre las “curiosidades” iniciales que nos encontraremos, podremos enumerar las siguientes:

  • El panel de control, no funciona
  • El explorador de Windows, junto con el escritorio, funciona de forma parcial
  • La Shell finaliza al cabo de un tiempo

El acceso total al sistema, lo tenemos única y exclusivamente a través de la línea de comandos.

Esta “irregularidad” viene dada por culpa de las claves de registro que se asocian a cada perfil de usuario.

Cuando un usuario se crea en el sistema, éste recibe un perfil de usuario. La cuenta de sistema, es decir, la cuenta SYSTEM, precarga en  memoria la clave HKEY_LOCAL_MACHINE, y el usuario que trabaja de forma interactiva en el sistema cargará a su vez la clave HKEY_CURRENT_USER, la cual se carga a través de un fichero en el perfil de usuario, que se llama NTUSER.DAT.

Si realizamos una comparación de las claves de registro que crea en el perfil la cuenta SYSTEM, con las que se crean cuando iniciamos sesión con una cuenta de usuario normal, podremos ver ciertas características que no se encuentran en el perfil de SYSTEM.

Si analizamos esas claves con alguna herramienta que permita abrir este tipo de ficheros (NTUSER.DAT), podremos ver ese tipo de diferencias, y contemplar qué claves carga la cuenta SYSTEM cuando inicia sesión en el sistema.

Para el desarrollo de este artículo, se utilizará la herramienta Windows Registry Recovery, la cual nos permite visualizar este tipo de ficheros de forma amistosa y rápida.

Imagen 1.- Claves cargadas por el usuario SYSTEM en Windows 7

Como se puede ver en la anterior imagen, la cuenta SYSTEM carga lo justo y necesario para realizar su trabajo, sin cargar más de lo necesario.

Imagen 2.- Claves cargadas por un usuario típico en Windows 7

En cuando a la imagen anterior, se puede visualizar que un usuario típico, carga lo que necesita para poder interactuar con el sistema. Algo lógico por parte del sistema operativo, ya que estos usuarios son los que están diseñados para trabajar de manera interactiva con el sistema.

Por otra parte, el usuario SYSTEM, opera desde la instancia HKEY_USERS\.DEFAULT. Esta instancia, es en realidad un alias de HKEY_USERS\S-1-5-18, instancia que identifica al SID de la cuenta SYSTEM. Al inicializar la elevación de privilegios, y siempre que no se inicie otro usuario en el sistema, la cuenta SYSTEM, utilizará una instancia que se cargará en 3 sitios diferentes. La ruta de carga es la que se muestra a continuación:

  • HKEY_CURRENT_USER
  • HKEY_USERS\.DEFAULT
  • HKEY_USERS\S-1-5-18

Para verificar lo anterior, desde la Shell de comandos arrancada cuando se realiza la elevación de privilegios, se puede crear una clave en HKEY_CURRENT_USER. Esta clave, se mostrará a su vez en las claves HKEY_USERS\.DEFAULT y HKEY_USERS\S-1-5-18.

Imagen 3.- Instancias cargadas por el usuario SYSTEM

Imagen 4.- Instancias cargadas por el usuario SYSTEM

Estas instancias, a su vez, contienen la información para interactuar con el sistema, es decir, contienen las claves de registro necesarias para lanzar un escritorio interactivo, pero tienen pequeñas diferencias. Estas diferencias, analizadas con cualquier herramienta de monitoreo, muestran como a la hora de lanzar el escritorio interactivo, éste falla al intentar encontrar ciertas claves de registro, necesarias para mostrar iconos, accesos directos, y rutas de lanzamiento a las aplicaciones. El efecto final es que el sistema operativo es capaz de “pintar” el escritorio, pero al no encontrar rutas a las aplicaciones, ni accesos directos que llamen a un programa, éste se queda “a medias”.

Imagen 5.- Rutas no encontradas

 

Como habréis podido observar a lo largo de estos cuatro artículos, es que una elevación de privilegios en Windows implica el conocimiento de muchos factores a la hora de lanzar un posible ataque, y las posibles consecuencias de que este funcione, o no…

Un saludo a tod@s!

SYSTEM, causa y efecto III de IV

Estándar

SYSTEM. causa y efecto I de IV

SYSTEM, causa y efecto II de IV

SYSTEM, causa y efecto IV de IV

Hola a tod@s!
Este post está dedicado a observar el funcionamiento de un SID en lo referente a un usuario específico.
Un SID, o identificador de seguridad, es una estructura para identificar inequívocamente a un usuario o un grupo específico.
Desde Windows NT, esta estructura se encuentra definida en la librería WINNT.H.
La estructura de un SID contiene, entre otros, los siguientes elementos:

  • Revisión del SID
  • Un identificador de autoridad que identifica la autoridad de ese SID
  • Un identificador relativo (RID), el cual identifica unívocamente un usuario o grupo, en relación a la autoridad asignada al SID

La combinación del identificador de autoridad, unido a los identificadores de las sub-autoridades, asegura que no haya dos valores SID iguales.
El formato de un SID se forma usando una cadena estandarizada, la cual hace más fácil la identificación de sus componentes. El formato de cadena de un SID es el siguiente:
S-R-I-S[VALORES]
En donde:

Imagen 1.- Relación Valores & Especificación

Aplicando los elementos anteriores, un SID válido sería el siguiente:

S-1-5-32-545

En donde la traducción de este SID sería la siguiente:

 

Imagen 2.- Valores e identificación

Si se quieren obtener los SID validados en el sistema operativo, éstos se pueden extraer de varias formas.
Una forma ágil de obtener los SID del sistema operativo, es utilizando herramientas ya creadas específicamente para este tipo de usos. Las más conocidas con GETSID, del Kit de recursos de NT, y PSGETSID, de la archiconocida SysInternals. La utilización de este tipo de herramientas no conlleva ningún tipo de problemas, y su uso es rápido e intuitivo.

 
 

Imagen 3.- Uso de PsGetSid

Otra vía de acceso a los SID validados en un sistema operativo es por el registro de Windows. Las claves asociadas que guardan información relativa a un SID de usuario son varias, pero las más usuales y prácticas son las siguientes:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
HKEY_USERS

Imagen.- SID en Registro de Windows

Otra forma rápida, fácil, y para toda la familia, es a través de Scripting. WMI y PowerShell, tienen capacidad para obtener todas las clases asociadas a un SID, y extraer la información de manera ágil. Gracias a que PowerShell tiene acceso rápido a toda la sintaxis de WMI, se puede scriptar todos los comandos de manera sencilla.

 

Imagen.- Extracción de SID a través de PowerShell

 
En el siguiente y último capítulo, veremos cómo se comporta la cuenta SYSTEM, así como el sistema operativo,  a la hora de intentar iniciar una sesión interactiva en el sistema, tal y como se suele utilizar en técnicas de elevación local de privilegios.
Saludos!!
Referencias
PSGETSID
http://technet.microsoft.com/en-us/sysinternals/bb897417
GETSID
http://download.microsoft.com/download/win2000platform/Getsid/1.0/NT5/EN-US/getsid.exe
Win32_SID Class
http://msdn.microsoft.com/en-us/library/aa394450(v=vs.85).aspx
How to Associate a Username with a Security Identifier (SID)
http://support.microsoft.com/kb/154599/en-us
How to deal with localized and renamed user and group names
http://support.microsoft.com/kb/157234/en-us

Exposición, Malware y otras cosas de meter

Estándar

Hola a tod@s!!

El otro día, charlando en una reunión entre colegas, terminamos hablando de Malware y la ventana de exposición ante un ataque Web. La conversación estuvo interesantísima, con varios puntos de vista sobre un posible ataque a una Web, y cual sería la ventana de exposición si el ataque se hubiese llevado a buen fin.

También se planteó la posibilidad de una variación del “Target”. Y si lo que se hackea no es un servidor Web? Cómo expondrían malware a través de HTTP? Sería factible para el atacante este tipo de objetivos?

Lo cierto es que en el tema de distribución de Malware hay distintos puntos de vista, y, bajo mi humilde opinión, todos suelen ser válidos.

Generalmente la ventana de exposición de un Malware en una determinada Web depende de muchos factores. El primero es la “atención” de los administradores ante el Site, junto con el nivel de actualización del sistema y código fuente, por ejemplo. Otro aspecto podría ser la “originalidad” del atacante a la hora de incluir código malicioso en un site, y por último podríamos indicar la “rapidez” con la que el atacante necesita distribuir su Malware.

No hace falta comentar que, ni son las únicas, ni las más importantes. Tan sólo son varias opciones de N(todas válidas) opciones.

Cuando me iba a casa, me puse a pensar en la última opción que os comento. La rapidez a la hora de distribuir Malware. Existen ataques muy planificados sobre dominios que tienen muchas visitas al día. La ventana de exposición puede ser mínima si existe cierto control administrativo sobre la Web, pero no cabe duda de que en esa ventana de exposición, si ha habido mucha actividad, el ataque se convierte en un éxito rotundo. Pero y si no se tiene ese nivel técnico? Y si no se dispone de la capacidad para realizar un ataque así? Cómo pueden disponer de tecnología 3B (Buena, bonita y barata)? El caso más importante para ilustrar esto, lo tenemos con la creación de la BotNet Mariposa, y la posterior detención de los malhechores. Gente con baja cualificación que logran hacerse con un buen número de equipos. Security By Default tiene estupendos artículos sobre esta campaña, e incluso una entrevista con el director técnico de Panda Security, hablando de este tema. Si tomamos como base esta información y damos por hecho que pueden llegar a existir un gran número de atacantes con este perfil, se puede llegar a deducir, que uno de los elementos más importantes con los que pueden llegar a contar estos atacantes, es la rapidez de propagación de su “Mal”.

Así que, como no echaban nada en la tele, y no tenía ninguna película nueva que ver, me planteé algo rápido de montar, que se pudiese actualizar vía HTTP, y efectivo en segundos. Y esta vez para Windows, of course… 😉

Lo más rápido que se me ocurrió fue montar un mini servidor HTTP. Existen varios en el mercado, pero uno de los más conocidos es HTTP File Server, o más conocido como HFS.

Este servidor, el cual yo utilizo mucho para auditorías y algún que otro curso, me permite distribuir lo que quiera de manera rápida y sencilla. Así que me puse a buscar por la Red este tipo de servicios y para qué se destinaban.

Para ello, me pongo a buscar a través de Shodan junto con Google, y la verdad es que me llevé muchas sorpresas con el “destino” de este tipo de aplicaciones.

Imagen 1.- Bingo!!

En este servidor me encuentro con algún que otro Malware y software de relativa poca importancia…

Imagen 2.- Malware por favor!!

Este me encanta, porque tiene gran cantidad de malware, con distintos modos de infección. Uno de ellos, es simplemente un acceso directo que habilita un servidor VNC no interactivo en la máquina víctima. Se ve pero no se toca…

Aunque no todo es Malware y vías de infección. Que todos sabemos que entre ventana de exposición y ventana de exposición, siempre queda algo para las “intrusiones” o los “penetration test”, y si no, que se lo digan a dimitry!

Imagen 3.- Internet is for pr0n!!

En otro orden de cosas, me he encontrado con Webs??? de nuestro gobierno levantadas con este tipo de herramientas. Una de ellas es esta, y me ha parecido curiosa. Espero que no venga ahora algún político y suelte que se han gastado N millones en realizarla…..

Saludos a tod@s!!

Timando a los timadores II de II

Estándar

Hola a tod@s!

En el primer post estuvimos viendo en primera instancia la historia de cómo unos rusos estaban spammeando la red. Aunque el post que escribí ayer está en tono jocoso, debido principalmente a que los spammers no se han preocupado por la seguridad de sus sites, el asunto es bastante serio. El impacto del ataque se puede apreciar en una de las imágenes que publiqué ayer.

Imagen9 

Imagen 1. Impacto del ataque. + de 1.590.000 hits

Sorprende también que entre los favoritos de los rusos se encuentren sistemas operativos tan poco accesibles por malware o vulnerabilidades como MAC OSX…

imagen13

Imagen 2. Mac OSX + IPhones! Oh my God!!

A la hora del descubrimiento de servidores, me sorprendieron varios ficheros y directorios. Hablemos de los directorios en primera instancia.
En una de las Webs (Todavía accesible a día de hoy), existen dos directorios que acojonan a simple vista, debido al contenido de ellos. En uno de ellos, llamado cookies se encuentran más de 500 ficheros con cookies de correos electrónicos spoofeados, y los que le quedan….

Imagen14

Imagen 3. Directorio Cookies

En cuanto al otro directorio, llamado spammed, contiene identidades de correos electrónicos que YA han sido crackeados, con lo que los rusos tienen un control total de las acciones llevadas a través de esos correos electrónicos. Si a eso le sumamos la cantidad de información privada (extractos bancarios, passwords, etc…) que podemos encontrarnos en esas "identidades", la cosa escala a niveles superiores.

Imagen12

Imagen 4. Directorio Spamed

En el directorio raíz, también encontramos mucha información. En dicho directorio, encontramos más de 200 MB en correos electrónicos. Contando con que son archivos de tipo TXT, son muchos correos electrónicos por crackear…

Imagen11

Imagen 5. Directorio Principal.

En cuanto a las direcciones IP, tan solo una de ellas está listada en algún tipo de Black list, tal y como reflejan Robtex y SpamHaus.

Imagen15

Imagen 6. Lista negra. Robtex

Imagen16

Imagen 7. Lista Negra SpamHaus

Gracias a que pertenencen a una de estas listas, los navegadores que consulten estas listas, pueden alertar de un posible peligro al visitar alguna de estas páginas. Prueba de ello es Google y su sistema Safe Browsing.

Captura2

Imagen 8. Google Safe Browsing

Imagen17
Imagen 9. Malware en URL

Imagen18
Imagen 10. Malware en URL

Otro dato interesante que me ha llamado la atención, y haciendo honor a las "auditorías escalables", en cuanto a servicios y servidores se refiere, es la visualización de un archivo Log en uno de los servidores. Este archivo Log contiene las rutas de lo que parece ser el traspaso de ficheros entre dos servidores. Una dirección más para el EvilMap!. Como no tenía ganas de seguir "auditando", porque esto puede ser el nunca acabar, pego un bonito phpinfo que se han dejado por ahí…. 😉

Imagen21

Imagen 11. Daaaatossss

Imagen19
Imagen 12. PhpInfo

Y por último, si os digo que el PhpMyAdmin de una de las Webs no tenía password…. La cosa cambia no?

Imagen20

Imagen 13. Ohhhhh No hay datos!
 

En cuanto al código fuente del malware, por si alguien le quiere echar un vistazo, os paso los links de ambos códigos (Javascript y Java) pasteados en pastebin.

http://pastebin.com/f356f20f0 (Código Javascript)

http://pastebin.com/f45e076e2 (Código Java)

Salu2!

Timando a los timadores I de II

Estándar

Hola a tod@s!
Recientemente me he encontrado en una de esas situaciones en las que los dichos populares toman sentido. En este caso el dicho popular es el siguiente:

“Quien roba a un ladrón, 100 años de perdón…”

La situación es la siguiente. Me mandan un correo. Este correo tiene un link a un foro de un país en el que las damas me enamorarían con tan solo hablarme.

Al realizar un copy-paste del link y pegarlo al navegador, éste entra con facilidad en la Web. Pero al cargar la página completa, recibo una pequeña alerta. El sitio que voy a visitar puede dañar mi seguridad. Al analizar el código fuente, encuentro que éste contiene un IFRAME malicioso, el cual me redirige a una URL que me da la oportunidad de descargar no sólo uno, si no 3 archivos maliciosos.
Como el sábado no tenía nada que hacer (Es muy triste, lo sé… ;-)), me dispuse a tirar un poco del hilo, a ver qué me encontraba por el camino. Y vaya si me encontré con cosas….
Empezamos por el principio de esta hermosa historia.

Un ataque IFRAME se puede utilizar para muchos propósitos, desde ataques de denegación de servicios, descarga de archivos, o ataques de CSRF.
El iframe que se encontraba en el foro presentaba una URL codificada con el servicio de codificación de URL TinyURL. En el caso que nos ocupa, la URL http://tinyurl.com/false decodificada, presentaba una URL que apuntaba a http://WebDeMalware.com/in.cgi?default. Cuando intenté acceder a la Web anterior, ésta me redirigía al sitio http://OtraWebDeMalware.org/index.php, la cual me intentaba descargar 3 ficheros. Estos ficheros son un archivo .jar, un archivo .swf, y un archivo .pdf. Todos maliciosos, of course.

Imagen1 Imagen I. Iframe en foro vulnerable

Esos 3 archivos, analizados bajo VirusTotal, nos da 3 resultados, los cuales muestro a continuación:

http://www.virustotal.com/es/analisis/810306ed9b52261f0f01376f79f5a60c16cafd1689f46cc23e119ba466886aa8-1264270308 

http://www.virustotal.com/es/analisis/63fa129d7b1dd129a1e489c32a439a2ae65755d7cc7de09b7e433aa630a08f30-1264270204 

http://www.virustotal.com/es/analisis/626e0184037d75aa52591aecff1c1a531ca2e9458560fa6720de6e4b79942abf-1264270449 

Para tener una segunda opinión sobre los archivos descargados, utilicé otro servicio de análisis de malware basados en red. Este servicio, ofrecido por la Web iseclabs.org, Web de la que se habló también aquí, permite analizar ciertos archivos, como por ejemplo código javascript, ficheros pdf o ficheros flash.

http://wepawet.iseclab.org/view.php?hash=ab60256944c967a8553bd1ba4dd0e37b&type=js

Como virustotal y los laboratorios de iseclab se encargaron de analizar los ficheros por mi (Gracias chicos!!) me dispuse a “pelearme” un poco con las dos únicas direcciones que tenía.

Target1: http://WebDeMalware.com

Target2: http://OtraWebDeMalware.org

Como tenía tiempo para montar la estrategia, ya que no tenía nada que hacer en Sábado (Sí, otra vez, es muy triste… ;-)), me dibujé un pequeño mapa de cómo estaba la situación…

Imagen2Imagen 2.- Mapa Inicial de la situación 

Lo primero que hice fue “visitar” los sitios maliciosos con la debida protección. El primer sitio que visité, sólo tenía un html estático en el index de la página, y poco se podía hacer en ella, de momento….

Imagen3Imagen 3.- HTML estático de uno de los Sites

El segundo sitio que visité, a veces te intentaba descargar el malware, y a veces te redirigía a Google.cn (Google China). Así que en principio, poco se podía hacer también, de momento…

El siguiente paso por el que opté fue el descubrimiento de puertos de ambos servidores. El cuadro comparativo lo expongo aquí:

Imagen4Imagen 4.- Descubrimiento de puertos en los sites

Examinando las respuestas a la hora de descubrir puertos, me encuentro con que uno de los servidores lleva un sistema operativo Linux y el otro servidor lleva puesto un Windows. Como el puerto de terminal server está a la espera de alguna petición, me intento conectar con un cliente virtualizado.

Imagen5

Imagen 5.- Acceso deste un cliente TS

Rusos!!

Next Step… Footprinting!

Gracias a los códigos de estado HTTP, y si nada lo impide, se pueden realizar peticiones a una Web, tomando como base un diccionario “rico en palabros”. Este tipo de técnicas se pueden utilizar para descubrir directorios ocultos en un servidor Web, y nos pueden arrojar mucha información sobre un sitio en particular. Aplicando estas técnicas con los sitios Web, se obtiene la siguiente información:

Imagen6Imagen 6.- Descubrimiento de directorios

Imagen7

Imagen 7.- Descubrimiento de directorios

Como se puede observar en las imágenes, las Webs tienen directorios interesantes. Directorios como Admin, PhpMyAdmin, test o data, hacen las delicias para cualquiera que tenga un mínimo de curiosidad. Queréis ver lo que hay? Sigamos!

Next Step… Open the door!

Algunas veces, cuando auditamos algún sitio, y vemos un campo login + passwd, nos ponemos en lo peor. Pero me acordé de una charla en el Asegur@IT Camp de Alejandro ramos. Este pájaro, demostró como hoy en día, existen personas que son capaces de tener correos con pass 123456. El directorio Admin de una de las Webs, redirige a un apartado de autenticación, en el que se nos solicita un usuario y una password. En honor a la verdad, he de decir que los rusos no tenían como password 123456, pero también he de decir, que la pass era ADMIN… No comments….

Aparentemente, el sitio no es más que una simple aplicación para manejar una botnet. En ella, se nos reflejan estadísticas de los sitios atacados, y contadores de visitas por cada sitio.

Imagen8

Imagen 8.- Status Botnet

Imagen9

Imagen 9.- Estadísticas de Botnet

En la aplicación, también se pueden mostrar estadísticas de los sitios Web. Gracias a ello, los rusos también tendrán cierto control sobre si la vulnerabilidad en los sites se explota de forma correcta. En el caso opuesto, los rusos pueden dar por sentado de que el sysadmin del site ha parcheado el fallo.

Imagen10

Imagen 10.- Webs y foros atacados

Al parecer el ataque se está realizando en versiones no actualizadas de VBULLETIN y VBSEO

Mañana vamos con la edición II

Salu2!!

Analizando Tráfico de Red III de III

Estándar

Para el análisis forense de tramas de Red, existen herramientas que son capaces de automatizar el proceso de extracción, siendo válidas para extraer “de una tirada” conjuntos de datos que viajan a través de un protocolo.

Una herramienta bastante potente para realizar este tipo de extracciones es Xplico. Esta herramienta, de momento sólo existe para sistemas operativos Linux. Hasta la fecha es la herramienta más interesante, ya que de momento, está realizando una muy buena labor de soporte para muchos protocolos. Para saber más sobre la misma, aconsejo leer el post de Sergio Hernando, que habla sobre ella.

Para Windows, la única herramienta que vale la pena, se llama NetWork Miner. Es una herramienta bastante interesante, ya que, además de la extracción de datos, es capaz de realizar tareas de fingerprinting sobre los paquetes de datos para averiguar, por ejemplo, el sistema operativo que envía o recibe paquetes. Su funcionamiento se basa en las bases de datos que utilizan diversas herramientas de auditoría, como por ejemplo, NMap. Un buen artículo sobre esta herramienta, lo tenemos en la Web SoyForense.

Lamentablemente, y utlizando esta herramienta con un fichero PCAP, en cuyo interior se encontraban datos relativos a conversaciones de Vídeo, audio y datos, transmitidos todos ellos a través de mensajería instantánea con Windows Live Messenger, ésta no ofrece ningún avance positivo.

netWorkMiner

Imagen 1.- Extracción de datos fallida con NetWork Miner

Después de la prueba fallida, lo siguiente es analizar “a pelo” cada paquete de la captura, para encontrar una huella, o pista que nos de esperanza para continuar.

Para ello, decido leerme, sin mucho éxito, parte del documento que tiene Microsoft sobre la implementación de RTP en Streaming de audio o vídeo.

Analizando la captura de datos, me encuentro con un paquete algo especial, con el formato siguiente:

RecipientID

Imagen 2.- RecipientID en Windows Live Messenger

Observando varios foros sobrre desarrollo de aplicaciones para mensajería instantánea, comprendo que este paquete es utilizado por Windows Live Messenger para establecer la conexión. Una vez que la conexión está establecida, envía regularmente un paquete de las mismas características para asegurarse de que la conexión sigue permanente.

Wireshark tiene, como añadido a la herramienta, opciones de traducción de paquetes. Esta capacidad, dota a la herramienta con un decodificador de paquetes. Con este tipo de opciones, podemos escoger un paquete, y decirle a Wireshark que lo decodifique según un protocolo establecido.

Nuevo intento, fallido, de decodificar todo protocolo UDP como si fuese RTP. Resultados cero.

Inspeccionando el tráfico UDP, me encuentro con que existen patrones que se repiten a la hora del envío de paquetes a través de Windows Live Messenger. En cada envío de paquetes, me encuentro con unos mismos valores para distintos paquete. Este tipo de patrón da a pensar que podemos estar ante algún tipo de Payload. Para ello, voy copiando en una tabla, todos los valores repetidos que me voy encontrando. La lista que obtengo es la siguiente:

  • 44
  • 48
  • 66
  • 4A

Buscando y rebuscando en internet, me encuentro con un post en un foro, el cual ya no existe, en el que se retrata este mismo payload. Pero lo más interesante es que un tipo, llamado Ramiro Polla (No es coña…), ya lleva tiempo con esta investigación y ha recreado un un paper y una herramienta que realiza toda esta labor.

Los payloads anteriormente descritos, se refieren a qué tipo de acción va a realizar Windows Live Messenger. Es decir, si va a realizar una conexión, enviar una trama de audio, enviar una trama de vídeo, etc…

Hablando de la herramienta, cabe decir que la mayor característica de la misma, es la capacidad de trabar “offline” con capturas de datos. Una vez que se carga la captura de datos en la herramienta, se procede a la extracción de paquetes de audio y vídeo.

WebCamRecorder

Imagen 3.- Añadido de capturas offline

Una vez que la herramienta ha realizado su trabajo, se puede proceder a exportar los datos, pudiéndose utilizar compresores de audio y vídeo, para que la captura final sea más pequeña.

imagenExtraida

Image 4.- Captura final y posibilidad de extracción de datos

Como nota final, vía Sergio Hernando me entero de que también existe una herramienta similar en Linux, llamada MSN Shadow. Leyendo el Blog del autor de la herramienta, me entero de que si queremos versión para Windows, tendremos que esperar un poco, ya que, según sus palabras:

So, to support my additional work on this project like a version for Windows, capture of file transfers and others improvements, I would like to ask for some donation if you can.
I would not like to stop providing this software in open source format, but I can not work for nothing!

Hasta un nuevo post!!

Saludetes!