Skip to main content

Wiki.js CVE-2026-92776

| EUVDEUVD-2026-81040 HIGH
Incorrect Authorization (CWE-863)
2026-09-16 VulnCheck GHSA-mxgr-89mh-cjg6
8.6
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege user with folder grant
  2. Delivery
    Enumerate pages sharing allowed path prefix
  3. Exploit
    Request page outside authorized segment
  4. Execution
    Bypass prefix-matching permission rule
  5. Impact
    Read and modify unauthorized pages

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a valid authenticated Wiki.js account (PR:L) that has been granted access to at least one folder via a page permission rule; the target unauthorized pages must share a literal path prefix with an authorized folder path (e.g. access to '/docs' exposing '/docs-internal'). No user interaction and no special server configuration are needed - the flawed prefix matching in the START/END page-rule engine is default behavior in all versions through 2.5.314. The primary limiting factor is that the attacker must already hold an account with some folder grant, so purely anonymous/unauthenticated users cannot exploit it.

Impact

This is a genuine authorization bypass (CWE-863) with meaningful risk despite requiring authentication. The vendor CVSS 4.0 vector (8.6, AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N) is internally consistent with the description: a low-privileged authenticated user who has been granted access to any folder can read and modify unrelated pages that merely share a literal path prefix, because the rule engine matches START/END rules without enforcing path-segment boundaries. VC:H/VI:H are justified (arbitrary read and write of unauthorized wiki content), while VA:N is correct since availability is unaffected. Publicly available exploit code exists (documented by VulnCheck / geo-chen writeup), which raises practical risk, but there is no CISA KEV listing and no EPSS score provided, so this reflects a disclosed-and-documented flaw rather than confirmed mass exploitation. The PR:L requirement is the key limiter - an attacker needs a valid Wiki.js account with at least some folder grant - so this is primarily a privilege-escalation / lateral-access issue within an already-authenticated user base rather than a remote-unauthenticated compromise. Note the input Tag 'Authentication Bypass' is inaccurate: CWE-863 and the described behavior are an authorization (access-control) failure, not authentication bypass.

Exploit ScenarioDerived

An authenticated Wiki.js user who is legitimately granted access to a folder such as '/team' discovers that the permission engine also matches '/team-secret' or '/teamwork' because it only checks for a literal string prefix, not a path-segment boundary. Using the publicly available exploit technique, the user reads and edits sensitive pages in those sibling paths that they were never authorized to touch. Exploitation is low-complexity over the network but requires a valid low-privilege account.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
1 PoC candidate (unverified) No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 16, 2026

Authorization bypass in Wiki.js through 2.5.314 allows an authenticated user who has been granted access to at least one folder to read and modify unrelated pages whose paths share a literal prefix with that folder (for example, access to '/docs' also exposes '/docs-internal'). The flaw lies in the START/END page-rule engine, which matches path prefixes without requiring a path-segment boundary. Publicly available exploit code exists; no confirmed active exploitation (CISA KEV) at time of analysis. No vendor-released patch version is identified in the available data, and the assessed CVSS 3.1 base score is 8.1 (High).

RemediationAI

