Skip to main content
CTF c0r0n4con Conference 2020

CTF c0r0n4con Forensics – wall_paint

We recently detected an intrusion in our networks that led many users to be infected with malware. We need to know how the malware got into the users machines and learn the most out of it. Can you lend a hand?

wall_paint

Puntuación: 250

El enunciado de este reto indica lo siguiente:

We recently detected an intrusion in our networks that led many users to be infected with malware. We need to know how the malware got into the users machines and learn the most out of it. Can you lend a hand?

Mirrors to download:

 

En este reto obtenemos una imagen de un dump, usaremos file para detectar el tipo de fichero:

Analizaremos ahora la imagen con fdisk para conocer que hay en su interior:

Conocido el contenido, procedemos a montarla.

El valor 1048576 lo obtenemos de multiplicar el inicio del sector (2048) por el tamaño de bloque (512).

Analizamos, entre otras cosas, la home del usuario corpworker obteniendo un fichero con información importante en la ruta home/corpworker/.local/share/recently-used.xbel

Donde nos llama la atención el fichero home/corpworker/corpwallpaper_1.0.deb, el cual ya no existe en la home del usuario.

Realizamos varias búsquedas en la imagen, y posteriormente hacemos un hexdump de la imagen, donde identificamos algunos correos que mencionan la intrusión y se facilita la password del fichero .deb en uno de ellos.

CTF c0r0n4con Forensics - wall_paint

CTF c0r0n4con Forensics - wall_paint 

Continuamos buscando y obtenemos el correo original, junto con un base64 bastante grande.

CTF c0r0n4con Forensics - wall_paint

 

Extraemos el base64, lo decodificamos y lo guardamos con el nombre del fichero visto anteriormente y procedemos a extraer el contenido del paquete .deb

Donde observamos dos ficheros tar.xz y el fichero binario del paquete.

Tras extraer los mismos y analizar el contenido, observamos que por una parte se descarga una foto de un gatito de internet e instala un servicio llamado wallpaper. Además de ello ejecuta el siguiente script:

Que ejecuta el script “st.sh” y elimina todos los archivos que han sido creados y utilizados.

Si probamos a leer el script st.sh observamos que el mismo está cifrado:

Utilizamos el comando de openssl visto en el anterior script, junto con la contraseña del anterior correo para descifrar el fichero:

Y conseguimos con ello la flag:

 

Puedes ver el resto de writeups en este enlace.

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *