WireGuard Portal is Vulnerable to Privilege Escalation via User Self-Update to Admin Level
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. Tested against wg-portal v2.1.2 (Docker image wgportal/wg-portal:v2).