First published: Wed Sep 02 2020(Updated: )
A vulnerability was found in upstream release cryptsetup-2.2.0 where, there's a bug in LUKS2 format validation code, that is effectively invoked on every device/image presenting itself as LUKS2 container. The bug is in segments validation code in file 'lib/luks2/luks2_json_metadata.c' in function hdr_validate_segments(struct crypt_device *cd, json_object *hdr_jobj) where the code does not check for possible overflow on memory allocation used for intervals array (see statement "intervals = malloc(first_backup * sizeof(*intervals));"). Due to the bug, library can be *tricked* to expect such allocation was successful but for far less memory then originally expected. Later it may read data FROM image crafted by an attacker and actually write such data BEYOND allocated memory.
Credit: secalert@redhat.com secalert@redhat.com
Affected Software | Affected Version | How to fix |
---|---|---|
Cryptsetup Project Cryptsetup | =2.2.0 | |
Redhat Enterprise Linux | =8.0 | |
Canonical Ubuntu Linux | =20.04 | |
Fedoraproject Fedora | =31 | |
Fedoraproject Fedora | =33 | |
redhat/cryptsetup | <2.3.4 | 2.3.4 |
ubuntu/cryptsetup | <2:2.2.2-3ubuntu2.2 | 2:2.2.2-3ubuntu2.2 |
debian/cryptsetup | 2:2.3.7-1+deb11u1 2:2.6.1-4~deb12u2 2:2.7.2-2 2:2.7.4-1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
The vulnerability ID of this vulnerability is CVE-2020-14382.
CVE-2020-14382 has a severity of 7.8 (High).
CVE-2020-14382 affects cryptsetup versions up to but excluding 2.3.4.
To fix CVE-2020-14382, you need to update cryptsetup to version 2.3.4.
More information about CVE-2020-14382 can be found at the following references: [link1], [link2], [link3].