As per the reporter:
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!
Upstream commit: https://gitlab.com/cryptsetup/cryptsetup/-/commit/52f5cb8cedf22fb3e14c744814ec8af7614146c7
Name: Tobias Stoeckmann
This flaw was introduced in upstream release cryptsetup-2.2.0, with inclusion of LUKS2 re-encryption code. This feature is not available in Red Hat Enterprise Linux 7, therefore it is not affected by this flaw.
Created cryptsetup tracking bugs for this issue:
Affects: fedora-all [bug 1875199]
Upstream merge-request: https://gitlab.com/cryptsetup/cryptsetup/-/merge_requests/102
Any update for the bug? the bug has added to errata and it block the errata testing.