CVE-2021-43856: Stored XSS in non-image uploads in Requarks/wiki

Published Dec 27, 2021
·
Updated

Wiki.js is a wiki app built on Node.js. Wiki.js 2.5.263 and earlier is vulnerable to stored cross-site scripting through non-image file uploads for file types that can be viewed directly inline in the browser. By creating a malicious file which can execute inline JS when viewed in the browser (e.g. XML files), a malicious Wiki.js user may stage a stored cross-site scripting attack. This allows the attacker to execute malicious JavaScript when the file is viewed directly by other users. The file must be opened directly by the user and will not trigger directly in a normal Wiki.js page. A patch in version 2.5.264 fixes this vulnerability by adding an optional (enabled by default) force download flag to all non-image file types, preventing the file from being viewed inline in the browser. As a workaround, disable file upload for all non-trusted users. --- Thanks to @Haxatron for reporting this vulnerability. Initially reported via https://huntr.dev/bounties/266bff09-00d9-43ca-a4bb-bb540642811f/

Affected Software

1 affected component
Requarks Wiki.js<2.5.264

Event History

Dec 27, 2021
CVE Published
via MITRE·06:05 PM
Data Sourced
via MITRE·06:05 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·06:15 PM
RemedyDescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is CVE-2021-43856?

CVE-2021-43856 refers to a vulnerability in Wiki.js, a wiki app built on Node.js, that allows for stored cross-site scripting through non-image file uploads.

2

What is the severity of CVE-2021-43856?

The severity of CVE-2021-43856 is high, with a CVSS score of 5.4.

3

How can I fix CVE-2021-43856?

To fix CVE-2021-43856, it is recommended to update Wiki.js to version 2.5.264 or later.

4

What is the Common Weakness Enumeration (CWE) ID for CVE-2021-43856?

The Common Weakness Enumeration (CWE) ID for CVE-2021-43856 is CWE-79, which refers to Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting').

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203