CVE-2022-1122
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedA flaw was found in the opj2_decompress program in openjpeg2 2.4.0 in the way it handles an input directory with a large number of files. When it fails to allocate a buffer to store the filenames of the input directory, it calls free() on an uninitialized pointer, leading to a segmentation fault and a denial of service.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceA memory management flaw in openjpeg2's opj2_decompress tool where handling an input directory with a large number of files can cause buffer allocation to fail, leading to free() being called on an uninitialized pointer and resulting in a segmentation fault and denial of service.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data= 34= 35= 36= 9.0= 2.4.0CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Local
- Complexity
- Low
- Privileges
- None
- User interaction
- Required
- Scope
- Unchanged
- Confidentiality
- None
- Integrity
- None
- Availability
- High
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Check if openjpeg2 package is installedOn Fedora: rpm -qa | grep openjpeg. On Debian: dpkg -l | grep openjpeg. On any system with pkg-config: pkg-config --modversion openjpeg-2.4 2>/dev/null or look for libopenjp2 libraries in /usr/lib/Affected if openjpeg2 is installed and version equals 2.4.0 on affected Fedora (34-36) or Debian (9.0) systems
-
Verify opj2_decompress tool is availableRun command: which opj2_decompress or find /usr -name 'opj2_decompress' 2>/dev/nullAffected if The opj2_decompress binary exists in the system PATH or common binary directories
-
Check openjpeg2 library versionCheck the library file directly: ls -la /usr/lib/x86_64-linux-gnu/libopenjp2.so* or /usr/lib64/libopenjp2.so* and examine the soname, or use: ldd $(which opj2_decompress) 2>/dev/null | grep openjpAffected if The linked library version is 2.4.0 specifically (not later patched versions)
-
Determine if opj2_decompress is used on input directoriesReview any scripts, workflows, or cron jobs that invoke opj2_decompress. Look for command patterns like: opj2_decompress -i [directory] -o [output]Affected if opj2_decompress is being used to process input directories containing large numbers of JP2 files
You are affected if openjpeg2 version 2.4.0 is installed on Fedora 34/35/36 or Debian 9.0, the opj2_decompress tool exists, and it is used to process directories with many files, which can trigger the uninitialized pointer free() and segmentation fault.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scopedUpdate to a patched version of openjpeg2 that properly initializes pointers and handles allocation failures, or avoid using opj2_decompress on directories with large numbers of files until the patch is applied.
openjpeg2 version 2.4.1 or later
- 1. Identify the openjpeg2 package version installed on the system.
- 2. Upgrade openjpeg2 to version 2.4.1 or later, which contains the fix for the use-after-free vulnerability in opj2_decompress.
- 3. For Fedora systems: Run 'dnf update openjpeg2' or 'dnf upgrade openjpeg2' to apply the updated package.
- 4. For Debian systems: Run 'apt-get update' followed by 'apt-get upgrade' or 'apt-get install libopenjp2-7' to get the fixed version.
- 5. Verify the installed version matches or exceeds 2.4.1 using 'rpm -qa | grep openjpeg' (Fedora) or 'dpkg -l | grep openjpeg' (Debian).
- 6. Test the opj2_decompress tool with a directory containing multiple files to confirm the fix works correctly and no segmentation fault occurs.
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation2.0 h
- Implementation2.0 h
- Testing2.0 h
- Review / QA1.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $1,984.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2022-1122 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2022-1122 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data