CVE-2024-25112
Denial of service due to unbounded recursion in QuickTimeVideo::multipleEntriesDecoder in Exiv2
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Required
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
5.5
Denial of service due to unbounded recursion in QuickTimeVideo::multipleEntriesDecoder in Exiv2
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-25112- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-400, CWE-674
- Updated
- 2026-11-02
EUVDEUVD-2024-0058
5.5
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
EUVD-2024-0058- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-crmj-qh74-2r36
5.5
Exiv2 has a denial of service due to unbounded recursion in QuickTimeVideo::multipleEntriesDecoder
Impact
A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0 (see https://github.com/Exiv2/exiv2/pull/2337), so Exiv2 versions before v0.28 are not affected. Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file.
Patches
The bug is fixed in version v0.28.2.
For more information
Please see our security policy for information about Exiv2 security.
Credit
This bug was found by OSS-Fuzz.
- Record
GHSA-crmj-qh74-2r36- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-400, CWE-674
- Updated
- 2026-11-02
NVD
5.5
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-25112- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-400, CWE-674
- Updated
- 2026-11-02
OSVALPINE-CVE-2024-25112
5.0
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
ALPINE-CVE-2024-25112- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-03
OSVAZL-42515
5.0
CVE-2024-25112 affecting package exiv2 0.28.0-1
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
AZL-42515- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
Show 8 moreShow less
OSVAZL-42558
5.0
CVE-2024-25112 affecting package exiv2 for versions less than 0.28.3-1
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
AZL-42558- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSV
5.5
Denial of service due to unbounded recursion in QuickTimeVideo::multipleEntriesDecoder in Exiv2
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
CVE-2024-25112- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-400, CWE-674
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2024-25112
5.0
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
DEBIAN-CVE-2024-25112- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVGHSA-crmj-qh74-2r36
5.5
Exiv2 has a denial of service due to unbounded recursion in QuickTimeVideo::multipleEntriesDecoder
Impact
A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0 (see https://github.com/Exiv2/exiv2/pull/2337), so Exiv2 versions before v0.28 are not affected. Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file.
Patches
The bug is fixed in version v0.28.2.
For more information
Please see our security policy for information about Exiv2 security.
Credit
This bug was found by OSS-Fuzz.
- Record
GHSA-crmj-qh74-2r36- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - Weakness
- CWE-400, CWE-674
- Updated
- 2026-11-02
OSVPYSEC-2024-107
5.0
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. A denial-of-service was found in Exiv2 version v0.28.1: an unbounded recursion can cause Exiv2 to crash by exhausting the stack. The vulnerable function, QuickTimeVideo::multipleEntriesDecoder, was new in v0.28.0, so Exiv2 versions before v0.28 are not affected. The denial-of-service is triggered when Exiv2 is used to read the metadata of a crafted video file. This bug is fixed in version v0.28.2. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Record
PYSEC-2024-107- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13731-1 No score
exiv2-0.28.2-1.1 on GA media
These are all security issues fixed in the exiv2-0.28.2-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13731-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:20410-1 No score
Security update for exiv2
This update for exiv2 fixes the following issues:
Update to exiv2 0.28.8:
- CVE-2024-24826: out-of-bounds read in QuickTimeVideo: NikonTagsDecoder (bsc#1219870).
- CVE-2024-25112: denial of service due to unbounded recursion in QuickTimeVideo: multipleEntriesDecoder (bsc#1219871).
- CVE-2024-39695: out-of-bounds read in AsfVideo: streamProperties (bsc#1227528).
- CVE-2025-26623: heap buffer overflow via writing metadata into a crafted image file (bsc#1237347).
- CVE-2025-54080: out-of-bounds read in
Exiv2: EpsImage: writeMetadata()when writing metadata into a crafted image file (bsc#1248962). - CVE-2025-55304: quadratic performance algorithm in the ICC profile parsing code of
JpegBase: readMetadata(bsc#1248963). - CVE-2026-25884: out-of-bounds read in
CrwMap: decode0x0805(bsc#1259083). - CVE-2026-27596: integer overflow in
LoaderNative: getData()leads to out-of-bounds read (bsc#1259084). - CVE-2026-27631: crash due to uncaught exception when trying to create
std: vectorlarger thanmax_size()(bsc#1259085).
- Record
openSUSE-SU-2026:20410-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:20923-1 No score
Security update for exiv2
This update for exiv2 fixes the following issues:
Update to exiv2 0.28.8:
- CVE-2024-24826: out-of-bounds read in QuickTimeVideo: NikonTagsDecoder (bsc#1219870).
- CVE-2024-25112: denial of service due to unbounded recursion in QuickTimeVideo: multipleEntriesDecoder (bsc#1219871).
- CVE-2024-39695: out-of-bounds read in AsfVideo: streamProperties (bsc#1227528).
- CVE-2025-26623: heap buffer overflow via writing metadata into a crafted image file (bsc#1237347).
- CVE-2025-54080: out-of-bounds read in
Exiv2: EpsImage: writeMetadata()when writing metadata into a crafted image file (bsc#1248962). - CVE-2025-55304: quadratic performance algorithm in the ICC profile parsing code of
JpegBase: readMetadata(bsc#1248963). - CVE-2026-25884: out-of-bounds read in
CrwMap: decode0x0805(bsc#1259083). - CVE-2026-27596: integer overflow in
LoaderNative: getData()leads to out-of-bounds read (bsc#1259084). - CVE-2026-27631: crash due to uncaught exception when trying to create
std: vectorlarger thanmax_size()(bsc#1259085).
- Record
SUSE-SU-2026:20923-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
exiv2PyPI |
0.16.0 up to 0.16.1 | 0.16.1 |
exiv2Alpine:v3.19 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Alpine:v3.20 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Alpine:v3.21 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Alpine:v3.22 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Alpine:v3.23 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Alpine:v3.24 |
before 0.28.2-r0 | 0.28.2-r0 |
exiv2Azure Linux:2 |
through 0.28.0-1 | None known |
exiv2Azure Linux:3 |
before 0.28.3-1 | 0.28.3-1 |
exiv2Debian:12 |
All versions, plus listed versions 0.27.6-10.28.0+dfsg-10.28.0+dfsg-20.28.0+dfsg-30.28.0+dfsg-4 Show 13 moreShow less0.28.1+dfsg-10.28.1+dfsg-20.28.1+dfsg-30.28.2+dfsg-10.28.3+dfsg-10.28.3+dfsg-20.28.4+dfsg-10.28.4+dfsg-20.28.5+dfsg-10.28.7+dfsg-10.28.7+dfsg-20.28.8+dfsg-10.28.9+dfsg-1 |
None known |
Show 6 moreShow less
| Package | Affected | Fixed |
|---|---|---|
exiv2Debian:13 |
before 0.28.3+dfsg-2 | 0.28.3+dfsg-2 |
exiv2Debian:14 |
before 0.28.3+dfsg-2 | 0.28.3+dfsg-2 |
exiv2SUSE:Linux Enterprise Server 16.0 From an advisory covering 9 CVEs |
before 0.28.8-160000.1.1 | 0.28.8-160000.1.1 |
exiv2SUSE:Linux Enterprise Server for SAP applications 16.0 From an advisory covering 9 CVEs |
before 0.28.8-160000.1.1 | 0.28.8-160000.1.1 |
exiv2openSUSE:Tumbleweed From an advisory covering 2 CVEs |
before 0.28.2-1.1 | 0.28.2-1.1 |
exiv2openSUSE:Leap 16.0 From an advisory covering 9 CVEs |
before 0.28.8-160000.1.1 | 0.28.8-160000.1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected, aliases, references | OSV | |
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-25112 is a medium vulnerability (CVSS 5.5) in Exiv2, published February 12, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.22%, the 12th percentile. Fixed in exiv2 0.16.1.
References
github.com/Exiv2/exiv2/security/advisories/GHSA-crmj-qh74-2r36
github.com/Exiv2/exiv2/pull/2337
nvd.nist.gov/vuln/detail/CVE-2024-25112
github.com/pypa/advisory-database/tree/main/vulns/exiv2/PYSEC-2024-107.yaml
github.com/advisories/GHSA-crmj-qh74-2r36
security.alpinelinux.org/vuln/CVE-2024-25112
Show 22 moreShow less
github.com/CVEProject/cvelistV5/tree/main/cves/2024/25xxx/CVE-2024-25112.json
security-tracker.debian.org/tracker/CVE-2024-25112
github.com/Exiv2/exiv2
suse.com/support/update/announcement/2026/suse-su-202620923-1
bugzilla.suse.com/1219870
bugzilla.suse.com/1219871
bugzilla.suse.com/1227528
bugzilla.suse.com/1237347
bugzilla.suse.com/1248962
bugzilla.suse.com/1248963
bugzilla.suse.com/1259083
bugzilla.suse.com/1259084
bugzilla.suse.com/1259085
suse.com/security/cve/CVE-2024-24826
suse.com/security/cve/CVE-2024-25112
suse.com/security/cve/CVE-2024-39695
suse.com/security/cve/CVE-2025-26623
suse.com/security/cve/CVE-2025-54080
suse.com/security/cve/CVE-2025-55304
suse.com/security/cve/CVE-2026-25884
suse.com/security/cve/CVE-2026-27596
suse.com/security/cve/CVE-2026-27631