Skip to main content

libTiMidity CVE-2026-111156

| EUVDEUVD-2026-102283 MEDIUM
Out-of-bounds Write (CWE-787)
2026-10-15 VulnCheck
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Deliver malicious .sf2 SoundFont file
  2. Delivery
    Victim loads file in libTiMidity app
  3. Exploit
    Parse oversized bank/preset index in init_soundfont()
  4. Execution
    Out-of-bounds heap read/write past tonebank array
  5. Impact
    Memory corruption and application crash

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires an application built against libTiMidity (<= 0.2.8) to load an attacker-controlled SoundFont (.sf2) file, and the attacker must control the SF2 preset-header 'bank' and 'preset' fields so they index past the fixed 128-entry tonebank or drumset arrays in init_soundfont(). The key limiting factors are: (1) LOCAL attack vector - the malicious file must reach the victim's system; (2) passive user interaction (UI:P) - the victim must actually open/process the crafted SoundFont, so there is no autonomous remote trigger; and (3) the target software must expose SoundFont loading via this library. No authentication or special privileges are needed (PR:N), and default configurations are affected once SF2 loading is used - there is no mitigating non-default setting.

Impact

This is a moderate-severity memory-corruption flaw (vendor CVSS 4.0 base 6.9) whose real-world risk is constrained by its exploitation model rather than its technical impact. The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P) tells the real story: although no privileges are required (PR:N), the attack vector is LOCAL and requires passive user interaction (UI:P) - a victim must open or process an attacker-supplied .sf2 SoundFont file. This is not a remotely-reachable, self-propagating issue. A publicly available exploit/write-up exists (VulnCheck advisory and a hackmd technical analysis), but there is NO CISA KEV listing and NO EPSS score provided in the input, so there is no evidence of active or widespread exploitation - status is best described as 'publicly available exploit code exists,' which is distinct from in-the-wild use. The impact metrics (VC:N/VI:L/VA:H) emphasize availability loss (crashes) with limited integrity impact and no confidentiality impact per the vendor vector; however, the description explicitly mentions heap out-of-bounds WRITES (CWE-787), so the integrity rating of only VI:L is arguably conservative and code-execution potential should be treated as plausible rather than dismissed. Net assessment: a legitimate issue to patch in any software bundling libTiMidity, but a lower operational priority than a network-facing unauthenticated bug - it is a file-parsing vulnerability gated on tricking a user into opening a malicious SoundFont.

Exploit ScenarioDerived

An attacker crafts a malicious .sf2 SoundFont file in which a preset-header bank or preset index exceeds the 128-entry tonebank/drumset bounds, then delivers it to a victim who loads it in an application that uses libTiMidity (<= 0.2.8) for MIDI rendering. When init_soundfont() parses the file it indexes past the fixed arrays, corrupting heap memory and crashing the application, with potential for controlled out-of-bounds writes. A public technical write-up and exploit material are already available, lowering the barrier to reproduction.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 15, 2026

Out-of-bounds write in libTiMidity through 0.2.8 allows unauthenticated local attackers to corrupt heap memory and crash applications by loading a crafted SoundFont (.sf2) file whose preset header 'bank' or 'preset' values index past the fixed 128-entry tonebank or drumset arrays in init_soundfont(). The vendor CVSS 4.0 base score is 6.9 (moderate), reflecting high availability impact (crash) and low integrity impact, with exploitation requiring passive user interaction to open the malicious file. Publicly available exploit code exists, increasing the likelihood of targeted attacks against applications that process untrusted SoundFonts.

RemediationAI

No vendor-released patch is identified at the time of analysis. Until a fix is available, users should avoid loading untrusted SoundFont (.sf2) files into applications that link against libTiMidity, or validate and reject any SF2 files with bank or preset values outside 0-127 before processing. Applying input sanitization or sandboxing the media processing component can reduce risk, but these are compensating controls with potential functionality limitations. Monitor the upstream GitHub repository (https://github.com/sezero/libtimidity) for updates; the public exploit at https://hackmd.io/@haind-pwn/libtimidity-soundfont-generator-oper-oob-write demonstrates the attack vector. Once a patched version is released, upgrade to that version or later.

Affected VersionsENISA

libtimidity 0.2.8 ≤0.2.8

Affected Packages

euvd libtimidity no fix

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

libTiMidity is a software MIDI synthesizer library that parses SoundFont (SF2) files to generate audio. The vulnerability resides in init_soundfont() within src/sndfont.c (lines 199-224 per the referenced commit), where preset header fields for 'bank' and 'preset' are read from the SF2 file without validation. The code uses these values as indices into fixed-size arrays (tonebank and drumset) that contain only 128 entries, leading to out-of-bounds read/write (CWE-787, out-of-bounds write). The affected product is identified by CPE cpe:2.3:a:sezero:libtimidity:*:*:*:*:*:*:*:* (all versions through 0.2.8). The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:H) confirms a local attack vector, no privileges required, passive user interaction, and primary impact on availability, with limited integrity impact. The independent assessment (CVSS 3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H) is consistent with this evaluation.

Know when Libtimidity gets its next vulnerability

  • 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

Vendor (VulnCheck) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
vuln.today AI 6.1 MEDIUM

Local file-parsing flaw needing the victim to open a crafted .sf2 (AV:L, UI:R); no auth (PR:N); heap OOB write gives limited integrity and high availability impact, no confidentiality.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

libTiMidity through 0.2.8 contains an out-of-bounds access vulnerability in init_soundfont() in src/sndfont.c that allows attackers to corrupt memory by supplying unvalidated SF2 preset header bank and preset values. Attackers can craft a .sf2 file whose bank or preset indexes past the 128-entry tonebank or drumset arrays, causing heap memory reads, writes, and application crashes.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Low
niche open-source MIDI-to-WAVE rendering library, limited embedded footprint
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

54
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy