CVE-2021-22204
Improper neutralization of user data in the DjVu file format in ExifTool versions 7.44 and up...
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
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
6.8
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
- Record
CVE-2021-22204- CVSS 3.1
- 6.8 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L - Weakness
- CWE-94
- Updated
- 2026-11-02
EUVDEUVD-2021-9350
6.8
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
- Record
EUVD-2021-9350- CVSS 3.1
- 6.8 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-9377-7hwr-p4w6
7.8
Improper neutralization of user data in the DjVu file format in ExifTool versions 7.44 and up...
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
- Record
GHSA-9377-7hwr-p4w6- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-74, CWE-94
- Updated
- 2026-11-02
CISA KEV No score
ExifTool Remote Code Execution Vulnerability
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
- Record
CVE-2021-22204- Weakness
- CWE-95
- Updated
- 2026-11-02
NVD
6.8
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
- Record
CVE-2021-22204- CVSS 3.1
- 6.8 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L - CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.8 Medium
AV:N/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-94
- Updated
- 2026-11-02
OSVALPINE-CVE-2021-22204
7.8
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
- Record
ALPINE-CVE-2021-22204- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
Show 7 moreShow less
OSV
7.8
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
- Record
CVE-2021-22204- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2021-22204
7.8
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
- Record
DEBIAN-CVE-2021-22204- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2021-22204
7.8
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
- Record
UBUNTU-CVE-2021-22204- CVSS 3.1
- 7.8 High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - CVSS 3.1
- 6.8 Medium
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:L - Updated
- 2026-11-02
OSVMGASA-2021-0259 No score
Updated perl-Image-ExifTool package fixes a security vulnerability
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 (CVE-2021-22204).
- Record
MGASA-2021-0259- Updated
- 2026-11-02
OSVopenSUSE-SU-2021:0707-1 No score
Security update for perl-Image-ExifTool
This update for perl-Image-ExifTool fixes the following issues:
Update to version 12.25 fixes (boo#1185547 CVE-2021-22204)
- JPEG XL support is now official
- Added read support for Medical Research Council (MRC) image files
- Added ability to write a number of 3gp tags in video files
- Added a new Sony PictureProfile value (thanks Jos Roost)
- Added a new Sony LensType (thanks LibRaw)
- Added a new Nikon LensID (thanks Niels Kristian Bech Jensen)
- Added a new Canon LensType
- Decode more GPS information from Blackvue dashcam videos
- Decode a couple of new NikonSettings tags (thanks Warren Hatch)
- Decode a few new RIFF tags
- Improved Validate option to add minor warning if standard XMP is missing xpacket wrapper
- Avoid decoding some large arrays in DNG images to improve performance unless the -m option is used
- Patched bug that could give runtime warning when trying to write an empty XMP structure
- Fixed decoding of ImageWidth/Height for JPEG XL images
- Fixed problem were Microsoft Xtra tags couldn't be deleted
version 12.24:
- Added a new PhaseOne RawFormat value (thanks LibRaw)
- Decode a new Sony tag (thanks Jos Roost)
- Decode a few new Panasonic and FujiFilm tags (thanks LibRaw and Greybeard)
- Patched security vulnerability in DjVu reader
- Updated acdsee.config in distribution (thanks StarGeek)
- Recognize AutoCAD DXF files
- More work on experimental JUMBF read support
- More work on experimental JPEG XL read/write support
version 12.23:
- Added support for Olympus ORI files
- Added experimental read/write support for JPEG XL images
- Added experimental read support for JUMBF metadata in JPEG and Jpeg2000 images
- Added built-in support for parsing GPS track from Denver ACG-8050 videos with the -ee option
- Added a some new Sony lenses (thanks Jos Roost and LibRaw)
- Changed priority of Samsung trailer tags so the first DepthMapImage takes precedence when -a is not used
- Improved identification of M4A audio files
- Patched to avoid escaping ',' in 'Binary data' message when -struct is used
- Removed Unknown flag from MXF VideoCodingSchemeID tag
- Fixed -forcewrite=EXIF to apply to EXIF in binary header of EPS files
- API Changes:
- Added BlockExtract option
version 12.22:
- Added a few new Sony LensTypes and a new SonyModelID (thanks Jos Roost and LibRaw)
- Added Extra BaseName tag
- Added a new CanonModelID (thanks LibRaw)
- Decode timed GPS from unlisted programs in M2TS videos with the -ee3 option
- Decode more Sony rtmd tags
- Decode some tags for the Sony ILME-FX3 (thanks Jos Roost)
- Allow negative values to be written to XMP-aux:LensID
- Recognize HEVC video program in M2TS files
- Enhanced -b option so --b suppresses tags with binary data
- Improved flexibility when writing GPS coordinates:
- Now pulls latitude and longitude from a combined GPSCoordinates string
- Recognizes the full word 'South' and 'West' to write negative coordinates
- Improved warning when trying to write an integer QuickTime date/time tag and Time::Local is not available
- Convert GPSSpeed from mph to km/h in timed GPS from Garmin MP4 videos
version 12.21:
- Added a few new iOS QuickTime tags
- Decode a couple more Sony rtmd tags
- Patch to avoid possible 'Use of uninitialized value' warning when attempting to write QuickTime date/time tags with an invalid value
- Fixed problem writing Microsoft Xtra tags
- Fixed Windows daylight savings time patch for file times that was broken in 12.19 (however directory times will not yet handle DST properly)
version 12.20:
- Added ability to write some Microsoft Xtra tags in MOV/MP4 videos
- Added two new Canon LensType values (thanks Norbert Wasser)
- Added a new Nikon LensID
- Fixed problem reading FITS comments that start before column 11
version 12.19:
- Added -list_dir option
- Added the 'ls-l' Shortcut tag
- Extract Comment and History from FITS files
- Enhanced FilePermissions to include device type (similar to …
- Record
openSUSE-SU-2021:0707-1- Updated
- 2026-11-02
OSVUSN-4987-1 No score
libimage-exiftool-perl vulnerability
It was discovered that ExifTool did not properly sanitize user data for the DjVu file format. An attacker could use this vulnerability to cause a DoS or possibly execute arbitrary code.
- Record
USN-4987-1- Updated
- 2026-11-02
OSVUSN-4987-2 No score
libimage-exiftool-perl vulnerability
USN-4987-1 fixed a vulnerability in ExifTool. This update provides the corresponding update for Ubuntu 16.04 ESM.
Original advisory details:
It was discovered that ExifTool did not properly sanitize user data for the DjVu file format. An attacker could use this vulnerability to cause a DoS or possibly execute arbitrary code.
- Record
USN-4987-2- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
perl-image-exiftoolAlpine:v3.13 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.14 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.15 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.16 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.17 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.18 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.19 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.20 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.21 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.22 |
before 12.24-r0 | 12.24-r0 |
Show 15 moreShow less
| Package | Affected | Fixed |
|---|---|---|
perl-image-exiftoolAlpine:v3.23 |
before 12.24-r0 | 12.24-r0 |
perl-image-exiftoolAlpine:v3.24 |
before 12.24-r0 | 12.24-r0 |
libimage-exiftool-perlDebian:12 |
before 12.16+dfsg-2 | 12.16+dfsg-2 |
libimage-exiftool-perlDebian:13 |
before 12.16+dfsg-2 | 12.16+dfsg-2 |
libimage-exiftool-perlDebian:14 |
before 12.16+dfsg-2 | 12.16+dfsg-2 |
libimage-exiftool-perlDebian:9 |
before 10.40-1+deb9u1, plus listed versions 10.40-1 |
10.40-1+deb9u1 |
libimage-exiftool-perlDebian:10 |
before 11.16-1+deb10u1, plus listed versions 11.16-1 |
11.16-1+deb10u1 |
perl-Image-ExifToolMageia:7 |
before 11.300.0-1.1.mga7 | 11.300.0-1.1.mga7 |
perl-Image-ExifToolMageia:8 |
before 12.0.0-1.1.mga8 | 12.0.0-1.1.mga8 |
libimage-exiftool-perlUbuntu:Pro:16.04:LTS |
before 10.10-1ubuntu0.1~esm1, plus listed versions 10.00-110.02-110.04-110.05-110.07-110.08-110.09-110.10-1 |
10.10-1ubuntu0.1~esm1 |
libimage-exiftool-perlUbuntu:18.04:LTS |
before 10.80-1ubuntu0.1, plus listed versions 10.60-110.64-110.65-110.67-110.75-110.79-110.80-1 |
10.80-1ubuntu0.1 |
libimage-exiftool-perlUbuntu:20.04:LTS |
before 11.88-1ubuntu0.1, plus listed versions 11.65-111.70-111.74-111.75-111.76-1 Show 6 moreShow less11.77-111.78-111.79-111.80-111.87-111.88-1 |
11.88-1ubuntu0.1 |
perl-Image-ExifToolSUSE:Package Hub 15 SP1 |
before 12.25-bp152.4.3.1 | 12.25-bp152.4.3.1 |
perl-Image-ExifToolSUSE:Package Hub 15 SP2 |
before 12.25-bp152.4.3.1 | 12.25-bp152.4.3.1 |
perl-Image-ExifToolopenSUSE:Leap 15.2 |
before 12.25-bp152.4.3.1 | 12.25-bp152.4.3.1 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Metasploit | GitLab Unauthenticated Remote ExifTool Command Injection | 2021-04-14 |
| PoC in GitHub | convisolabs/CVE-2021-22204-exiftool | 2021-05-11 |
| PoC in GitHub | se162xg/CVE-2021-22204 | 2021-05-12 |
| PoC in GitHub | bilkoh/POC-CVE-2021-22204 | 2021-05-21 |
| Metasploit | ExifTool DjVu ANT Perl injection | 2021-05-24 |
| PoC in GitHub | AssassinUKG/CVE-2021-22204 | 2021-08-02 |
| PoC in GitHub | PenTestical/CVE-2021-22204 | 2021-08-02 |
| PoC in GitHub | ph-arm/CVE-2021-22204-Gitlab | 2021-11-04 |
| PoC in GitHub | Asaad27/CVE-2021-22204-RSE | 2021-12-06 |
| PoC in GitHub | trganda/CVE-2021-22204 | 2021-12-29 |
Show 10 moreShow less
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | 0xBruno/CVE-2021-22204 | 2022-01-30 |
| PoC in GitHub | mr-tuhin/CVE-2021-22204-exiftool | 2022-02-21 |
| PoC in GitHub | UNICORDev/exploit-CVE-2021-22204 | 2022-04-16 |
| Exploit-DB | ExifTool 12.23 - Arbitrary Code Execution | 2022-05-11 |
| PoC in GitHub | Akash7350/CVE-2021-22204 | 2023-05-14 |
| PoC in GitHub | battleofthebots/dejavu | 2023-07-25 |
| PoC in GitHub | cc3305/CVE-2021-22204 | 2024-06-07 |
| PoC in GitHub | Roronoawjd/CVE-2021-22204 | 2025-10-27 |
| PoC in GitHub | d4ytox/CVE-2021-22204 | 2026-06-13 |
| PoC in GitHub | cyfrowesny/exiftool-7.44-12.23-exploit-CVE-2021-22204 | 2026-10-16 |
History
| Recorded | Changed | Sources |
|---|---|---|
| exploitation | ||
| affected, aliases, exploits, references | OSV | |
| first indexed | CVE List, EUVD, Exploit-DB, GitHub Advisories, CISA KEV, Metasploit, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2021-22204 is a medium vulnerability (CVSS 6.8) in Exiftool, published April 23, 2021. CISA lists it as known to be exploited, since November 17, 2021. EUVD reports exploitation since November 17, 2021. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 100.0%, the 99th percentile. Fixed in perl-image-exiftool 12.24-r0.
References
github.com/exiftool/exiftool/commit/cf0f4e7dcd024ca99615bfd1102a841a25dde031
hackerone.com/reports/1154542
gitlab.com/gitlab-org/cves/-/blob/master/2021/CVE-2021-22204.json
debian.org/security/2021/dsa-4910
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/U4RF6PJCJ6NQOVJJJF6HN6BORUQVIXY6
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DDKDLJLBTBBR66OOPXSXCG2PQRM5KCZL
Show 27 moreShow less
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/F6UOBPU3LSHAPRRJNISNVXZ5DSUIALLV
openwall.com/lists/oss-security/2021/05/09/1
openwall.com/lists/oss-security/2021/05/10/5
packetstormsecurity.com/files/162558/ExifTool-DjVu-ANT-Perl-Injection.html
lists.debian.org/debian-lts-announce/2021/05/msg00018.html
packetstormsecurity.com/files/164768/GitLab-Unauthenticated-Remote-ExifTool-Command-Injection.html
packetstormsecurity.com/files/164994/GitLab-13.10.2-Remote-Code-Execution.html
packetstormsecurity.com/files/167038/ExifTool-12.23-Arbitrary-Code-Execution.html
cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2021-22204
nvd.nist.gov/vuln/detail/CVE-2021-22204
lists.fedoraproject.org/archives/list/[email protected]/message/DDKDLJLBTBBR66OOPXSXCG2PQRM5KCZL
lists.fedoraproject.org/archives/list/[email protected]/message/F6UOBPU3LSHAPRRJNISNVXZ5DSUIALLV
lists.fedoraproject.org/archives/list/[email protected]/message/U4RF6PJCJ6NQOVJJJF6HN6BORUQVIXY6
github.com/advisories/GHSA-9377-7hwr-p4w6
security.alpinelinux.org/vuln/CVE-2021-22204
security-tracker.debian.org/tracker/CVE-2021-22204
advisories.mageia.org/MGASA-2021-0259.html
bugs.mageia.org/show_bug.cgi?id=28927
lists.opensuse.org/archives/list/[email protected]/thread/SLQ4XG6SNL6OL7SHPBZLVWYCAEZGZW5X
ubuntu.com/security/CVE-2021-22204
bugs.launchpad.net/bugs/1925985
ubuntu.com/security/notices/USN-4987-1
cve.org/CVERecord?id=CVE-2021-22204
cisa.gov/known-exploited-vulnerabilities-catalog
ubuntu.com/security/notices/USN-4987-2
bugzilla.suse.com/1185547
suse.com/security/cve/CVE-2021-22204
Left out here: the rest of 1 source description. The JSON record has them.