← Vulnerability feed

Vulnerability record · CVE-2021-22204 · published 23 April 2021

CVE-2021-22204: ExifTool DjVu parsing flaw allows arbitrary code execution

Exiftool Project · Exiftool

ExifTool versions 7.44 and later fail to neutralize user data in the DjVu file format, allowing code injection (CWE-94) when a crafted image is parsed. Because ExifTool is widely embedded in upload and metadata pipelines, a malicious image can turn a routine file-processing step into code execution.

7.8 CVSS 3.1 High CISA KEV since 17 Nov 2021 EPSS 100% · top 0.1% CWE-94 · Code injection
7.8CVSS 3.1 base score, v2 6.8
100%EPSS exploitation probability, 30 days
YesIn CISA KEV, fix deadline passed
3Affected product versions listed by NVD
29References, 10 tagged exploit
17 Jun 2026Last modified by NVD

Description

Improper neutralization of user data in the DjVu file format in ExifTool versions 7.44 and up allows arbitrary code execution when parsing the malicious image

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 16 September 2026. Confidence: high.

critical priorityIt is in CISA KEV with confirmed exploitation, near-maximum EPSS, public exploit code, and yields code execution through ordinary image parsing.

What it is

ExifTool versions 7.44 and later fail to neutralize user data in the DjVu file format, allowing code injection (CWE-94) when a crafted image is parsed. Because ExifTool is widely embedded in upload and metadata pipelines, a malicious image can turn a routine file-processing step into code execution.

Impact

An attacker gains arbitrary code execution in the context of the process parsing the image, with high impact to confidentiality, integrity and availability. This can lead to full compromise of the host or service running ExifTool.

Attack surface

Reached by supplying a malicious DjVu image to ExifTool; the CVSS vector is local (AV:L) with user interaction required (UI:R) and no privileges needed (PR:N). In practice the parsing is often triggered indirectly, for example through an application that runs ExifTool on user-uploaded files.

Exploitation

CISA KEV lists it as exploited with a 2021-12-01 remediation due date, EPSS 30-day probability is 0.99981, and multiple references are tagged Exploit, including public PoCs and GitLab RCE write-ups. No ransomware campaign use is documented.

What to do

  • Upgrade ExifTool to a version containing the fix (commit cf0f4e7dcd024ca99615bfd1102a841a25dde031) or later.
  • Apply the Debian DSA-4910 and Fedora package updates for bundled ExifTool.
  • If patching is delayed, disable or sandbox DjVu parsing and avoid running ExifTool on untrusted images.
  • Run ExifTool with least privilege and isolate it from sensitive data and credentials.
  • Audit applications that invoke ExifTool on user uploads, including GitLab, and update them.

Detection

  • Monitor for ExifTool or Perl child processes spawning unexpected shells or commands after image processing.
  • Alert on DjVu files submitted to upload or metadata pipelines, especially from untrusted sources.
  • Review process trees and command lines for ExifTool invocations that execute interpreters or download payloads.
  • Check for known exploit artifacts in DjVu files and correlate with ExifTool version inventory.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Exploitation in the wild

CISA added CVE-2021-22204 to the Known Exploited Vulnerabilities catalog on 17 November 2021 as "ExifTool Remote Code Execution Vulnerability". Required action: Apply updates per vendor instructions. Federal deadline 1 December 2021.

Affected products

3 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
http://packetstormsecurity.com/files/162558/ExifTool-DjVu-ANT-Perl-Injection.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/164768/GitLab-Unauthenticated-Remote-ExifTool-Command-Injection.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/164994/GitLab-13.10.2-Remote-Code-Execution.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/167038/ExifTool-12.23-Arbitrary-Code-Execution.html ExploitThird Party AdvisoryVDB Entry
http://www.openwall.com/lists/oss-security/2021/05/09/1 Mailing ListThird Party Advisory
http://www.openwall.com/lists/oss-security/2021/05/10/5 Mailing ListThird Party Advisory
https://github.com/exiftool/exiftool/commit/cf0f4e7dcd024ca99615bfd1102a841a25dde031#diff-fa0d652d10dbcd246e6b1df16c1e99 Patch
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22204.json Third Party Advisory
https://hackerone.com/reports/1154542 ExploitIssue TrackingThird Party Advisory
https://lists.debian.org/debian-lts-announce/2021/05/msg00018.html Mailing ListThird Party Advisory
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DDKDLJLBTBBR66OOPXSXCG2 Release Notes
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/F6UOBPU3LSHAPRRJNISNVXZ Release Notes
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/U4RF6PJCJ6NQOVJJJF6HN6B Release Notes
https://www.debian.org/security/2021/dsa-4910 Mailing ListThird Party Advisory
http://packetstormsecurity.com/files/162558/ExifTool-DjVu-ANT-Perl-Injection.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/164768/GitLab-Unauthenticated-Remote-ExifTool-Command-Injection.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/164994/GitLab-13.10.2-Remote-Code-Execution.html ExploitThird Party AdvisoryVDB Entry
http://packetstormsecurity.com/files/167038/ExifTool-12.23-Arbitrary-Code-Execution.html ExploitThird Party AdvisoryVDB Entry
http://www.openwall.com/lists/oss-security/2021/05/09/1 Mailing ListThird Party Advisory
http://www.openwall.com/lists/oss-security/2021/05/10/5 Mailing ListThird Party Advisory
https://github.com/exiftool/exiftool/commit/cf0f4e7dcd024ca99615bfd1102a841a25dde031#diff-fa0d652d10dbcd246e6b1df16c1e99 Patch
https://gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22204.json Third Party Advisory
https://hackerone.com/reports/1154542 ExploitIssue TrackingThird Party Advisory
https://lists.debian.org/debian-lts-announce/2021/05/msg00018.html Mailing ListThird Party Advisory
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DDKDLJLBTBBR66OOPXSXCG2 Release Notes
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/F6UOBPU3LSHAPRRJNISNVXZ Release Notes
https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/U4RF6PJCJ6NQOVJJJF6HN6B Release Notes
https://www.debian.org/security/2021/dsa-4910 Mailing ListThird Party Advisory
https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2021-22204 US Government Resource

Track CVE-2021-22204 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

10.0CVE-2025-32433Erlang/OTP SSH server missing authentication allows remote code executionErlang/OTP SSH servers before OTP-27.3.3, OTP-26.2.5.11 and OTP-25.3.2.20 mishandle SSH protocol messages, letting an unauthenticated attacker execut…KEVEPSS 99%analysed10.0CVE-2025-24201Apple WebKit out-of-bounds write allows sandbox escapeCVE-2025-24201 is an out-of-bounds write in Apple's WebKit that was addressed with improved checks. Maliciously crafted web content may break out of …KEVEPSS 3.8%analysed10.0CVE-2021-44228Apache Log4j2 JNDI lookup remote code executionApache Log4j2 versions 2.0-beta9 through 2.15.0 (excluding 2.12.2, 2.12.3, and 2.3.1) do not protect against attacker-controlled LDAP and other JNDI …KEVEPSS 100%analysed9.8CVE-2026-24061GNU Inetutils telnetd argument injection allows remote auth bypasstelnetd in GNU Inetutils through 2.7 fails to sanitize the USER environment variable, so a value such as "-f root" is passed as an argument to login …KEVEPSS 99%analysed9.8CVE-2025-39682Linux kernel TLS zero-length record handling flaw on rx_listThe Linux kernel TLS receive path mishandles zero-length records that arrive from the rx_list, breaking the assumption that a record type change cann…KEVEPSS 2.9%analysed9.8CVE-2025-24813Apache Tomcat Default Servlet path equivalence enables RCE and file disclosureApache Tomcat mishandles path equivalence for names containing an internal dot, letting a remote unauthenticated attacker write files through the Def…KEVEPSS 100%analysed9.8CVE-2024-9680Mozilla Firefox and Thunderbird use-after-free in Animation timelinesA use-after-free flaw in Animation timelines allows an attacker to execute code in the content process of Firefox and Thunderbird. Mozilla reports ex…KEVEPSS 23%analysed9.8CVE-2024-4577PHP-CGI on Windows argument injection leads to remote code executionPHP-CGI on Windows can misinterpret characters in the command line passed to Win32 API functions when certain code pages are configured, due to Windo…KEVEPSS 100%analysed

Source: NIST National Vulnerability Database (record CVE-2021-22204), CISA KEV, FIRST EPSS (scores of 2026-09-16). This page is refreshed as NVD updates the record.