BlogWonderHowTo

Cómo: ejecutar código en un documento de Microsoft Word sin advertencias de seguridad

La ejecución de código en Microsoft Word es más fácil que nunca, gracias a investigación reciente realizado por Etienne Stalmans y Saif El-Sherei. Ejecutar código en MS Word puede ser complicado, en algunos casos requiere el uso de macros o la corrupción de la memoria. Afortunadamente, Microsoft tiene una función incorporada de la que podemos abusar para tener el mismo efecto. La mejor parte es que lo hace sin levantar ningún Control de cuentas del usuario advertencias de seguridad. Veamos cómo se hace.

El uso de documentos de Microsoft para entregar una carga útil es tan antiguo como el propio Word y, a lo largo de los años, se han explorado muchos vectores de ataque diferentes. Algunos ejemplos son macros, complementos, acciones y vinculación e incrustación de objetos (OLE). Sin embargo, todos estaban plagados de un problema, las alertas de seguridad.

Este es un ejemplo del tipo de advertencia de seguridad que aparece cuando se usa una macro. Imagen por código / null byte

¿No sería bueno si Microsoft tuviera la amabilidad de crearnos una “función” que nos permitiera sortear esas molestas alertas de seguridad? Por suerte para nosotros, lo hicieron, Intercambio de datos dinámico. Aunque no estaba destinado a eso, por supuesto.

¿Qué es el intercambio dinámico de datos?

Windows proporciona varios métodos para transferir datos entre aplicaciones. Un método consiste en utilizar el protocolo de intercambio dinámico de datos (DDE). El protocolo DDE es un conjunto de mensajes y pautas. Envía mensajes entre aplicaciones que comparten datos y utiliza memoria compartida para intercambiar datos entre aplicaciones. Las aplicaciones pueden utilizar el protocolo DDE para transferencias de datos únicas y para intercambios continuos en los que las aplicaciones se envían actualizaciones entre sí a medida que hay nuevos datos disponibles.

Para decirlo en términos simples, DDE ejecuta una aplicación y le envía datos. Podemos usarlo para abrir cualquier aplicación, incluido el símbolo del sistema, y ​​enviarle datos, o en nuestro caso, código.

Esto significa que podemos crear un documento de Word que ejecute código al abrirse. ¡El código que ejecutes depende de ti!

Puede usar esto para asustar a sus amigos como una simple broma, o puede usarlo para instalar una herramienta de acceso remoto como Pupy. Solo se necesitan unos segundos para modificar un documento de Word, así que veamos cómo se hace.

Paso 1: Abrir Word

Comience abriendo un nuevo documento de Word. Ahora, necesitamos hacer algo de ingeniería social. Por el contrario, si tiene acceso a la computadora del objetivo, puede abrir un documento reciente suyo que probablemente vuelva a abrir. Si lo hace, puede omitir el resto de este paso.

Si bien el usuario no recibirá ninguna advertencia de seguridad, todavía habrá dos ventanas emergentes cuando abra el documento. También necesitan decir que sí a ambos para que se ejecute el código. Un artículo anterior sobre la piratería de Word repasó algunos trucos de ingeniería social que podemos usar.

Este ataque de ingeniería social aprovecha el hecho de que el usuario puede ver el documento cuando aparece la ventana emergente. Esto nos permite poner algo en la parte superior del documento para que el documento parezca más legítimo para el usuario.

A continuación, se muestran dos ejemplos de documentos utilizados para que un usuario habilite macros. Nuestro ataque no requiere que las macros estén habilitadas, pero estos son excelentes ejemplos de cómo hacer que un documento parezca legítimo.

Imagen por código / null byte
Imagen por código / null byte

Ahora que tenemos algo de ingeniería social en su lugar, estamos listos para pasar a agregar un campo.

Paso 2: crear un campo

El campo contendrá el código que vamos a ejecutar, por lo que necesitamos encontrar un buen lugar para ello. Lo más importante a considerar aquí es si importa o no si el usuario encuentra su código.

