Vulnerability Description
Outline is a service that allows for collaborative documentation. Prior to 1.7.0, ZipHelper.extract computes the extraction path for each entry by passing a full filesystem path through trimFileAndExt, a filename helper that calls path.basename on its input when truncating. When a zip entry's nested path is long enough to push the joined filesystem path over MAX_PATH_LENGTH (4096 bytes), trimFileAndExt silently drops all directory components and returns a bare filename. fs.createWriteStream then opens the file relative to the process working directory instead of inside the extraction sandbox, and the escaped file persists after import cleanup because cleanupExtractedData only removes the temporary extraction directory. This vulnerability is fixed in 1.7.0.
CVSS Score
HIGH
Related Weaknesses (CWE)
References
- https://github.com/outline/outline/security/advisories/GHSA-hw32-2v7j-mgqc
- https://github.com/outline/outline/security/advisories/GHSA-hw32-2v7j-mgqc
FAQ
What is CVE-2026-43888?
CVE-2026-43888 is a vulnerability with a CVSS score of 8.7 (HIGH). Outline is a service that allows for collaborative documentation. Prior to 1.7.0, ZipHelper.extract computes the extraction path for each entry by passing a full filesystem path through trimFileAndExt...
How severe is CVE-2026-43888?
CVE-2026-43888 has been rated HIGH with a CVSS base score of 8.7/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2026-43888?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.