CVE-2026-61626
libass: Out-of-bounds bit clears for negative Matroska ReadOrder values
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.3
libass: Out-of-bounds bit clears for negative Matroska ReadOrder values
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
CVE-2026-61626- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-787
- Updated
- 2026-11-04
EUVDEUVD-2026-114006
7.3
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
EUVD-2026-114006- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-05
NVD
7.3
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
CVE-2026-61626- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-787
- Updated
- 2026-11-05
OSV
7.3
libass: Out-of-bounds bit clears for negative Matroska ReadOrder values
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
CVE-2026-61626- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Weakness
- CWE-787
- Updated
- 2026-11-06
OSVDEBIAN-CVE-2026-61626
7.3
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
DEBIAN-CVE-2026-61626- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-05
OSVUBUNTU-CVE-2026-61626
7.3
libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format. From 0.17.4 until 0.17.5, libass event pruning does not guard negative Matroska ReadOrder values, allowing an attacker to clear arbitrarily many bits to zero at attacker-controlled positions near the NULL pointer. Exploitation requires a malicious Matroska stream loaded through ass_process_chunk, enabled read-order checking, and later pruning of the malicious events. Read-order checking is enabled by default unless ass_set_check_readorder is called with zero; pruning must occur explicitly through ass_prune_events or through automatic pruning previously enabled with ass_configure_prune. On common systems with arithmetic right shift, 32-bit int values, the upper address region reserved to the kernel, and matching binary/kernel architecture, the expected consequence is denial of service. More extensive exploitation on uncommon systems is theoretical and strongly constrained by the target addresses, bit-clearing-only mutation, and ASLR. This issue is fixed in version 0.17.5.
- Record
UBUNTU-CVE-2026-61626- CVSS 4.0
- 7.3 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-05
OSVUSN-8815-1 No score
libass vulnerabilities
It was discovered that libass incorrectly handled parsing operations for specific nested character strings. An attacker could use this issue to cause libass to crash, resulting in a denial of service, or possibly execute arbitrary code. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS and Ubuntu 20.04 LTS. (CVE-2020-24994)
It was discovered that libass incorrectly handled certain outline processing operations. An attacker could use this issue to cause libass to crash, resulting in a denial of service. This issue only affected Ubuntu 18.04 LTS and Ubuntu 20.04 LTS. (CVE-2020-26682)
It was discovered that libass incorrectly handled certain ASS subtitle files when measuring wrapped lines. An attacker could use this issue to cause libass to crash, resulting in a denial of service, or possibly execute arbitrary code. This issue only affected Ubuntu 24.04 LTS and Ubuntu 26.04 LTS. (CVE-2026-61627)
It was discovered that libass incorrectly handled certain Matroska subtitle chunks with negative ReadOrder values. An attacker could use this issue to cause libass to crash, resulting in a denial of service, or possibly execute arbitrary code. This issue only affected Ubuntu 26.04 LTS. (CVE-2026-61626)
- Record
USN-8815-1- Updated
- 2026-11-03
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
libassDebian:14 |
before 1:0.17.5-1, plus listed versions 1:0.17.3-11:0.17.4-11:0.17.4-2 |
1:0.17.5-1 |
libassUbuntu:Pro:26.04:LTS |
before 1:0.17.4-2ubuntu0.1~esm1, plus listed versions 1:0.17.3-11:0.17.4-2 |
1:0.17.4-2ubuntu0.1~esm1 |
libassUbuntu:Pro:14.04:LTS From an advisory covering 4 CVEs |
before 0.10.1-3ubuntu1+esm2, plus listed versions 0.10.1-1ubuntu10.10.1-30.10.1-3ubuntu10.10.1-3ubuntu1+esm1 |
0.10.1-3ubuntu1+esm2 |
libassUbuntu:Pro:18.04:LTS From an advisory covering 4 CVEs |
before 1:0.14.0-1ubuntu0.1~esm1, plus listed versions 1:0.13.7-21:0.14.0-1 |
1:0.14.0-1ubuntu0.1~esm1 |
libassUbuntu:Pro:20.04:LTS From an advisory covering 4 CVEs |
before 1:0.14.0-2ubuntu0.1~esm1, plus listed versions 1:0.14.0-2 |
1:0.14.0-2ubuntu0.1~esm1 |
libassUbuntu:Pro:24.04:LTS From an advisory covering 4 CVEs |
before 1:0.17.1-2ubuntu0.1~esm1, plus listed versions 1:0.17.1-11:0.17.1-21:0.17.1-2build1 |
1:0.17.1-2ubuntu0.1~esm1 |
libassUbuntu:Pro:26.04:LTS From an advisory covering 4 CVEs |
before 1:0.17.4-2ubuntu0.1~esm1, plus listed versions 1:0.17.3-11:0.17.4-2 |
1:0.17.4-2ubuntu0.1~esm1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | CVE List, EUVD, NVD, OSV | |
| facts | OSV | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-61626 is a high vulnerability (CVSS 7.3) in Libass, published July 14, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.12%, the 1st percentile. Fixed in libass 1:0.17.5-1.
References
github.com/libass/libass/security/advisories/GHSA-5gf7-wjfm-vmvm
github.com/libass/libass/commit/23da65a130bb8c5b2cf0c7df0dd7d424607f98f1
github.com/libass/libass/releases/tag/0.17.5
github.com/CVEProject/cvelistV5/tree/main/cves/2026/61xxx/CVE-2026-61626.json
nvd.nist.gov/vuln/detail/CVE-2026-61626
security-tracker.debian.org/tracker/CVE-2026-61626