{"id":"CVE-2026-61721","summary":"FluidSynth: Heap-based buffer overrun for DLS samples","details":"FluidSynth is a software synthesizer based on the SoundFont 2 specifications. From 2.5.0 until 2.5.6, the native DLS loader assigns file-controlled wsmp.loop_start and wsmp.loop_length values to samples without calling fluid_sample_validate() or fluid_sample_sanitize_loop(). A crafted DLS file can place sample loop points beyond the sample buffer, causing out-of-bounds reads during audio rendering, undefined behavior, possible memory disclosure, and denial of service. Builds compiled with the CMake option enable-native-dls set to OFF do not expose the affected parser. This issue is fixed in version 2.5.6.","aliases":["GHSA-59ph-rx8r-8p4j"],"modified":"2026-10-22T16:35:43.974939309Z","published":"2026-09-18T20:00:29.403Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/61xxx/CVE-2026-61721.json","cna_assigner":"GitHub_M","cwe_ids":["CWE-122","CWE-125"]},"references":[{"type":"WEB","url":"https://github.com/FluidSynth/fluidsynth/releases/tag/v2.5.6"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/61xxx/CVE-2026-61721.json"},{"type":"ADVISORY","url":"https://github.com/FluidSynth/fluidsynth/security/advisories/GHSA-59ph-rx8r-8p4j"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-61721"},{"type":"FIX","url":"https://github.com/FluidSynth/fluidsynth/commit/2354c2a9acdb26de7cdcd37c903ee108f46c0a7d"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/fluidsynth/fluidsynth","events":[{"introduced":"df432e151dcaf463b1ecc7e873803bfa19733fd3"},{"fixed":"e5b11058a619246cea42976dacb76ca54be3d45d"},{"fixed":"2354c2a9acdb26de7cdcd37c903ee108f46c0a7d"}],"database_specific":{"extracted_events":[{"source":"AFFECTED_FIELD","strategy":"StringRangeExpression","range":[{"introduced":"2.5.0"},{"fixed":"2.5.6"}]},{"range":[{"fixed":"2354c2a9acdb26de7cdcd37c903ee108f46c0a7d"}],"source":"REFERENCES_COMMIT"},{"range":[{"fixed":"e5b11058a619246cea42976dacb76ca54be3d45d"}],"source":"REFERENCES_TAG","original_tag":"v2.5.6"}]}}],"versions":["v2.5.5","v2.5.4","v2.5.3","v2.5.2","v2.5.1","v2.5.0"],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-61721.json","vanir_signatures":[{"signature_version":"v1","source":"https://github.com/fluidsynth/fluidsynth/commit/2354c2a9acdb26de7cdcd37c903ee108f46c0a7d","target":{"file":"src/sfloader/fluid_dls.cpp"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["316832849941334984658522297308767385325","284594243347044839103798002494813733799","101061516766831570691312734986969741846","176523278482922968298966940381046405274","283224059878043331887379742755905471351","106710001654129884608613215939524450720","256740305250907577948450650015923853604","324646973724361892125972574381539228414","151879616635388207302910934755008770036","308164686764875488323929518412140933807","255659686306477176586757850780243470324","150753281272061286743857011530083515074","278053772028894953740625918029923128653","40904740786826514132595079873731701927"]},"id":"CVE-2026-61721-1773f9d6","signature_type":"Line"},{"digest":{"length":8536,"function_hash":"247883939806704223976831480007442085940"},"id":"CVE-2026-61721-a4d6fc8d","signature_type":"Function","signature_version":"v1","source":"https://github.com/fluidsynth/fluidsynth/commit/2354c2a9acdb26de7cdcd37c903ee108f46c0a7d","target":{"file":"src/sfloader/fluid_dls.cpp","function":"fluid_dls_font::fluid_dls_font"},"deprecated":false},{"deprecated":false,"digest":{"line_hashes":["65741976735742723877597808461499147360","158873129713208397340236107564649355567","27858880504209789441457038429492907366","242142550883552540884961556422285883183"],"threshold":0.9},"id":"CVE-2026-61721-ae4f73c0","signature_type":"Line","signature_version":"v1","source":"https://github.com/fluidsynth/fluidsynth/commit/e5b11058a619246cea42976dacb76ca54be3d45d","target":{"file":"src/sfloader/fluid_dls.cpp"}},{"signature_version":"v1","source":"https://github.com/fluidsynth/fluidsynth/commit/e5b11058a619246cea42976dacb76ca54be3d45d","target":{"function":"fluid_dls_font::fluid_dls_font","file":"src/sfloader/fluid_dls.cpp"},"deprecated":false,"digest":{"length":9029,"function_hash":"109398306651516327573478367773148522902"},"id":"CVE-2026-61721-b1a5b579","signature_type":"Function"}],"vanir_signatures_modified":"2026-10-22T16:35:43Z"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:H"}]}