CVE-2026-32889
tinytag: Denial of Service via non-terminating SYLT frame parsing loop
tinytag is a Python library for reading audio file metadata. Version 2.2.0 allows an attacker who can supply MP3 files for parsing to trigger a non-terminating loop while the library parses an ID3v2 SYLT (synchronized lyrics) frame. In server-side deployments that automatically parse attacker-supplied files, a single 498-byte MP3 can cause the parsing operation to stop making progress and remain busy until the worker or process is terminated. The root cause is that _parse_synced_lyrics assumes _find_string_end_pos always returns a position greater than the current offset. That assumption is false when no string terminator is present in the remaining frame content. This issue has been fixed in version 2.2.1.
- Affected
- tinytag
- CVSS v3.1 GITHUB
- 6.5 MEDIUM
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - EPSS
- 0.51% chance of exploitation in the next 30 days, 42nd percentile
- Published
- 2026-03-20
- Updated
- 2026-03-21
Proof-of-concept exploits (1)
Security advisories
- tinytag/tinytag/security/advisories/GHSA-f4rq-2259-hv29
- tinytag/tinytag/commit/44e496310f7ced8077e9087e3774acbaa324b18a