Una aplicación HTML ( HTA ) es un programa de Microsoft Windows cuyo código fuente consta de HTML , HTML dinámico y uno o más lenguajes de scripting compatibles con Internet Explorer , como VBScript o JScript . HTML se utiliza para generar la interfaz de usuario y el lenguaje de scripting para la lógica del programa. Una HTA se ejecuta sin las restricciones del modelo de seguridad del navegador web; de hecho, se ejecuta como una aplicación totalmente confiable. [ 1 ]
La extensión de archivo habitual de un HTA es .hta.
La capacidad de ejecutar HTA se introdujo en Microsoft Windows en 1999, junto con el lanzamiento de Internet Explorer 5. [ 2 ] El 9 de diciembre de 2003, esta tecnología fue patentada . [ 3 ] [ 4 ]
Usos
Las HTAs ofrecen al desarrollador las características de HTML junto con las ventajas de los lenguajes de scripting. Son populares entre los administradores de sistemas de Microsoft, quienes las utilizan para la administración de sistemas, desde prototipos hasta aplicaciones a gran escala, especialmente donde la flexibilidad y la velocidad de desarrollo son fundamentales. [ 5 ]
Ambiente
Ejecución

mshta.exeUn HTA se ejecuta mediante el programa mshta.exeo, alternativamente, haciendo doble clic en un .htaarchivo. Este programa se instala junto con Internet Explorer. mshta.exeEjecuta el HTA instanciando el motor de renderizado de Internet Explorer , así como cualquier motor de lenguaje necesario (como vbscript .dll).
Un HTA se trata como cualquier archivo ejecutable con extensión .exe. Cuando se ejecuta a través de mshta.exe(o si se hace doble clic en el icono del archivo), se ejecuta inmediatamente. Cuando se ejecuta de forma remota a través del navegador, se le pregunta al usuario una sola vez, antes de que se descargue el HTA, si desea guardar o ejecutar la aplicación; si se guarda, se puede ejecutar bajo demanda. [ 5 ]
Por defecto, los HTA se renderizan según el "contenido del modo estándar en el modo estándar de IE7 y el contenido del modo peculiar en el modo peculiar de IE5", pero esto se puede modificar mediante X-UA-Compatibleencabezados. [ 5 ] Si bien Internet Explorer 6 y versiones posteriores habilitan los estilos visuales en los controles de forma predeterminada, los HTA deben habilitarlos explícitamente estableciendo el MSThemeCompatibleencabezado en yes. [ 6 ]
Las HTA dependen del motor de navegador Trident (MSHTML), utilizado por Internet Explorer, pero no dependen de la aplicación Internet Explorer en sí. Si un usuario desinstala Internet Explorer de Windows mediante el Panel de control, el motor MSHTML permanece y las HTA siguen funcionando. Las HTA siguen funcionando en Windows 11 .
Las HTA son totalmente compatibles y se ejecutan en modos equivalentes a las versiones 5 a 9 de Internet Explorer. Las versiones posteriores, como la 10 y la 11, también son compatibles con las HTA, aunque con algunas funciones menores desactivadas.
Consideraciones de seguridad
Cuando se ejecuta un archivo HTML normal, se limita al modelo de seguridad del navegador web . Esto significa que se limita a comunicarse dentro de la política del mismo origen , manipular el modelo de objetos de la página (como para validar formularios o crear efectos visuales) y leer o escribir cookies .
Por otro lado, un HTA se ejecuta en la zona de Máquina Local como una aplicación de plena confianza, con las medidas de seguridad de Bloqueo de Zona de Máquina Local deshabilitadas, y por lo tanto tiene más privilegios que un archivo HTML normal. Por ejemplo, un HTA puede ejecutar programas externos, crear, editar y eliminar archivos, y modificar entradas del registro . [ 7 ] [ 1 ] A pesar de esto, se ha observado que la consulta de Active Directory puede estar sujeta a errores de seguridad.
Desarrollo
Para personalizar la apariencia de un HTA, hta:applicationse introdujo una etiqueta opcional en la HEADsección. Esta etiqueta expone un conjunto de atributos que permiten controlar el estilo del borde, el icono del programa, etc., y puede ser utilizada por scripts para recuperar información como el argumento (línea de comandos) utilizado para iniciar el HTA. [ 8 ] De lo contrario, un HTA tiene el mismo formato que una página HTML.
Cualquier editor de texto puede utilizarse para crear un HTA. Los editores con funciones especiales para el desarrollo de aplicaciones HTML pueden obtenerse de Microsoft o de fuentes de terceros. [ 9 ] [ 10 ]
Un archivo HTML existente con extensión de archivo .htmo .htmlse puede abrir como un HTA simplemente cambiando la extensión a .hta. [ 1 ]
Uso por malware
mshta.exeLos programas HTA están documentados como una técnica de "ejecución de proxy binario del sistema" por el marco MITRE ATT&CK . [ 11 ] Los programas HTA se ejecutan con privilegios ilimitados en comparación con una página equivalente cargada en Internet Explorer, incluyendo la capacidad de instanciar controles ActiveX no marcados como "seguros para scripts". [ 7 ] [ 12 ] Esto hace que los HTA sean valiosos en ataques de ingeniería social . [ 13 ] [ 14 ]
Un HTA en particular, denominado 4chan.hta ( detectado por los antivirus como JS/Chafpin.gen), fue ampliamente distribuido por usuarios del foro de imágenes 4chan como una imagen esteganográfica . Se instruía al usuario para que descargara esta imagen como un archivo HTA. Al ejecutarse, provocaba que el ordenador enviara automáticamente spam al sitio web (evadiendo el CAPTCHA de 4chan en el proceso) con variantes alternativas de sí mismo. Se informó que ataques similares se habían realizado anteriormente solicitando al usuario que guardara el archivo como un archivo .js . [ 15 ]
Descubierto por primera vez en octubre de 2023, el mshta.exeprograma ha sido utilizado por la campaña de malware ClickFix , en la que el usuario cree estar resolviendo un CAPTCHA al ejecutar un comando en el cuadro de diálogo Ejecutar . mshta.exeAcepta una URL remota como argumento, lo que permite que la ejecución inicial del malware comience en el entorno HTA. El malware descarga y ejecuta silenciosamente una carga útil, mientras que para el usuario aparece como un CAPTCHA genuino. [ 16 ]
El malware basado en HTA se puede mitigar deshabilitándolo mshta.exea través de la Política de grupo . [ 7 ]
Ejemplo
Este es un ejemplo de "Hola Mundo" como aplicación HTML.
< HTML > < HEAD > < HTA:APPLICATION ID = "HelloExample" BORDER = "bold" BORDERSTYLE = "complex" /> < TITLE > HTA - Hola Mundo </ TITLE > </ HEAD > < BODY > < H2 > HTA - Hola Mundo </ H2 > </ BODY > </ HTML >Véase también
- Adobe AIR
- Programación activa
- Apache Cordova
- Marco de trabajo integrado de Chromium
- Electron (marco de software)
- Firefox OS
- React Native
- Aplicaciones de navegador XAML (XBAP)
- XUL y XULRunner : un lenguaje y un entorno para aplicaciones multiplataforma de Mozilla que se asemeja al mecanismo de las aplicaciones HTML.
- Host de scripts de Windows
Referencias
- 1 2 3 Andersen, Starr; Abella, Vincent (17 de marzo de 2004). "Cambios en la funcionalidad de Microsoft Windows XP Service Pack 2" . Microsoft.com . Recuperado el 6 de julio de 2026 .
- ↑ "Cómo especificar archivos HTC/HTA como HTML en Visual InterDev 6.0" . Soporte técnico de Microsoft . 11 de mayo de 2006. Archivado del original el 23 de octubre de 2012. Consultado el 6 de julio de 2026 .
- ↑ US6662341B1 , Cooper, Phillip R.; Kohnfelder, Loren M. y Chavez, Roderick A., "Método y aparato para escribir una aplicación de Windows en HTML", publicado el 9 de diciembre de 2003
- ↑ Festa, Paul (10 de diciembre de 2003). "Microsoft gana patente de aplicación HTML" . CNET . Archivado del original el 10 de marzo de 2016. Consultado el 10 de enero de 2016 .
- 1 2 3 "Introducción a las aplicaciones HTML (HTA)" . Microsoft Learn . 11 de junio de 2013. Consultado el 24 de junio de 2016 .
- ↑ "Estilo de HtmlBox" . Robert McNeel & Associates . 14 de agosto de 2020. Consultado el 6 de julio de 2026 .
- 1 2 3 Lawrence, Eric (20 de mayo de 2024). "Técnicas de ataque: descargas de scripts de confianza total" . texto/plano . Recuperado el 6 de julio de 2026 .
- ↑ "HTA:APPLICATION Object" . Microsoft Learn . 11 de junio de 2013. Consultado el 6 de julio de 2026 .
- ↑ "Descargar HTA Helpomatic desde el Centro de descargas oficial de Microsoft" . Microsoft.com . Archivado del original el 21/11/2015 . Consultado el 06/07/2026 .
- ↑ "VbsEdit es un editor de VBScript y Javascript" . VbsEdit . Consultado el 6 de julio de 2026 .
- ↑ "Ejecución de proxy binario del sistema: Mshta, subtécnica T1218.005" . MITRE ATT&CK . 12 de mayo de 2026. Consultado el 6 de julio de 2026 .
- ↑ "¿Cómo puedo iniciar una aplicación desde un HTA?" . ¡Hola, experto en scripts! . 31 de octubre de 2005 . Consultado el 6 de julio de 2026 .
- ↑ "Spora Ransomware Dropper utiliza HTA para infectar el sistema" . VMRay . 17 de enero de 2017. Consultado el 22 de diciembre de 2018 .
- ↑ Brooks, Ryan (1 de junio de 2017). "8 virus ransomware más aterradores" . Blog de Netwrix . Archivado del original el 5 de julio de 2017. Consultado el 22 de diciembre de 2018 .
- ↑ Constantin, Lucian (10 de agosto de 2010). "El script de inundación de 4chan regresa con un nuevo truco de ingeniería social" . Softpedia . Consultado el 9 de noviembre de 2021 .
- ↑ "Piensa antes de hacer clic (en ClickFix): Análisis de la técnica de ingeniería social ClickFix" . Blog de seguridad de Microsoft . 21 de agosto de 2025. Consultado el 6 de julio de 2026 .
Enlaces externos
- El Centro de Guiones
- Aprende sobre la programación de scripts para aplicaciones HTML (HTA).
- Elemento HTA:APLICACIÓN
- HTML
- Internet Explorer
- lenguajes de marcado de interfaz de usuario
- Motores de widgets