Command injection in Calibre - CVE-2018-7889
Published: March 11, 2018 / Updated: March 12, 2018
Vulnerability identifier: #VU10930
CSH Severity: High
CVSS v4: 8.8 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:H/SC:N/SI:N/SA:N]
CVE-ID: CVE-2018-7889
CWE-ID: CWE-77
Exploitation vector: Remote access
Exploit availability:
No public exploit available
Vulnerability details
The vulnerability allows a remote attacker to execute arbitrary commands on the target system.
The weakness exists in gui2/viewer/bookmarkmanager.py in Calibre calls cPickle.load on imported bookmark data due to improper input validation. A remote attacker can send a specially crafted .pickle file, as demonstrated by Python code that contains an os.system call, inject arbitrary command and execute arbitrary code.
Successful exploitation of the vulnerability may result in system compromise.
The weakness exists in gui2/viewer/bookmarkmanager.py in Calibre calls cPickle.load on imported bookmark data due to improper input validation. A remote attacker can send a specially crafted .pickle file, as demonstrated by Python code that contains an os.system call, inject arbitrary command and execute arbitrary code.
Successful exploitation of the vulnerability may result in system compromise.
Affected software
Calibre
Arch Linux
Fedora
calibre
Arch Linux
Fedora
calibre
How to mitigate CVE-2018-7889
Update to version 3.19.0.
calibre - addressed in versions 3.19.0-1.fc26, 3.19.0-1.fc27, 3.19.0-1.fc28