CVE-2018-1000544: Malicious File Upload
A vulnerability has been found in the way developers have implemented the archive extraction of files. An arbitrary file write vulnerability, that can be achieved using a specially crafted zip archive (affects other archives as well, bzip2, tar,xz, war, cpio, 7z), that holds path traversal filenames. So when the filename gets concatenated to the target extraction directory, the final path ends up outside of the target folder. Of course if an executable or a configuration file is overwritten with a file containing malicious code, the problem can turn into an arbitrary code execution issue quite easily. This affects multiple libraries that lacks of a high level APIs that provide the archive extraction functionality.
References: https://snyk.io/research/zip-slip-vulnerability
Other sources
rubyzip gem rubyzip version 1.2.1 and earlier contains a Directory Traversal vulnerability in Zip::File component that can result in write arbitrary files to the filesystem. This attack appear to be exploitable via If a site allows uploading of .zip files , an attacker can upload a malicious file that contains symlinks or files with absolute pathnames "../" to write arbitrary files to the filesystem..
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is CVE-2018-1000544?
CVE-2018-1000544 is a Directory Traversal vulnerability in the rubyzip gem, specifically in the Zip::File component.
What is the severity of CVE-2018-1000544?
CVE-2018-1000544 has a severity score of 9.8, which is considered critical.
How can CVE-2018-1000544 be exploited?
CVE-2018-1000544 can be exploited if a site allows uploading of .zip files. An attacker can upload a malicious file that can lead to arbitrary file write on the filesystem.
Which versions of the rubyzip gem are affected by CVE-2018-1000544?
Versions 1.2.1 and earlier of the rubyzip gem are affected by CVE-2018-1000544.
How can I fix CVE-2018-1000544?
To fix CVE-2018-1000544, update the rubyzip gem to version 1.2.2 or higher.