CVE-2026-27819

Vikunja is an open-source self-hosted task management platform. Prior to version 2.0.0, the restoreConfig function in vikunja/pkg/modules/dump/restore.go of the go-vikunja/vikunja repository fails to sanitize file paths within the provided ZIP archive. A maliciously crafted ZIP can bypass the intended extraction directory to overwrite arbitrary files on the host system. Additionally, we’ve discovered that a malformed archive triggers a runtime panic, crashing the process immediately after the database has been wiped permanently. The application trusts the metadata in the ZIP archive. It uses the Name attribute of the zip.File struct directly in os.OpenFile calls without validation, allowing files to be written outside the intended directory. The restoration logic assumes a specific directory structure within the ZIP. When provided with a "minimalist" malicious ZIP, the application fails to validate the length of slices derived from the archive contents. Specifically, at line 154, the code attempts to access an index of len(ms)-2 on an insufficiently populated slice, triggering a panic. Version 2.0.0 fixes the issue.
Configurations

Configuration 1 (hide)

cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:*

History

05 Mar 2026, 16:32

Type Values Removed Values Added
First Time Vikunja
Vikunja vikunja
References () https://github.com/go-vikunja/vikunja/security/advisories/GHSA-42wg-38gx-85rh - () https://github.com/go-vikunja/vikunja/security/advisories/GHSA-42wg-38gx-85rh - Vendor Advisory, Exploit
References () https://vikunja.io/changelog/vikunja-v2.0.0-was-released - () https://vikunja.io/changelog/vikunja-v2.0.0-was-released - Release Notes
CPE cpe:2.3:a:vikunja:vikunja:*:*:*:*:*:*:*:*

27 Feb 2026, 14:06

Type Values Removed Values Added
Summary
  • (es) Vikunja es una plataforma de gestión de tareas de código abierto y autoalojada. Antes de la versión 2.0.0, la función restoreConfig en vikunja/pkg/modules/dump/restore.go del repositorio go-vikunja/vikunja no logra sanear las rutas de archivo dentro del archivo ZIP proporcionado. Un ZIP creado maliciosamente puede eludir el directorio de extracción previsto para sobrescribir archivos arbitrarios en el sistema anfitrión. Además, hemos descubierto que un archivo malformado desencadena un pánico en tiempo de ejecución, bloqueando el proceso inmediatamente después de que la base de datos haya sido borrada permanentemente. La aplicación confía en los metadatos del archivo ZIP. Utiliza el atributo Name de la estructura zip.File directamente en las llamadas a os.OpenFile sin validación, permitiendo que los archivos se escriban fuera del directorio previsto. La lógica de restauración asume una estructura de directorio específica dentro del ZIP. Cuando se le proporciona un ZIP malicioso 'minimalista', la aplicación no logra validar la longitud de las 'slices' derivadas del contenido del archivo. Específicamente, en la línea 154, el código intenta acceder a un índice de len(ms)-2 en una 'slice' insuficientemente poblada, desencadenando un pánico. La versión 2.0.0 corrige el problema.

25 Feb 2026, 22:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-02-25 22:16

Updated : 2026-03-05 16:32


NVD link : CVE-2026-27819

Mitre link : CVE-2026-27819

CVE.ORG link : CVE-2026-27819


JSON object : View

Products Affected

vikunja

  • vikunja
CWE
CWE-22

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

CWE-248

Uncaught Exception