Sin más inspección, todo lo que verán es “! Fin inesperado de la fórmula, “que podría utilizarse en el ataque de ingeniería social. Dependiendo de su situación, intente colocarlo en un lugar apropiado. Colocarlo al final del documento es una buena opción, o si es un documento más largo, enterrarlo en el medio en alguna parte.

Una vez que haya seleccionado su lugar, vaya a la parte superior izquierda y haga clic en la pestaña “Insertar” y luego busque “Partes rápidas” en el lado derecho de la barra, su ubicación exacta puede ser ligeramente diferente según la versión de Word en la que se encuentre. usando.

Luego haga clic en “Campo” y debería aparecer un cuadro emergente.

En la ventana emergente, asegúrese de que “= (Fórmula)” esté seleccionado y haga clic en “Aceptar”.

Paso 3: agregar código

Después del último paso, debería haber tenido “! Fin inesperado de la fórmula“aparecen dentro del documento. Ese es nuestro campo, pero para poner código en él, debemos alternarlo. Para hacerlo, haga clic con el botón derecho en el campo y luego haga clic en” Alternar códigos de campo “, lo que debería cambiar la apariencia del campo. .

Ahora debería ver algo como esto.

Reemplaza “= * MERGEFORMAT” con lo siguiente:

DDEAUTO c: \ windows \ system32 \ cmd.exe “”

Como probablemente pueda adivinar, DDEAUTO le está diciendo a Word que este es un campo DDE, la parte automática le dice que se ejecute al abrir.

Luego viene el camino que debe tomar, que nos permite dirigirlo a cualquier EP. La parte final, entre comillas, son los argumentos a pasar al ejecutable. Con fines de prueba, podemos pasar argumentos de cmd.exe para iniciar un calc.exe.

DDEAUTO c: \ windows \ system32 \ cmd.exe “/ k calc.exe”

Usará cmd.exe para iniciar calc.exe, pero puedes probarlo con algo un poco más entretenido. Lo siguiente abrirá Chrome a un video de gritos para darle a su víctima un buen miedo.

DDEAUTO c: \ windows \ system32 \ cmd.exe “/ k iniciar chrome –new-window http://akk.li/pics/anne.jpg

Al final, deberías tener algo parecido a esto.

Paso 4: guarde el archivo

Una vez que todo esté en su lugar, estamos listos para guardar el archivo. prensa control + S para guardar, luego guárdelo en cualquier lugar como un archivo “.docx”, que es el estándar para Word.

Cuando se abre, el usuario deberá decir sí a dos ventanas emergentes. El primero se trata de actualizar los enlaces del documento, lo que no debería sorprender al usuario medio como sospechoso.

El segundo podría llamar la atención de los usuarios más preocupados por la seguridad, ya que les pregunta sobre cómo iniciar una aplicación.

Si todo va bien y el usuario dice que sí a ambos, entonces el código se ejecutará en este punto y su objetivo se asustará a sí mismo.

Defenderse contra el ataque

Hoy hemos visto una forma rápida y sencilla de hacer que el código se ejecute cuando se abre un documento de Word. Si bien esto no es único, lo especial de este ataque es que la palabra “seguridad” nunca se menciona, lo que permite una probabilidad mucho mayor de que un ataque de ingeniería social tenga éxito.

Si es un usuario de Windows, debe tener cuidado con estas y otras advertencias que pueden indicar que otro programa está intentando ejecutarse, o que un archivo está solicitando recursos externos o necesita permisos inusuales para ejecutarse. En todos estos casos, su reacción predeterminada a la aparición de una ventana como esta debería ser denegar el permiso.

Si bien en esta guía solo analizamos una prueba simple de pruebas de concepto, no requeriría mucha modificación para que esto sea muy peligroso. Todo esto sirve para recordarle que un solo desliz en la apertura de un documento de Word puede provocar un gran dolor de cabeza, o en este caso, un espantoso fantasma.

¡Gracias por leer! Si tiene alguna pregunta, puede preguntar aquí o en Twitter.

Imagen de portada de Hoid / Null Byte (imagen de portada original de Don Hankins/ Flickr); Capturas de pantalla por Hoid / Null Byte (a menos que se indique lo contrario)

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar