CVE-2021-3520: Integer Overflow
A vulnerability was found in lz4, where a potential memory corruption due to an integer overflow bug which caused one of the memmove arguments to become negative. Depending on how the library was compiled this will hit an assert() inside the library and dump core, leaving a 4GB core file, or it wil go into libc and crash inside the memmove() function.
Reference: https://github.com/lz4/lz4/pull/972
Other sources
lz4 could allow a remote attacker to execute arbitrary code on the system, caused by an integer overflow. By sending a specially crafted file, an attacker could invoke memmove() on a negative size argument leading to memory corruption and trigger an out-of-bounds write or cause the library to crash.
— IBM
There's a flaw in lz4. An attacker who submits a crafted file to an application linked with lz4 may be able to trigger an integer overflow, leading to calling of memmove() on a negative size argument, causing an out-of-bounds write and/or a crash. The greatest impact of this flaw is to availability, with some potential impact to confidentiality and integrity as well.
Affected Software
Remediation
Patch Available
Patch Available
Patch Available
Patch Available
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is CVE-2021-3520?
CVE-2021-3520 is a vulnerability in lz4 that allows a remote attacker to execute arbitrary code on the system.
How does CVE-2021-3520 affect the availability of the system?
CVE-2021-3520 can lead to an out-of-bounds write and/or a crash, impacting the availability of the system.
Which software is affected by CVE-2021-3520?
The affected software includes lz4 versions up to 1.9.4 and IBM Security Verify Access up to version 10.0.0.
Is there a fix for CVE-2021-3520?
Yes, updating lz4 to version 1.9.4 or higher resolves CVE-2021-3520.
Where can I find more information about CVE-2021-3520?
More information about CVE-2021-3520 can be found in the references: [link1], [link2], [link3].