Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver crafted ARIB caption stream to victim
-
DeliveryVictim's player decodes captions
-
ExploitDesignate Latin special set (ESC 28 4C + 0x6F-0x7E)
-
ExecutionIndex past 78-entry kLatinSpecialTable
-
ImpactOOB read leaks adjacent data or crashes decoder
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the victim to decode an attacker-supplied ARIB STD-B24 caption stream that designates the Latin special character set via the escape sequence ESC 28 4C (0x1B 0x28 0x4C) followed by a byte in the range 0x6F-0x7E, which drives DecoderImpl::HandleGLGR() to index past the 78-entry kLatinSpecialTable. Limiting factors: the attack is local (AV:L) - the attacker cannot trigger it over the network but must get malicious caption content in front of a victim's decoder - and it requires passive user interaction (UI:P), i.e., the victim must play/process the crafted media. Only libaribcaption versions 1.1.0 through 1.1.2 are affected; the issue is fixed in commit 9917cb3. No authentication is required (PR:N), but there is no default remote exposure. |
| Impact | This is a genuinely low-to-moderate priority issue despite the 'Information Disclosure' framing. The provided CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P, score 4.8) describes a local, low-complexity, unauthenticated flaw that requires passive user interaction (a victim decoding attacker-supplied caption data). There is a notable internal conflict: the description states the bug can 'leak adjacent read-only data,' yet the input CVSS sets VC:N (no confidentiality impact) and scores only VA:L (low availability) - so the vendor-supplied vector treats this primarily as a crash/DoS rather than a meaningful data-leak primitive, likely because the adjacent memory is static read-only constant data rather than secrets. No EPSS score and no KEV status were provided; exploitation status is 'no public exploit identified at time of analysis,' though a detailed technical write-up with exact trigger bytes exists on HackMD, effectively lowering the bar to reproduce. Because the attack vector is local and demands that a victim process a crafted ARIB caption stream, real-world exploitability is constrained to media-processing contexts (e.g., a media player ingesting a malicious stream/file). Verdict: a real but low-urgency bug - patch during normal maintenance; it is neither a wormable nor a remotely-triggerable high-severity issue. |
| Exploit ScenarioDerived | An attacker crafts a malicious ARIB STD-B24 caption stream (embedded in a media file or broadcast-style stream) that designates the Latin special set using the escape sequence ESC 28 4C and then supplies bytes in the 0x6F-0x7E range. When a victim plays or decodes this content with libaribcaption 1.1.0-1.1.2, DecoderImpl::HandleGLGR() indexes past the 78-entry kLatinSpecialTable, reading out-of-bounds read-only memory that may crash the decoder or surface adjacent constant data in rendered output. No weaponized exploit is published, but a HackMD write-up documents the exact trigger bytes, making reproduction straightforward. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Out-of-bounds read in libaribcaption 1.1.0 through 1.1.2 lets crafted ARIB STD-B24 captions drive DecoderImpl::HandleGLGR() past the 78-entry kLatinSpecialTable, leaking adjacent read-only data or crashing the decoder. The issue is local and requires the victim to process an attacker-supplied caption stream (UI:P, PR:N), with limited confidentiality and availability impact; no public exploit identified at time of analysis. It is fixed upstream in commit 9917cb3.
RemediationAI
Apply upstream fix commit 9917cb311c93d884cb820d122911a211042da26c or a release containing it; a specific tagged patched version is not confirmed in the provided data, so verify the release includes this commit before deployment. Until then, do not decode untrusted ARIB STD-B24 caption streams: sanitize or reject captions containing ESC 28 4C followed by bytes 0x6F-0x7E before processing, or disable caption decoding for untrusted media, accepting reduced caption functionality. Running decoding in a sandboxed low-privilege process limits disclosure and crash impact, with performance and compatibility trade-offs. See https://www.vulncheck.com/advisories/libaribcaption-1.1.0-through-1.1.2-out-of-bounds-read-via-decoderimpl-handleglgr and https://hackmd.io/@haindpwn/libaribcaption-latin-special-table-oob-read.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
libaribcaption decodes Japanese ARIB STD-B24 broadcast captions. In DecoderImpl::HandleGLGR(), the Latin special character set is selected with the escape sequence ESC 28 4C and mapped through kLatinSpecialTable; a following byte in the 0x6F-0x7E range exceeds the 78-entry table because no upper-bound check is performed. This is a CWE-125 global out-of-bounds read that can disclose adjacent read-only memory or trigger a decoder crash. Only libaribcaption 1.1.0 through 1.1.2 are affected, and the referenced upstream commit changes the decoder conversion tables.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Local crafted caption data parsed by a media app requires victim interaction (UI:R) and no privileges (PR:N); OOB read can leak adjacent read-only memory (C:L) and crash the decoder (A:L), with no integrity impact.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
libaribcaption 1.1.0 through 1.1.2 contains a global out-of-bounds read in DecoderImpl::HandleGLGR() that reads past the 78-entry kLatinSpecialTable without an upper bound check. Attackers can supply crafted captions designating the Latin special set with ESC 28 4C followed by bytes 0x6F-0x7E to leak adjacent read-only data or crash decoding.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-104289
GHSA-jjwq-w2jx-jw8v
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB