CVE-2021-37619
Out-of-bounds read in Exiv2::Jp2Image::encodeJp2Header
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. An out-of-bounds read was found in Exiv2 versions v0.27.4 and earlier. The out-of-bounds read is triggered when Exiv2 is used to write metadata into a crafted image file. An attacker could potentially exploit the vulnerability to cause a denial of service by crashing Exiv2, if they can trick the victim into running Exiv2 on a crafted image file. Note that this bug is only triggered when writing the metadata, which is a less frequently used Exiv2 operation than reading the metadata. For example, to trigger the bug in the Exiv2 command-line application, you need to add an extra command-line argument such as insert. The bug is fixed in version v0.27.5.
Exiv2 es una utilidad de línea de comandos y una biblioteca C++ para leer, escribir, borrar y modificar los metadatos de los archivos de imagen. En versiones v0.27.4 y anteriores a Exiv2 se encontró una lectura fuera de límites. La lectura fuera de límites es desencadenada cuando Exiv2 es usado para escribir metadatos en un archivo de imagen diseñado. Un atacante podría explotar potencialmente la vulnerabilidad para causar una denegación de servicio al bloquear Exiv2, si puede engañar a la víctima para que ejecute Exiv2 en un archivo de imagen diseñado. Tenga en cuenta que este bug sólo es desencadenado cuando se escriben los metadatos, que es una operación de Exiv2 que es usada con menos frecuencia que la lectura de los metadatos. Por ejemplo, para desencadenar el bug en la aplicación de línea de comandos de Exiv2, es necesario añadir un argumento adicional en la línea de comandos, como por ejemplo insert. El bug es corregido en versión v0.27.5
An update that fixes 15 vulnerabilities is now available. This update for exiv2 fixes the following issues. Fixed denial of service due to infinite loop in Image:printIFDStructure. Fixed out-of-bounds read in XmpTextValue:read. Fixed out-of-bounds read in Exiv2:Jp2Image:encodeJp2Header. Fixed out-of-bounds read in Exiv2:Jp2Image:printStructure. Fixed denial of service inside inefficient algorithm. Fixed integer overflow in CrwMap:encode0x1810. Fixed heap-based buffer overflow vulnerability in jp2image.cpp may lead to a denial of service. Fixed out-of-bounds read in Exiv2:Jp2Image:encodeJp2Header. Fixed uncontrolled memory allocation. Fixed remote denial of service in printIFDStructure function. Fixed remote denial of service in Exiv2::Internal::printCsLensFFFF function in canonmn_int.cpp. Fixed remote denial of service in image.cpp Exiv2::Internal::stringFormat via out-of-bounds read. Fixed segmentation fault caused by uncontrolled recursion inthe Exiv2::Image::printIFDStructure. Fixed an infinite loop in the Exiv2:Image:printIFDStructure function. Fixed segmentation fault when the function Exiv2::tEXtToDataBuf is finished.
CVSS Scores
SSVC
- Decision:-
Timeline
- 2021-07-29 CVE Reserved
- 2021-08-09 CVE Published
- 2024-08-04 CVE Updated
- 2025-06-19 EPSS Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-125: Out-of-bounds Read
CAPEC
References (7)
URL | Tag | Source |
---|---|---|
https://github.com/Exiv2/exiv2/security/advisories/GHSA-mxw9-qx4c-6m8v | Third Party Advisory |
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://github.com/Exiv2/exiv2/pull/1752 | 2023-12-22 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Exiv2 Search vendor "Exiv2" | Exiv2 Search vendor "Exiv2" for product "Exiv2" | <= 0.27.4 Search vendor "Exiv2" for product "Exiv2" and version " <= 0.27.4" | - |
Affected
| ||||||
Fedoraproject Search vendor "Fedoraproject" | Fedora Search vendor "Fedoraproject" for product "Fedora" | 33 Search vendor "Fedoraproject" for product "Fedora" and version "33" | - |
Affected
| ||||||
Fedoraproject Search vendor "Fedoraproject" | Fedora Search vendor "Fedoraproject" for product "Fedora" | 34 Search vendor "Fedoraproject" for product "Fedora" and version "34" | - |
Affected
|