CVE-2026-27899

WireGuard Portal (or wg-portal) is a web-based configuration portal for WireGuard server management. Prior to version 2.1.3, any authenticated non-admin user can become a full administrator by sending a single PUT request to their own user profile endpoint with `"IsAdmin": true` in the JSON body. After logging out and back in, the session picks up admin privileges from the database. When a user updates their own profile, the server parses the full JSON body into the user model, including the `IsAdmin` boolean field. A function responsible for preserving calculated or protected attributes pins certain fields to their database values (such as base model data, linked peer count, and authentication data), but it does not do this for `IsAdmin`. As a result, whatever value the client sends for `IsAdmin` is written directly to the database. After the exploit, the attacker has full admin access to the WireGuard VPN management portal. The problem was fixed in v2.1.3. The docker images for the tag 'latest' built from the master branch also include the fix.
References
Configurations

Configuration 1 (hide)

cpe:2.3:a:wgportal:wireguard_portal:*:*:*:*:*:*:*:*

History

02 Mar 2026, 18:52

Type Values Removed Values Added
Summary
  • (es) WireGuard Portal (o wg-portal) es un portal de configuración basado en web para la gestión de servidores WireGuard. Antes de la versión 2.1.3, cualquier usuario autenticado no administrador puede convertirse en un administrador completo enviando una única solicitud PUT a su propio endpoint de perfil de usuario con 'IsAdmin': true en el cuerpo JSON. Después de cerrar y volver a iniciar sesión, la sesión adquiere privilegios de administrador de la base de datos. Cuando un usuario actualiza su propio perfil, el servidor analiza el cuerpo JSON completo en el modelo de usuario, incluyendo el campo booleano IsAdmin. Una función responsable de preservar atributos calculados o protegidos fija ciertos campos a sus valores de base de datos (como datos del modelo base, recuento de pares vinculados y datos de autenticación), pero no lo hace para IsAdmin. Como resultado, cualquier valor que el cliente envíe para IsAdmin se escribe directamente en la base de datos. Después del exploit, el atacante tiene acceso de administrador completo al portal de gestión de VPN de WireGuard. El problema se solucionó en la v2.1.3. Las imágenes de docker para la etiqueta 'latest' construidas desde la rama master también incluyen la solución.
First Time Wgportal
Wgportal wireguard Portal
CPE cpe:2.3:a:wgportal:wireguard_portal:*:*:*:*:*:*:*:*
References () https://github.com/h44z/wg-portal/security/advisories/GHSA-5rmx-256w-8mj9 - () https://github.com/h44z/wg-portal/security/advisories/GHSA-5rmx-256w-8mj9 - Patch, Vendor Advisory

26 Feb 2026, 02:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-02-26 02:16

Updated : 2026-03-02 18:52


NVD link : CVE-2026-27899

Mitre link : CVE-2026-27899

CVE.ORG link : CVE-2026-27899


JSON object : View

Products Affected

wgportal

  • wireguard_portal
CWE
CWE-269

Improper Privilege Management

CWE-863

Incorrect Authorization