---
id: CVE-2026-111151
title: >-
  OpenJPH through 0.32.0 contains a heap out-of-bounds write vulnerability in
  the HTJ2K cleanup-pass decoder that allows attackers to corrupt memory via
  one-row codeblocks
summary: >-
  OpenJPH through 0.32.0 contains a heap out-of-bounds write vulnerability in
  the HTJ2K cleanup-pass decoder that allows attackers to corrupt memory via
  one-row codeblocks. Attackers can supply a crafted .j2c or .jph codestream
  with small …
severity: medium
cvss: 6.1
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H'
cwe:
  - CWE-787
vendor: aous72
product: OpenJPH
affected:
  - OpenJPH <= 0.32.0
published: '2026-10-15'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T19:17:29.800'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-111151'
references:
  - url: 'https://github.com/aous72/OpenJPH'
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/aous72/OpenJPH/blob/23c422895ce6c3a156935222e4715ee0b7be952c/src/core/codestream/ojph_codeblock.cpp#L79-L84
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/aous72/OpenJPH/blob/23c422895ce6c3a156935222e4715ee0b7be952c/src/core/codestream/ojph_subband.cpp#L136-L142
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/aous72/OpenJPH/blob/23c422895ce6c3a156935222e4715ee0b7be952c/src/core/coding/ojph_block_decoder32.cpp#L1135-L1155
    label: disclosure@vulncheck.com
  - url: >-
      https://hackmd.io/@haind-pwn/openjph-htj2k-degenerate-codeblock-cleanup-oob-write
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/openjph-through-0.32.0-heap-out-of-bounds-write-in-htj2k-cleanup-pass-decoder
    label: disclosure@vulncheck.com
tags:
  - nvd
  - cve.org
  - exploit-available
ingestedAt: '2026-10-15T19:25:46.415Z'
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-15T19:36:04.656151Z'
---

## Overview

OpenJPH through 0.32.0 contains a heap out-of-bounds write vulnerability in the HTJ2K cleanup-pass decoder that allows attackers to corrupt memory via one-row codeblocks. Attackers can supply a crafted .j2c or .jph codestream with small precinct sizes, causing the decoder to write a second row past the codeblock buffer, resulting in memory corruption and crashes.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
