Skip to main content

CVE-2022-23654: CWE-287: Improper Authentication in Requarks wiki

Medium
Published: Tue Feb 22 2022 (02/22/2022, 20:05:11 UTC)
Source: CVE
Vendor/Project: Requarks
Product: wiki

Description

Wiki.js is a wiki app built on Node.js. In affected versions an authenticated user with write access on a restricted set of paths can update a page outside the allowed paths by specifying a different target page ID while keeping the path intact. The access control incorrectly check the path access against the user-provided values instead of the actual path associated to the page ID. Commit https://github.com/Requarks/wiki/commit/411802ec2f654bb5ed1126c307575b81e2361c6b fixes this vulnerability by checking access control on the path associated with the page ID instead of the user-provided value. When the path is different than the current value, a second access control check is then performed on the user-provided path before the move operation.

AI-Powered Analysis

AILast updated: 06/23/2025, 15:48:32 UTC

Technical Analysis

CVE-2022-23654 is an authentication bypass vulnerability affecting Wiki.js, a Node.js-based wiki application developed by Requarks. The flaw exists in versions prior to 2.5.276 and involves improper authentication checks related to page editing permissions. Specifically, an authenticated user with write access limited to certain restricted paths can exploit the vulnerability to update pages outside their authorized scope. This occurs because the access control mechanism validates permissions against user-supplied path values rather than the actual path associated with the target page ID. Consequently, by specifying a different page ID while retaining the original path parameter, an attacker can circumvent path-based restrictions and modify unauthorized pages. The vulnerability stems from CWE-287: Improper Authentication, where the system fails to correctly verify user privileges before allowing sensitive operations. The issue was addressed in a commit that changed the access control logic to verify permissions against the actual path linked to the page ID first, and then, if a path change is requested, perform a secondary access control check on the user-provided path before allowing page moves. No known exploits have been reported in the wild, and the vulnerability requires the attacker to be authenticated with write access on at least some restricted paths, limiting the initial attack surface. However, the flaw allows privilege escalation within the application by expanding the scope of pages a user can edit beyond their intended permissions.

Potential Impact

For European organizations using Wiki.js for internal documentation, knowledge management, or collaboration, this vulnerability poses a risk of unauthorized content modification. Attackers with limited write permissions could alter or deface pages outside their authorized scope, potentially leading to misinformation, data integrity issues, or disruption of business processes relying on accurate documentation. In regulated industries such as finance, healthcare, or government, unauthorized changes could violate compliance requirements or cause operational risks. Additionally, if Wiki.js is integrated with other systems or used as a source of truth for critical workflows, unauthorized edits could propagate errors or malicious content downstream. Although the vulnerability does not allow unauthenticated access, the requirement for some level of write access means insider threats or compromised user accounts could be leveraged to exploit this flaw. The absence of known active exploits reduces immediate risk but does not eliminate the potential for targeted attacks, especially in sectors with high-value intellectual property or sensitive information stored in wikis.

Mitigation Recommendations

European organizations should promptly upgrade Wiki.js installations to version 2.5.276 or later, where the vulnerability is fixed. Until upgrades can be applied, administrators should audit user permissions to ensure that write access is strictly limited to trusted users and minimal necessary paths. Implementing multi-factor authentication (MFA) for all users with write permissions can reduce the risk of account compromise. Monitoring and logging page edits with alerts on unusual modification patterns or edits outside typical user scopes can help detect exploitation attempts. Organizations should also consider isolating Wiki.js instances from public networks or restricting access via VPN or IP whitelisting to reduce exposure. Regularly reviewing and tightening access control policies within Wiki.js, including path-based restrictions, will help prevent privilege escalation. Finally, integrating Wiki.js with centralized identity and access management (IAM) solutions can improve oversight and enforce consistent authentication policies.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
GitHub_M
Date Reserved
2022-01-19T00:00:00.000Z
Cisa Enriched
true

Threat ID: 682d9842c4522896dcbf2612

Added to database: 5/21/2025, 9:09:22 AM

Last enriched: 6/23/2025, 3:48:32 PM

Last updated: 8/2/2025, 2:46:16 AM

Views: 14

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats