Mi lista de 10 ciberarmas

Hace un par de semanas los medios publicaban que el US Air Force ha clasificado 6 herramientas como ciberarmas, sin duda un hot topic. Para este post yo haré lo mismo y pondré un listado de 10 herramientas que podrían ser ciberarmas.

Mi criterio de selección va en función de su utilidad, capacidades y que sea open source o gratis por lo menos.

Lógicamente existen más herramientas que me gustan o que utilizo, pero creo que esta lista es una estupenda recopilación para realizar ataques en red y sistemas, ingeniería inversa, análisis de tráfico, ingeniería social, búsqueda de vulnerabilidades y desarrollo de exploits, vamos, que debería estar en el toolkit de todo pentester :)

  1. Metasploit: la herramienta de hacking ético por excelencia.
  2. SET: amplias opciones para realizar ataques de ingeniería social.
  3. Dsploit: nada como llevar un toolkit de hacking ético en el móvil, para Android.
  4. Nmap: el popular escáner de puertos y más.
  5. WireShark: para analizar el tráfico de red de forma simple y potente.
  6. Ettercap: todo tipo de ataques en red.
  7. Immunity Debugger: un poco de ingeniería inversa combinada con scripting en Python.
  8. Mona: potente script para la herramienta anterior o Wingdb para desarrollar exploits.
  9. Peach: completo framework para buscar vulnerabilidades mediante fuzzing.
  10. Androguard: ingeniería inversa para Apps Android.

¿Cuál es tu lista de 10 ciberarmas?

— Simon Roses Femerling

Publicado en Hacking, Hacking Etico, Seguridad, Tecnologia | Etiquetado , , , , , , | Deja un comentario

AppSec: Mejora la seguridad de tu software con GCC Stack Protector Strong

El otro día ayudando a un cliente a desarrollar software seguro se me ocurrió que este tema podría ser de interés para mis lectores. Lógicamente esta temática es bastante amplia, pero en este artículo me centraré: es un patch para el compilador GCC que mejora la protección de stack protector (stack canary) mitigando las vulnerabilidades del tipo buffer overflow.

Stack Protector Strong es un patch desarrollado en Google y aplicado al Proyecto Chromium (Navegador Chromium y Chromium OS) que mejora sustancialmente esta defensa. Por defecto en GGC tenemos los parámetros –fstack-protector y –fstack-protector-all: el primero analiza cada función en el código y si detecta una posible vulnerabilidad aplica la defensa al compilar el programa (el programador no tiene que hacer nada, bueno sí, desarrollar de forma segura ;)), mientras que el segundo parámetro aplica esta defensa a TODAS las funciones del programa sin validar si son vulnerables.

Ambas opciones tienen sus respectivos problemas: la primera opción (-fstack-protector) está limitada por el código que considera vulnerable, mientras que la segunda (-fstack-protector-all) es demasiado agresiva y afecta al rendimiento de la aplicación.

Debido a estos problemas en Google optaron por desarrollar un tercer parámetro, -fstack-protector-strong, que abarca más casos de código vulnerable sin sacrificar rendimiento. En la figura 1 podemos ver una comparativa entre –fstack-protector y –fstack-protector-strong.

stack_protector_VS
Fig. 1 – -fstack-protector vs. –fstack-protector-strong

Claramente es una mejora sustancial que abarca más clases de posibles vulnerabilidades en código, pero basta de teoría y pasemos a un ejercicio práctico donde vamos a instalar el patch a la última versión de GCC 4.8.0 publicada recientemente en un Linux Debian 6.0.

El primer paso es bajarnos la versión GCC que nos interese parchear. El parche se escribió para la versión 4.6, aunque he probado con las versiones 4.7 y 4.8 y funciona correctamente. Para ello ejecutamos el comando wget con la URL de GCC y luego lo descomprimimos (ver figura 2).

gcc_cap1
Fig. 2 – Bajando GCC

Para compilar GCC debemos tener una serie de librerías instaladas por lo que utilizaremos el comando apt-get para su instalación (ver figura 3):

  • Build-essential
  • libgmp3-dev
  • libmpfr-dev
  • libmpc-dev
  • zip
  • autogen

gcc_cap2
Fig. 3 – Instalando paquetes necesarios para compilar GCC

Ahora bajamos el parche –fstack-protector-strong de aquí. El parche está compuesto por 5 ficheros diff.

gcc_cap4
Fig. 4 – Parches bajados

A continuación procedemos a parchear GCC y debemos seguir el orden que aparece en la figura 5. Prestad especial atención al orden de los directorios dentro de GCC.

gcc_cap5
Fig. 5 – Aplicando parches a GGC

Una vez que tengamos GCC parcheado podemos compilarlo, para su instalación en el sistema necesitamos tener privilegios de administrador (ver figura 6). Mientras el comando se ejecuta podemos leer otros artículos de este blog ya que el proceso tarda bastante :)

gcc_cap7
Fig. 6 – Compilando e instalando GCC

Ahora ya estamos listos para compilar programas con la última versión de GCC y con una mejor defensa ante vulnerabilidades buffer overflow.

En la figura 7 compilamos un programa vulnerable con el parámetro –fstack-protector-strong.

gcc_cap9
Fig. 7 – Probando –fstack-protector-strong

Al desensamblar (reversing) myapp podemos ver que se ha aplicado esta defensa en varias funciones y que con –fstack-protector no se hubiera aplicado (aunque este ejercicio lo dejo para otro artículo).

Actualmente este parche no está por defecto en GCC pero esperemos que lo esté en futuras versiones, así como nuevas y mejores defensas.

Es cierto que existen vectores de ataque para saltarse esta protección, aunque toda defensa es poca y hoy en día todos los compiladores modernos (GCC, Visual Studio y LLVM) incorporan diversas defensas que los programadores deberían utilizar siempre.

Sin duda el uso de estas defensas en los compiladores no quita la necesidad de desarrollar software de forma segura utilizando un marco de desarrollo seguro como son el MS SDL o el OpenSAMM.

¿Qué parámetros de seguridad utilizas al compilar software?

— Simon Roses Femerling

Publicado en Hacking Etico, Modelo de Amenazas, Privacidad, SDL, Seguridad, Tecnologia | Etiquetado , , , , , , , | Deja un comentario

Reseña Libro: The IDA Pro Book, 2º edición

Si te gusta la ingeniería inversa y quieres aprender todos los secretos de IDA Pro, este es tu libro. Esta obra escrita por Chris Eagle, un experto en la materia, nos revela toda la potencia de la mejor herramienta para ingeniería inversa. The IDA Pro, 2º edición (ISBN-13: 978-1593272890) a lo largo de sus 26 capítulos describe cómo utilizar IDA Pro y todas sus opciones, así como el decompilador, debugger y el emulador, y por supuesto el desarrollo de herramientas con los lenguajes IDC y Python (IDAPython).

IDA Pro es una compleja herramienta para analizar todo tipo de binarios pero este libro facilita a los no expertos su aprendizaje, y los que ya lo sean también sacarán provecho de leerlo.

Las secciones avanzadas de cómo extender IDA Pro mediante el uso de IDC o Python no tienen precio, el autor incluye bastantes scripts muy bien explicados. Personalmente soy un apasionado de Python, por lo que todos los capítulos relacionados con IDAPython para mí son los más interesantes.

En la web del libro podemos encontrar más información y una serie de plugins para IDA Pro, de especial interés el x86 Emulator plugin.

El código que la obra analiza es para x86 bajo Windows, pero IDA Pro soporta muchas más plataformas como ARM o binarios para Linux (ELF) y MacOS (Mach-O) entre otros.

Sin duda una lectura obligatoria para los tiempos que corren en ciber seguridad, donde es vital poseer las habilidades necesarias para buscar vulnerabilidades en software o analizar malware.

Puntuación (1 rosa, muy malo / 5 rosas, muy bueno): 5 Rosas (Lectura Obligatoria)

— Simon Roses Femerling

Publicado en Hacking, Hacking Etico, Libro, Seguridad, Tecnologia | Etiquetado , , , , , | Deja un comentario

De vuelta en Black Hat Europa y mi charla sobre software antirrobo

El pasado jueves 14 y viernes 15 de marzo se celebró el congreso Black Hat Europa en la estupenda ciudad de Ámsterdam, un evento obligatorio para expertos en ciberseguridad.

Por segundo año consecutivo participé con una ponencia sobre I+D en la que se exponía el estado de seguridad de los programas antirrobo para ordenadores y Smartphones.

Como siempre el evento tuvo charlas interesantes y otras menos, pero recomiendo al lector que las consulte y decida por sí mismo. Los temas fueron bastante variados como forense, pentesting, vulnerabilidades y desarrollo seguro.

En lo que respecta a mi charla, ya podéis encontrar la presentación en la web de VULNEX (aquí).

Desde aquí saludar a la gente de MundoHacker y demás españoles que andaban por el congreso!

Un saludo y nos vemos en el próximo congreso :)

— Simon Roses Femerling

Publicado en Conferencia, Hacking Etico, Privacidad, Seguridad, Tecnologia | Etiquetado , , , , , , , , , | Deja un comentario

Medre, AutoCAD Malware: El espía dentro del cad

El pasado junio se identificó un malware que infectaba AutoCAD para Windows y que es responsable del robo de miles de documentos. AutoCAD es un popular programa para dibujo 2D y 3D que se utiliza para diseñar todo tipo de productos como viviendas, automóviles, industria aeroespacial así como en defensa, por lo que es realmente interesante para el espionaje industrial. En este post estudiaremos a un malware conocido como Medre.

Desde un punto de vista técnico es un malware sencillo, escrito en AutoLISP y scripts/payloads en VBS, pero ingenioso ya que infecta múltiples versiones de AutoCAD en Windows (ver Fig. 1) con el objetivo de robar ficheros y enviarlos por correo a servidores en China.

Fig. 1 – Versiones soportadas de AutoCAD por Medre

En la Fig. 2 podemos ver los servidores chinos donde se envía la información robada, Medre utiliza diversas cuentas de correo en estos servidores. A pesar de utilizar servidores chinos no está del todo claro si el origen del ataque proviene de allí.

Fig. 2 – Servidores Chinos

Y en la Fig. 3 podemos ver parte del código responsable de comprimir los ficheros robados utilizando WinRAR estableciendo la contraseña “1”.

Fig. 3 – Código WinRAR

Si pensamos que AutoCAD es uno de los programas más populares para diseño que corre en múltiples plataformas como Windows, MacOS y móviles (Android y iOS), nos llama la atención lo ingenioso de este ataque, simple y eficaz. ¿Quizás futuras versiones del malware sean multiplataforma?

Sin duda los ataques al tejido industrial ya sea a sistemas SCADA o utilizando malware como Medre para el robo de información son realmente interesantes y peligrosos para muchas organizaciones y Estados-Naciones.

¿Qué malware de espionaje industrial te ha parecido interesante?

— Simon Roses Femerling

Publicado en Hacking, Hacking Etico, Malware, Seguridad | Etiquetado , , , , , , , , , | Deja un comentario

Mi experiencia en AppSec USA 2012

Sabes que estás en Texas cuando al salir del avión escuchas música country por el aeropuerto y efectivamente, el pasado 25 y 26 de octubre se celebró el congreso OWASP AppSec USA en Austin, Texas, donde un servidor participó con una ponencia sobre Web Honeypots.

El congreso contó con más de 800 asistentes, cursos gratis y de pago sobre diferentes temas de seguridad de aplicaciones durante los días 23 y 24, y por supuesto una selección de ponentes impresionante.

Mi experiencia como ponente fue inmejorable ya que la organización, la misma gente que organiza LASCON, puso mucho esfuerzo y ganas en que todo saliera bien. A los ponentes nos organizaron una barbacoa estilo Texas en un conocido restaurante con vistas a un lago.

Y qué decir del Happy Hour para todo el congreso, donde hubo un toro mecánico, la estupenda música del rapero Dual Core y auténticos armadillos para hacer carreras, sin lugar a dudas estaba en Texas, yee haw!

Con tantas ponencias donde elegir en demasiadas ocasiones no sabías cual escoger, pero en breve se colgarán los vídeos y ponencias de todas las charlas para poder verlas con toda la calma y rigor que se merecen.

Yo tuve el placer de hablar sobre Web Honeypots, un tema muy interesante y con mucho trabajo por hacer. En concreto hablé sobre un proyecto en el que llevo trabajando desde hace tiempo y que he rescatado del baúl de los recuerdos, y que a través de VULNEX podré dedicarle recursos profesionales :)

Cómo se nota que las empresas americanas tienen una actitud diferente a las empresas españolas, basta observar la foto del panel de trabajo (Job Board) con conocidas empresas buscando todo tipo de perfiles en seguridad de aplicaciones.

Desde aquí dar las gracias a toda la organización por el estupendo evento y nos vemos en la próxima cita AppSec USA 2013 en Nueva York.

Nota: En un par de semanas se publicarán los vídeos, os mantendré al tanto!

Feliz Halloween queridos lectores!

— Simon Roses Femerling

Publicado en Conferencia, Hacking, Hacking Etico, Modelo de Amenazas, OWASP, Privacidad, SDL, Seguridad, Tecnologia | Etiquetado , , , , , , , , | Deja un comentario

Dell, IBM y posibles otros gigantes de la tecnología deberían estar avergonzados

En tiempos de crisis se habla mucho de la necesidad de emprender como motor para levantar la economía o por lo menos en la crisis española. Ahora bien, ¿quién ayuda a los emprendedores?

Como los lectores sabrán soy el fundador de VULNEX, una startup tecnológica que ofrece servicios de ciber seguridad altamente especializados tanto ofensivos como defensivos. En los últimos meses he estado hablando con algunos gigantes como son Dell e IBM España para adquirir unos servidores que nos permitan mejorar nuestra plataforma de I+D y servicios a nuestros clientes.

Como es lógico el importe de la compra es pequeño para estos gigantes pero para nosotros es un desembolso importante, por lo que estamos interesados en que nos financien la compra y cuál es nuestra sorpresa: ninguno de estos 2 gigantes nos financia por ser una startup, me indican que solo financian a empresas con más de 2 años de vida. INCREÍBLE y VERGONZOSO!

Imagino que estas empresas han olvidado sus raíces y sobre todo cómo y dónde empezaron. En mi opinión es decepcionante que ni siquiera valoren el proyecto para determinar su potencial y se limiten a decir NO. Qué fácil es decir NO a los pequeños!

Ahora entiendo por qué Dell ha presentado recientemente unos malos resultados, con esa política de ventas no es de extrañar. Y qué decir de IBM, el monstruo de las patentes…

Pero bueno, así es el mundo de los emprendedores, una lucha constante al que por desgracia te vas acostumbrado. Por supuesto en VULNEX estamos valorando otras opciones para poder ejecutar esta operación y mejorar nuestros servicios.

Atentos a interesantes novedades en el Q1 del 2013 ;)

Queridos lectores, ¿cuál es vuestra opinión sobre la ayuda de las grandes empresas a las startups?

— Simon Roses Femerling

Publicado en Economia, Emprendedores, Negocios, Tecnologia | Etiquetado , , , | Deja un comentario