Skip to content
Heist/ feed
Back to feed
High

Wiki.js: Privilege Escalation via Missing Group Validation in users.update

Type: advisorySources: OSV

Wiki.js is an open source wiki app built on Node.js. Prior to 2.5.313, the users.update GraphQL mutation accepts an arbitrary groups array and applies it directly to the database with no validation of the group IDs supplied. The resolver passes the caller's arguments straight to the model without any ownership check or restriction on which groups can be assigned. A user with manage:users — a permission typically delegated to wiki moderators for account management — can set groups:[1] on their own account to self-assign to the Administrators group. After re-authentication, the fresh JWT carries manage:system, granting full site administrator access in a single mutation call. This vulnerability is fixed in 2.5.313.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-44224
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 07:34 UTC · Revision 1

Source evidence

Wiki.js: Privilege Escalation via Missing Group Validation in users.update

core-osv · Original source

Published 12 May 2026, 20:33 UTC

Wiki.js is an open source wiki app built on Node.js. Prior to 2.5.313, the users.update GraphQL mutation accepts an arbitrary groups array and applies it directly to the database with no validation of the group IDs supplied. The resolver passes the caller's arguments straight to the model without any ownership check or restriction on which groups can be assigned. A user with manage:users — a permission typically delegated to wiki moderators for account management — can set groups:[1] on their own account to self-assign to the Administrators group. After re-authentication, the fresh JWT carries manage:system, granting full site administrator access in a single mutation call. This vulnerability is fixed in 2.5.313.

osv:CVE-2026-44224
Complete source record
{
  "id": "d9ca78eab97e5742508f82eea90f1d54910ff6d5251b1da91f50263f78d5b7ba",
  "url": "https://osv.dev/vulnerability/CVE-2026-44224",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Wiki.js: Privilege Escalation via Missing Group Validation in users.update",
    "summary": "Wiki.js is an open source wiki app built on Node.js. Prior to 2.5.313, the users.update GraphQL mutation accepts an arbitrary groups array and applies it directly to the database with no validation of the group IDs supplied. The resolver passes the caller's arguments straight to the model without any ownership check or restriction on which groups can be assigned. A user with manage:users — a permission typically delegated to wiki moderators for account management — can set groups:[1] on their own account to self-assign to the Administrators group. After re-authentication, the fresh JWT carries manage:system, granting full site administrator access in a single mutation call. This vulnerability is fixed in 2.5.313.",
    "evidence": "osv:CVE-2026-44224",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-44224",
      "aliases": [
        "CVE-2026-44224",
        "GHSA-cq3g-mwrg-v2rv"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/requarks/wiki",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "34cd445a462fc77d70a2641ae35ee6ed2d884ff7"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.5.313"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "cpe": "cpe:2.3:a:requarks:wiki.js:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "2.5.313"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2.5.312",
            "v2.5.311",
            "v2.5.310",
            "v2.5.309",
            "v2.5.308",
            "v2.5.307",
            "v2.5.306",
            "v2.5.305",
            "v2.5.304",
            "v2.5.303",
            "v2.5.302",
            "v2.5.301",
            "v2.5.300",
            "v2.5.299",
            "v2.5.298",
            "v2.5.297",
            "v2.5.296",
            "v2.5.295",
            "v2.5.294",
            "v2.5.293",
            "v2.5.292",
            "v2.5.291",
            "v2.5.290",
            "v2.5.289",
            "v2.5.288",
            "v2.5.287",
            "v2.5.286",
            "v2.5.285",
            "v2.5.284",
            "v2.5.283",
            "v2.5.282",
            "v2.5.281",
            "v2.5.280",
            "v2.5.279",
            "v2.5.278",
            "v2.5.277",
            "v2.5.276",
            "v2.5.275",
            "2.5.274",
            "2.5.272",
            "2.5.268",
            "2.5.264",
            "2.5.260",
            "2.5.255",
            "2.5.254",
            "2.5.219",
            "2.5.214",
            "2.5.201",
            "2.5.197",
            "2.5.191",
            "2.5.170",
            "2.5.159",
            "2.5.144",
            "2.5.136",
            "2.5.132",
            "2.5.126",
            "2.5.121",
            "2.5.117",
            "2.5.105",
            "2.4.107",
            "2.4.105",
            "2.4.75",
            "2.3.77",
            "2.3.72",
            "2.3.71",
            "2.2.51",
            "2.2.50",
            "2.1.113",
            "2.0.12",
            "2.0.1",
            "2.0.0-rc.17",
            "2.0.0-rc.1",
            "2.0.0-beta.303",
            "2.0.0-beta.275",
            "2.0.0-beta.268",
            "2.0.0-beta.267",
            "2.0.0-beta.241",
            "2.0.0-beta.230",
            "2.0.0-beta.208",
            "2.0.0-beta.203",
            "2.0.0-beta.180",
            "2.0.0-beta.174",
            "2.0.0-beta.148",
            "2.0.0-beta.147",
            "2.0.0-beta.115",
            "2.0.0-beta.91",
            "2.0.0-beta.84",
            "2.0.0-beta.68",
            "2.0.0-beta.42",
            "2.0.0-beta.11",
            "v1.0.6",
            "v1.0.5",
            "v1.0.4",
            "v1.0.3",
            "v1.0.0-beta.13",
            "v1.0.0-beta.12",
            "v1.0.0-beta.11",
            "v1.0.0-beta.10",
            "v1.0.0-beta.9",
            "v1.0.0-beta.8",
            "v1.0.0-beta.7",
            "v1.0.0-beta.6",
            "v1.0-beta.5",
            "v1.0-beta.4",
            "v1.0-beta.3",
            "v1.0-beta.2",
            "v1.0-beta.1",
            "v1.0-alpha.7",
            "v1.0-alpha.6",
            "v1.0-alpha.5",
            "v1.0-alpha.4",
            "v1.0-alpha.3",
            "v1.0-alpha.2",
            "v1.0-alpha.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-44224.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:26.603772116Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/44xxx/CVE-2026-44224.json",
        "https://github.com/requarks/wiki/security/advisories/GHSA-cq3g-mwrg-v2rv",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-44224"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-269"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/44xxx/CVE-2026-44224.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-44224",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 493373,
  "published_at": "2026-05-12T20:33:53.046+00:00"
}