Security advisory
In Wiki.js before version 2.5.151, directory traversal outside of Wiki.js context is possible when a storage module with local asset cache fetching is enabled. A malicious user can potentially read any file on the file system by crafting a special URL that allows for directory traversal. This is only possible when a storage module implementing local asset cache (e.g Local File System or Git) is enabled and that no web application firewall solution (e.g. cloudflare) strips potentially malicious URLs. Commit 084dcd69d1591586ee4752101e675d5f0ac6dcdc fixes this vulnerability by sanitizing the path before it is passed on to the storage module. The sanitization step removes any directory traversal (e.g. `..` and `.`) sequences as well as invalid filesystem characters from the path. As a workaround, disable any storage module with local asset caching capabilities such as Local File System and Git.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2020-15236
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 10:52 UTC · Revision 1
Source evidence
In Wiki.js before version 2.5.151, directory traversal outside of Wiki.js context is possible when a storage module with local asset cache fetching is enabled. A malicious user can potentially read any file on the file system by crafting a special URL that allows for directory traversal. This is only possible when a storage module implementing local asset cache (e.g Local File System or Git) is enabled and that no web application firewall solution (e.g. cloudflare) strips potentially malicious URLs. Commit 084dcd69d1591586ee4752101e675d5f0ac6dcdc fixes this vulnerability by sanitizing the path before it is passed on to the storage module. The sanitization step removes any directory traversal (e.g. `..` and `.`) sequences as well as invalid filesystem characters from the path. As a workaround, disable any storage module with local asset caching capabilities such as Local File System and Git.
osv:CVE-2020-15236
Complete source record
{
"id": "7cad819e7694156326880db1664a9fb46a4744e43086440952b3a8eb78a5545e",
"url": "https://osv.dev/vulnerability/CVE-2020-15236",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2020-15236",
"summary": "In Wiki.js before version 2.5.151, directory traversal outside of Wiki.js context is possible when a storage module with local asset cache fetching is enabled. A malicious user can potentially read any file on the file system by crafting a special URL that allows for directory traversal. This is only possible when a storage module implementing local asset cache (e.g Local File System or Git) is enabled and that no web application firewall solution (e.g. cloudflare) strips potentially malicious URLs. Commit 084dcd69d1591586ee4752101e675d5f0ac6dcdc fixes this vulnerability by sanitizing the path before it is passed on to the storage module. The sanitization step removes any directory traversal (e.g. `..` and `.`) sequences as well as invalid filesystem characters from the path. As a workaround, disable any storage module with local asset caching capabilities such as Local File System and Git.",
"evidence": "osv:CVE-2020-15236",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2020-15236",
"aliases": [
"CVE-2020-15236",
"GHSA-whpv-5xg2-w527"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/requarks/wiki",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "084dcd69d1591586ee4752101e675d5f0ac6dcdc"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"fixed": "084dcd69d1591586ee4752101e675d5f0ac6dcdc"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"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-2020-15236.json"
}
}
],
"modified": "2026-10-20T10:51:53.170243040Z",
"provider": "osv",
"references": [
"https://github.com/Requarks/wiki/security/advisories/GHSA-whpv-5xg2-w527",
"https://github.com/Requarks/wiki/commit/084dcd69d1591586ee4752101e675d5f0ac6dcdc"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:a:requarks:wiki.js:*:*:*:*:*:*:*:*"
],
"vendor_product": "requarks:wiki.js",
"extracted_events": [
{
"range": [
{
"introduced": "2.5.80"
},
{
"fixed": "2.5.151"
}
],
"source": "CPE_RANGE"
}
]
},
{
"extracted_events": [
{
"range": [
{
"fixed": "2.5.151"
}
],
"source": "DESCRIPTION"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2020-15236",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 383084,
"published_at": "2020-10-05T15:15:12.047+00:00"
}