CVE-2023-38831
Last updated
Last updated
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.
Esquema del laboratorio
Si buscamos la vulnerabilidad en el navegador nos encontraremos con muchas que automatizan y la podemos usar.
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
Ahora, con python podemos levantar un servidor
desde la maquina windows descargamos el archivo .rar
Al ejecutar el archivo .rar
nos abre la calculadora
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.
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
Nos ponemos a la escuchar traza ICMP con tcpdump
Ejecutamos
Recibimos los paquetes indicando que hay conexión y se logra ejecutar el código
Ahora podemos enviarnos una shell interactiva a nuestra maquina atacante.
oh sorpresa, que el mismo defender detecta esta amenaza y la bloquea, esto significa que podemos estar tranquilos o no?
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.
Ejecutemos
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.