Ackcent estuvo presente esta pasada semana en la octava edición de Navaja Negra Conference , que tiene lugar en Albacete.
Ackcent estuvo presente esta pasada semana en la octava edición de Navaja Negra Conference, que tiene lugar en Albacete. Durante esos días asistimos a distintos talleres que se impartieron, así como de las charlas que se realizaron por parte de ponentes de la talla de David Meléndez, Josep Albors, Joaquín Molina, Rubén Rodenas, entre otros.
Tampoco hay que olvidar el CTF que, como cada año, reta a los asistentes a encontrar las Flags que el equipo de Ka0labs oculta en distintos retos, en los que, aplicando técnicas como reversing, criptoanálisis o inyecciones de código permiten obtener la puntuación para cada reto.
Las charlas
Nuestro equipo pudo disfrutar de charlas en las que se ilustró, por ejemplo, como el Big Data es capaz de aportar una ayuda clave en la detección de malware, gracias a la recogida de grandes cantidades de información, analizando patrones de comportamiento para detectar actividades maliciosas en las redes corporativas; o el uso de dispositivos de reducido tamaño para ser empleados a la hora de instalarse de manera oculta, e incluso en drones de reducido tamaño con el objetivo de realizar distintos ataques a la red de una empresa, o ataques dirigidos contra objetivos concretos.
Una de las charlas que nos pareció más interesante versaba sobre el entrenamiento de Red Teams vs Blue Teams, viendo cómo se invierten grandes cantidades de dinero en la parte ofensiva (dispositivos, herramientas, formación, tiempo, etc”¦). Sin embargo y por lo general, la parte defensiva se queda en la instalación de un dispositivo y su administración, siendo esto insuficiente. Se remarcó la necesidad de entrenar a equipos RT en técnicas aplicadas por los BT y viceversa, permitiendo conocer las técnicas con las que serán atacados y defendidos, pudiendo parametrizar mejor sus herramientas y mejorando la recolección de eventos de seguridad.
Finalmente, la inclusión de charlas relativas a Car Hacking, dónde se realizó un proceso de ingeniería inversa para detectar la información que circula por los buses de comunicaciones de un coche, ayudas a la conducción para mejorar el funcionamiento de la amortiguación de motocicletas, o hacking de cajeros bancarios pusieron la guinda a unas completas conferencias.
Los talleres
En cuanto a los talleres, pudimos disfrutar del taller de ingeniería inversa de malware, en el que Jesús Díaz y David Fuertes introdujeron las técnicas más efectivas, así como los fundamentos para poder realizar análisis de malware y detectar aquellas muestras que muy probablemente se empleen en la propagación de estos.
Se dio comienzo al taller describiendo las cabeceras de los ficheros ejecutables para Windows (PE- Portable Executable), viendo cómo es posible obtener uno de los primeros indicadores en cuanto al tamaño físico y el tamaño virtual en memoria, obtener la tabla de importaciones y las funciones que empleará, dando al auditor la posibilidad de determinar posibles acciones que realizará el malware, hasta determinar si dicho malware viene empaquetado o cifrado y algunos indicadores en el código desensamblado para poder detectarlo.
CTF
Finalmente, pudimos enfrentarnos a algunos de los retos. En esta ocasión, con una temática muy Pokémon. Os contamos cómo pudimos resolver algunos.
Para todos los CTF se dispone de un formato en el que sabemos que estará la Flag, que era nn8ed {}, dando una pequeña pista sobre qué buscar.
– ZX Spectrum
En esta ocasión, se proporciona un fichero de audio en formato wav, y la única instrucción para resolverlo es “Puede que necesites un ZX Spectrum para resolverlo”. Como ya imaginábamos, el fichero debía ser una captura de las cintas que empleaba este mítico ordenador de los años 80, sin embargo, no disponíamos de dicho equipo, por lo que hubo que hacer uso de una herramienta de conversión que nos permitiera extraer la información que contenía.
Esta información contenía por un lado una imagen de un Pokémon, y por otro el código de programa. Por lo que solo nos faltaba el ZX para poderlo ejecutar. El programa debía mostrar un mensaje solicitando una contraseña y al introducirla nos daría la Flag buscada.
Haciendo uso de un emulador y un par de búsquedas de imágenes para determinar cuál era el Pokémon, pudimos dar con la solución y obtener la contraseña.
En este reto se indica el mensaje “Get the secret from the vault. PHP can’t be that bad…” y se presenta una web en la que introducir una contraseña sin más información.
Tras observar el código de la web, no hay información acerca de qué poder hacer. Tras analizar la situación y darle algunas vueltas, pensamos en formas de gestionar el código y que tal vez pudiera haber algún repositorio mal configurado. Por lo que, haciendo uso de una herramienta para volcar el repositorio, pudimos obtener los ficheros que emplea Git para la gestión de las versiones.
Una vez obtenido dicho repositorio pudimos obtener las distintas versiones del fichero, que muestra el formulario, y observamos como se hacía un doble hash con md5 del valor introducido más un valor de salting, así como el resultado que debía dar esta operación, siendo llamativo el formato que tenía y viendo que se correspondía con lo que se conoce como Magic Hashes de PHP.
A partir de aquí, disponiendo del hash que se buscaba, solo había que generar claves que junto al valor de salting nos llevarían a obtener el hash buscado, por lo que preparamos un script que generase dichos hashes y realizara la comparación hasta dar con el valor necesario que nos diera la clave para obtener la tan ansiada bandera.
Obtenga recursos en su buzón de forma gratuita