No vendor-released patch version is identified in the available data; monitor the Wiki.js repository and the VulnCheck advisory (https://www.vulncheck.com/advisories/wiki-js-through-2.5.314-path-prefix-matching-authorization-bypass) for an official fix. Until then, audit and adjust page permission rules: define folder grants with a trailing path separator where the rule engine permits it (for example, use '/docs/' instead of '/docs' so '/docs-internal' does not match), and test that the adjusted rule still grants intended access to the folder root and nested pages. This workaround may change which pages are visible and could break legitimate access, so validate in a staging environment first. Review all existing rules for literal-prefix collisions and remove overbroad grants. Restrict who can create accounts or receive folder-level permissions, and monitor wiki access logs for requests to page paths that share prefixes with authorized folders. If the wiki is internet-facing, consider placing it behind an authenticated reverse proxy or VPN to reduce the attack surface, though this does not fix the underlying authorization flaw.

Affected VersionsENISA

Wiki.js 0 ≤2.5.314

Affected Packages

euvd wiki_js no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Wiki.js is a Node.js/JavaScript wiki platform by Requarks. Its authorization model uses page permission rules that can include START and END path patterns to grant or deny access to folders. In versions through 2.5.314, the rule engine in server/core/auth.js (lines 252-263) compares rule patterns to page paths using literal prefix matching without checking for a path-separator boundary after the matched prefix. This is a CWE-863 (Incorrect Authorization) condition: a rule intended to cover only '/docs' also matches '/docs-internal', '/docs-secret', etc. Because the permission engine is enabled by default and requires no special configuration, any authenticated user with a folder grant can exploit the mismatch. The CPE cpe:2.3:a:requarks:wiki.js:*:*:*:*:*:*:*:* confirms all tracked Wiki.js releases are potentially affected; ENISA EUVD lists 0 through 2.5.314. The vulnerability is remote (AV:N), low complexity (AC:L), requires low privileges (PR:L), no user interaction (UI:N), with high confidentiality and integrity impact but no availability impact.

Know when Wiki Js gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 8.1 HIGH

Network-reachable web app, low complexity, but requires a low-privilege authenticated account with a folder grant (PR:L); grants unauthorized read and write (C:H/I:H) with no availability impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Wiki.js through 2.5.314 fails to require path separators when matching START and END page rules, allowing attackers to access pages sharing a prefix with authorized folders. Users granted access to a folder can read and modify unrelated pages with matching prefixes, bypassing intended access controls.

Technical POC Analysis

CWE-863 (Incorrect Authorization) in Wiki.js's page-rule engine.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

Wiki.js deployments at or below version 2.5.314 are exposed to an access-control flaw in the page-rule engine that lets users with folder-level access reach content outside their authorized area - for example, a grant scoped to '/docs' also exposes '/docs-internal'. Because both confidentiality and integrity are affected, internal documentation, runbooks, and any sensitive material stored in similarly named paths could be read or altered by people who were never intended to see it, undermining the integrity of the knowledge base that teams rely on. With publicly available exploit code circulating and no vendor patch identified, leadership should treat remediation as time-sensitive and expect that any Wiki.js instance handling restricted content is at risk.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: rename or restructure folders so no authorized folder path is a literal prefix of any restricted path; consolidate sensitive content into a separate Wiki.js instance or distinct top-level namespace; temporarily revoke folder-level grants adjacent to sensitive prefixes; restrict Wiki.js access to trusted networks or VPN and require strong authentication; add reverse-proxy or WAF rules that reject path requests exploiting prefix matching; enable logging and alerting on anomalous cross-folder page reads; maintain and test clean backups of wiki content to support integrity recovery.

Threat Intelligence Overview

EPSS Score
0.2%
Top 83% exploitable
Prevalence
Medium
popular open-source self-hosted wiki, common but not ubiquitous infrastructure
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

63
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2022-1681 HIGH POC
7.2 May 12

Authentication Bypass Using an Alternate Path or Channel in GitHub repository requarks/wiki prior to 2.5.281. Rated high

CVE-2026-92775 HIGH POC
7.1 Sep 16

Server-side request forgery in Wiki.js through 2.5.314 lets an authenticated user who holds page-editing permissions for

CVE-2021-25993 MEDIUM POC
5.4 Dec 29

In Requarks wiki.js, versions 2.0.0-beta.147 to 2.5.255 are affected by Stored XSS vulnerability, where a low privileged

CVE-2021-43856 MEDIUM POC
5.4 Dec 27

Wiki.js is a wiki app built on Node.js. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, lo

CVE-2021-43855 MEDIUM POC
5.4 Dec 27

Wiki.js is a wiki app built on node.js. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, lo

CVE-2021-21383 MEDIUM POC
5.4 Mar 18

Wiki.js an open-source wiki app built on Node.js. Rated medium severity (CVSS 5.4), this vulnerability is remotely explo

CVE-2026-92774 MEDIUM POC
5.3 Sep 16

Tag-based page access restrictions in Wiki.js through 2.5.314 are bypassed because several GraphQL resolvers return page

CVE-2021-43800 HIGH
7.5 Dec 06

Wiki.js is a wiki app built on Node.js. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no a

CVE-2020-15236 HIGH
7.5 Oct 05

In Wiki.js before version 2.5.151, directory traversal outside of Wiki.js context is possible when a storage module with

CVE-2022-23654 MEDIUM
6.5 Feb 22

Wiki.js is a wiki app built on Node.js. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploitable, lo

CVE-2020-4052 MEDIUM
6.1 Jun 16

In Wiki.js before 2.4.107, there is a stored cross-site scripting through template injection. Rated medium severity (CVS

CVE-2021-43842 MEDIUM
5.4 Dec 20

Wiki.js is a wiki app built on Node.js. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, lo

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy