Fallo en LibreOffice y OpenOffice permite ejecutar código con hojas de cálculo maliciosas sin aviso de macros

Una hoja de cálculo maliciosa puede hacer que LibreOffice y Apache OpenOffice ejecuten código del atacante en cuanto se abre el archivo, según han demostrado investigadores de seguridad. No hay una advertencia previa, como la que ambos programas muestran antes de ejecutar una macro.

El ataque solo funciona cuando la compatibilidad con Java del programa está habilitada. Hasta ahora, solo se ha mostrado como una prueba de concepto y no hay informes de su uso en ataques reales.

LibreOffice ya ha corregido la vulnerabilidad, que rastrea como CVE-2026-63277, en actualizaciones publicadas el 5 de octubre. Recomienda a los usuarios actualizar a la versión 26.2.5 o 26.8.0. Las versiones anteriores a esas están afectadas.

Apache OpenOffice no ha corregido el fallo equivalente, que rastrea como CVE-2026-59265. Todas las versiones hasta la actual 4.1.16 inclusive están afectadas, y el proyecto afirma que se espera una solución en la versión 4.1.17, que aún está en pruebas.

Hasta entonces, los usuarios de Apache OpenOffice pueden bloquear el ataque desactivando Java en la configuración del programa, o evitando abrir hojas de cálculo que no sean de confianza.

El ataque combina características que, por separado, funcionan según lo previsto. Una hoja de cálculo de LibreOffice o Apache OpenOffice Calc puede contener un "rango de base de datos", un bloque de celdas que extrae datos de una fuente externa y los actualiza por sí solo. Esa fuente externa puede ser un archivo de base de datos separado, llamado ODB, indicado por una dirección web escrita en la hoja de cálculo.

Cuando se abre la hoja de cálculo, el rango se actualiza y el programa descarga el ODB desde esa dirección web. El ODB puede indicar un controlador de base de datos Java, conocido como controlador JDBC, y señalar dónde se encuentra el código del controlador, que puede ser un archivo JAR, un paquete de código Java, o en un servidor remoto. El programa entonces descarga el JAR e inicia el controlador, que es el código del atacante, dentro del propio programa.

Cada una de estas funciones es normal. El problema de seguridad, según los investigadores, es que juntas alcanzan la ejecución de código sin pedir nunca al usuario que confíe en el documento, como sí hace el programa antes de ejecutar una macro.

En la prueba de concepto, el controlador simplemente abre la aplicación Calculadora, un sustituto inofensivo, pero la misma ruta puede ejecutar cualquier código Java que el atacante elija. Los investigadores probaron el ataque en Windows y Linux y afirman que no está ligado a un sistema operativo concreto.

En su demostración, los archivos maliciosos se encontraban en la misma máquina por comodidad. Los investigadores señalan que un ataque real colocaría el archivo de base de datos y el código en un servidor controlado por el atacante.

El fallo en LibreOffice fue reportado de forma independiente por Rick de Jager, del equipo de seguridad V12, y por Thomas Rinsma y Edoardo Geraci, de Codean Labs. Apache atribuye a Codean Labs el fallo equivalente en OpenOffice. El equipo V12 ha publicado una prueba de concepto para ambos programas, y Caolán McNamara, de Collabora Productivity, escribió la corrección para LibreOffice.

The Hacker News se ha puesto en contacto con The Document Foundation, que desarrolla LibreOffice, y con el proyecto Apache OpenOffice para obtener comentarios.

Cybersecurity
Cybersecurity

Deja una respuesta

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