go-vikunja hasta 2.1.x escalada de privilegios

CVSS Puntuación meta temporalPrecio actual del exploit (≈)Puntuación de interés CTI
7.4$0-$5k0.00

Resumeninformación

Una vulnerabilidad fue encontrada en go-vikunja vikunja hasta 2.1.x y clasificada como crítica. Se ve afectada una función desconocida. La manipulación conduce a escalada de privilegios. Esta vulnerabilidad se registra como CVE-2026-33336. El ataque se puede efectuar a través de la red. Ningún exploit está disponible. Se sugiere actualizar el componente afectado.

Detallesinformación

Una vulnerabilidad ha sido encontrada en go-vikunja vikunja hasta 2.1.x y clasificada como crítica. Una función desconocida es afectada por esta vulnerabilidad. Por la manipulación de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios. Esto tiene repercusión sobre la confidencialidad, integridad y disponibilidad. CVE resume:

Vikunja es una plataforma de gestión de tareas de código abierto y autoalojada. Desde la versión 0.21.0 hasta la versión 2.2.0, el envoltorio Electron de Vikunja Desktop habilita `nodeIntegration` en la ventana principal del navegador (BrowserWindow) y no restringe las navegaciones dentro de la misma ventana. Un atacante que pueda colocar un enlace en contenido generado por el usuario (descripciones de tareas, comentarios, descripciones de proyectos) puede hacer que BrowserWindow navegue a un origen controlado por el atacante, donde JavaScript se ejecuta con acceso completo a Node.js, lo que da lugar a la ejecución de código arbitrario en el equipo de la víctima. La versión 2.2.0 corrige el problema. ## Causa raíz Dos errores de configuración se combinan para crear esta vulnerabilidad: 1. **`nodeIntegration: true`** está establecido en las preferencias web de `BrowserWindow` (`desktop/main.js:14-16`), lo que otorga a cualquier página cargada en el renderizador acceso completo a las API de Node.js (`require`, `child_process`, `fs`, etc.). 2. **No hay ningún controlador `will-navigate` o `will-redirect`** registrado en `webContents`. El `setWindowOpenHandler` existente (`desktop/main.js:19-23`) solo intercepta las llamadas a `window.open()` (solicitudes de nuevas ventanas). **No** intercepta las navegaciones dentro de la misma ventana provocadas por: - Enlaces `<a href="https://..." rel="nofollow">` (sin `target=«_blank»`) - Asignaciones de `window.location` - Redireccionamientos HTTP - Etiquetas `` ## Escenario de ataque 1. El atacante es un usuario normal en la misma instancia de Vikunja (por ejemplo, un miembro de un proyecto compartido). 2. El atacante crea o edita la descripción de un proyecto o de una tarea que contiene un enlace HTML estándar, por ejemplo: `</a><a href="https://evil.example/exploit" rel="nofollow">Haga clic aquí para ver las especificaciones de diseño actualizadas</a>` 3. La interfaz de Vikunja muestra este enlace. El proceso de sanitización de DOMPurify lo permite correctamente, ya que se trata de una etiqueta de anclaje legítima y no de una inyección de código. Ejemplo de ruta de renderizado: `frontend/src/views/project/ProjectInfo.vue` utiliza `v-html` con salida sanitizada por DOMPurify. 4. La víctima utiliza Vikunja Desktop y hace clic en el enlace. 5. Como no existe ningún controlador `will-navigate`, BrowserWindow navega a `https://evil.example/exploit` en el mismo proceso de renderizado. 6. La página del atacante se ejecuta ahora en un contexto con `nodeIntegration: true` y ejecuta: `require(“child_process”).exec(“id &gt; /tmp/pwned”);` 7. Se ejecutan comandos arbitrarios como usuario del sistema operativo de la víctima. ## Impacto Ejecución remota completa de código en el escritorio de la víctima. El atacante puede leer/escribir archivos arbitrarios, ejecutar comandos arbitrarios, instalar malware o puertas traseras, y sustraer credenciales y datos confidenciales. No se requiere ninguna vulnerabilidad XSS: basta con un hipervínculo normal aprobado por el sanitizador. ## Prueba de concepto 1. Configura una instancia de Vikunja con dos usuarios que compartan un proyecto. 2. Como usuario atacante, edita la descripción del proyecto para incluir: `<a href="https://attacker.example/poc.html" rel="nofollow">Notas de la reunión</a>` 3. Aloja el archivo poc.html con: `` 4. Como víctima, abre el proyecto en Vikunja Desktop y haz clic en el enlace. 5. Se ejecuta calc.exe (o cualquier otro comando) en el equipo de la víctima. ## Créditos Esta vulnerabilidad se detectó utilizando [GitHub Security Lab Taskflows](https://github.com/GitHubSecurityLab/seclab-taskflows).

