Description
FluidSynth through 2.6.1 contains an out-of-bounds write vulnerability that allows attackers to corrupt heap and stack memory by supplying unvalidated SoundFont modulator destination values. Attackers can craft an SF2 file with PMOD/IMOD destinations of 63 to 255 that, when loaded and played, write past the voice generator array and updated_gen_bit, causing memory corruption and crashes.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
FluidSynth fluidsynth
Default version status: unaffected
0 to ≤ 2.6.1affected
pkg:github/FluidSynth/fluidsynthReferences
- https://hackmd.io/@haind-pwn/fluidsynth-sf2-modulator-dest-generator-oob-write ↗
- https://github.com/FluidSynth/fluidsynth/blob/71e85b2ca6bf48641ba7e2261d8f2640ae473773/src/synth/fluid_voice.c#L615-L623 ↗
- https://github.com/FluidSynth/fluidsynth/blob/71e85b2ca6bf48641ba7e2261d8f2640ae473773/src/synth/fluid_voice.c#L1184-L1229 ↗
- https://github.com/FluidSynth/fluidsynth/blob/71e85b2ca6bf48641ba7e2261d8f2640ae473773/src/sfloader/fluid_defsfont.c#L1609-L1611 ↗
- https://github.com/FluidSynth/fluidsynth ↗
- https://www.vulncheck.com/advisories/fluidsynth-through-2.6.1-out-of-bounds-write-via-soundfont-modulator-destination ↗