CVE-2023-38831

20230910230314.png

Introducción :

WinRAR sirve para acceder al contenido de archivos comprimidos y también para poder crear este tipo de archivos.

Un archivo comprimido es un archivo que en su interior puede tener uno o mas ficheros, como imagenes, documentos, programas o cualquier otro tipo de datos, que además una vez comprimidos suelen ocupar menos espacio en disco. Por esto es muy frecuente encontrase con este tipo de archivos en Internet, tanto al descargar archivos de paginas web o servidores ftp como adjuntos en los correos electrónicos (porque es más rápido y fácil enviar un solo fichero de menor tamaño que varios ficheros de mayor tamaño).

Hace poco se descubrió una vulnerabilidad en versiones anteriores a 6.23 de RARLab's WinRAR permite a los atacantes ejecutar código malicioso cuando un usuario intenta abrir un archivo aparentemente inofensivo contenido en un archivo ZIP. Este problema ocurre porque un archivo ZIP puede contener tanto un archivo inofensivo (por ejemplo, una imagen .JPG) como una carpeta con el mismo nombre que el archivo inofensivo. El contenido de la carpeta se procesa incluso cuando el usuario solo intenta acceder al archivo inofensivo. Esta vulnerabilidad fue aprovechada en ataques en vivo entre abril y agosto de 2023.

Explotación Vulnerabilidad :

Laboratorio:

Esquema del laboratorio

20230909125802.png

Explotación de la vulnerabilidad:

Si buscamos la vulnerabilidad en el navegador nos encontraremos con muchas que automatizan y la podemos usar.

20230909124337.png

Así que usaremos la primera, para poder explotarla la vulnerabilidad de WinRAR

En el repositorio ya nos indican del como funciona y que debemos hacer. Así que vamos a clonar el repositorio y ejecutar en nuestra maquina atacante.

  • Ejecutamos el exploit y nos genera un fichero .rar, esto lo hacemos en nuestra maquina atacante, ahora lo pasaremos a la maquina victima que es un Windows 10

20230909124812.png
  • Ahora, con python podemos levantar un servidor

desde la maquina windows descargamos el archivo .rar

20230909130130.png

20230909130319.png Ejecutemos

20230909130404.png

Al ejecutar el archivo .rar nos abre la calculadora

20230909130435.png

¿Cómo funciona ? Explicación

Una vez de ejecutar el exploit, es importante que entendamos el ¿como? se llega a ejecutar el exploit.

"Se ha identificado una vulnerabilidad explotable en las versiones de RARLabs WinRAR anteriores a la 6.23. Esta vulnerabilidad permite a los atacantes ejecutar código arbitrario a través de un archivo ZIP específicamente diseñado. La vulnerabilidad surge debido al mal manejo de archivos ZIP que contienen archivos benignos, como documentos .PDF normales, junto con carpetas que comparten el mismo nombre. Cuando un usuario intenta acceder al archivo benigno, el archivo puede incluir una carpeta con un nombre similar que contenga contenido ejecutable. Este contenido malicioso dentro de la carpeta se procesa durante el intento de acceder al archivo benigno, lo que facilita la ejecución de código arbitrario. La explotación de esta vulnerabilidad se ha documentado en incidentes del mundo real ocurridos entre abril y agosto de 2023."

  • Esto es lo que nos dicen los de winrar, bueno esta traducido para un mayor entendimiento. Estructura del archivo malicioso .rar

Vamos a explicarlo mejor, al tener una archivo .rar y este contener un archivo pdf, png, word, etc y una carpeta. Al compartir el mismo nombre y al querer abrir el archivo pdf u otro que se tenga.

20230909131337.png

Este es procesado dentro de la carpeta, lo cual conlleva a la ejecución de código si es que hay un fichero. Esto es aprovechado por un atacante para introducir código malicioso en dicha carpeta. 20230909131401.png

Como vemos el archivo document.pdf.cmd contiene el siguiente script, el cual podemos cambiar para ejecutar lo que nosotros queramos

Luego de entender esto, podemos crearnos nuestro propio script en Python o cambiar el contenido del archivo script.bat y introducir el código que deseamos que se ejecute.

  • Probaremos con:

Hacemos el mismo procedimiento para copiar el .rar a la maquina Windows

  • Iniciamos un servidor http con python3

  • Descargamos en la maquina victima

20230910231852.png

Nos ponemos a la escuchar traza ICMP con tcpdump

  • Ejecutamos

20230910231653.png
  • Recibimos los paquetes indicando que hay conexión y se logra ejecutar el código

20230910232145.png

Ahora podemos enviarnos una shell interactiva a nuestra maquina atacante.

20230910232755.png

oh sorpresa, que el mismo defender detecta esta amenaza y la bloquea, esto significa que podemos estar tranquilos o no?

20230910232919.png

El hecho de que el defender lo detectar no quiere decir que debes dejar la preocupación de lado, siempre ten cuidado de que archivos descargar, cual es su procedencia. Mantente informado de las vulnerabilidades que salen y si este afecta los dispositivos o aplicaciones que usas, para evitar ser una victima mas de los ciberdelincuentes.

Referencias:

Last updated