El advisory puede ser descargado de github.com. La vulnerabilidad es identificada como CVE-2026-33336. Es fácil de explotar. El ataque puede ser realizado a través de la red. La explotación no requiere ninguna forma de autentificación. No se conoce los detalles técnicos ni hay ningún exploit disponible.

Una actualización a la versión 2.2.0 elimina esta vulnerabilidad. La actualización se puede descargar de vikunja.io.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Productoinformación

Proveedor

Nombre

Versión

Sitio web

CPE 2.3información

CPE 2.2información

CVSSv4información

VulDB Vector: 🔒
VulDB Confiabilidad: 🔍

CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒

CVSSv3información

VulDB Puntuación meta base: 7.6
VulDB Puntuación meta temporal: 7.4

VulDB Puntuación base: 6.3
VulDB Puntuación temporal: 6.0
VulDB Vector: 🔒
VulDB Confiabilidad: 🔍

NVD Puntuación base: 8.8
NVD Vector: 🔒

CVSSv2información

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplejidadAutenticaciónConfidencialidadIntegridadDisponibilidad
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear

VulDB Puntuación base: 🔒
VulDB Puntuación temporal: 🔒
VulDB Confiabilidad: 🔍

Explotacióninformación

Clase: Escalada de privilegios
CWE: CWE-94 / CWE-74 / CWE-707
CAPEC: 🔒
ATT&CK: 🔒

Físico: No
Local: No
Remoto: Sí

Disponibilidad: 🔒
Estado: No está definido

EPSS Score: 🔒
EPSS Percentile: 🔒

Predicción de precios: 🔍
Estimación del precio actual: 🔒

0-DayDesbloquearDesbloquearDesbloquearDesbloquear
HoyDesbloquearDesbloquearDesbloquearDesbloquear

Inteligencia de amenazasinformación

Interés: 🔍
Actores activos: 🔍
Grupos APT activos: 🔍

Contramedidasinformación

Recomendación: Actualización
Estado: 🔍

Hora de 0 días: 🔒

Actualización: vikunja 2.2.0

Línea de tiempoinformación

2026-03-18 CVE asignado
2026-03-24 +6 días Aviso publicado
2026-03-24 +0 días Entrada de VulDB creada
2026-03-28 +4 días Última actualización de VulDB

Fuentesinformación

Producto: github.com

Aviso: GHSA-83w9-9jf6-88vf
Estado: Confirmado

CVE: CVE-2026-33336 (🔒)
GCVE (CVE): GCVE-0-2026-33336
GCVE (VulDB): GCVE-100-352802

Artículoinformación

Fecha de creación: 2026-03-24 17:29
Actualizado: 2026-03-28 22:32
Cambios: 2026-03-24 17:29 (68), 2026-03-28 22:32 (13)
Completo: 🔍
Cache ID: 216::103

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Discusión

Sin comentarios aún. Idiomas: es + pt + en.

Por favor, inicie sesión para comentar.

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!