CVE-2026-111123
ŚrednieCVSS 6.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
Biblioteka FluidSynth do wersji 2.6.1 zawiera podatność zapisu poza zakresem, umożliwiającą uszkodzenie pamięci sterty i stosu poprzez dostarczenie niezweryfikowanych wartości docelowych modulatorów SoundFont. Atakujący może spreparować plik SF2 z celami PMOD/IMOD od 63 do 255, które po wczytaniu i odtworzeniu zapisują poza tablicę generatorów głosu i updated_gen_bit, powodując uszkodzenie pamięci i awarie.
Ocena ryzyka
Złośliwy plik SF2 może doprowadzić do uszkodzenia pamięci i awarii aplikacji, potencjalnie umożliwiając wykonanie kodu. Dotyczy to systemów odtwarzających niezaufane pliki SoundFont.
Rekomendacja
Zaktualizuj FluidSynth do wersji nowszej niż 2.6.1 po udostępnieniu poprawki i unikaj wczytywania niezaufanych plików SF2.
Inne podatności w FluidSynth
Zobacz wszystkie- CVE-2025-56225Wysokie
Fluidsynth w wersji 2.4.6 i wcześniejszych zawiera podatność na odwołanie do wskaźnika null w pliku fluid_synth_monopoly.c, którą można wywołać podczas ładowania nieprawidłowego pliku MIDI.
- CVE-2026-58264Krytyczne
FluidSynth od wersji 1.1.2 do 2.5.6 zawiera podatność na zapis poza zakresem sterty w obsłudze polecenia pitch_bend_range, gdzie argument kanału nie jest sprawdzany przed zapisem. Może to prowadzić do odmowy usługi lub potencjalnego wykonania kodu. Problem jest osiągalny zdalnie przez serwer TCP lub lokalnie przez powłokę FluidSynth.
- CVE-2026-61723Średnie
FluidSynth w wersjach od 2.5.0 do 2.5.6 ma podatność w natywnym parserze DLS, gdzie walidacja chunków ptbl używa wyrażenia cues * 4 + cbsize bez sprawdzenia, czy mnożenie i dodawanie mieszczą się w 32 bitach. Specjalnie spreparowany plik DLS może spowodować zawinięcie wyrażenia i przejście kontroli rozmiaru, co prowadzi do alokacji około czterech gigabajtów i odczytów miliardów wpisów poza granicami chunku.
- CVE-2026-61722Średnie
FluidSynth w wersjach od 2.5.0 do 2.5.6 ma podatność w natywnym parserze DLS, gdzie walidacja chunków artykulacji używa wyrażenia cbsize + connblocks * 12 bez sprawdzenia, czy mnożenie i dodawanie mieszczą się w 32 bitach. Specjalnie spreparowany plik DLS może spowodować zawinięcie wyrażenia i ominięcie kontroli rozmiaru, co prowadzi do około miliarda iteracji 12-bajtowych poza granicami chunku.
- CVE-2026-61721Wysokie
FluidSynth to syntezator programowy oparty na specyfikacjach SoundFont 2. Od wersji 2.5.0 do 2.5.6 natywny loader DLS przypisuje kontrolowane przez plik wartości wsmp.loop_start i wsmp.loop_length do próbek bez wywołania fluid_sample_validate() lub fluid_sample_sanitize_loop(). Spreparowany plik DLS może umieścić punkty pętli próbki poza buforem próbki, powodując odczyty poza zakresem podczas renderowania dźwięku.
- CVE-2026-61720Średnie
FluidSynth w wersjach od 2.5.0 do 2.5.6 ma podatność w parserze SF2, gdzie liczba modulatorów DMOD jest obliczana jako chunk.size / SF_MOD_SIZE - 1 bez odrzucania chunków mniejszych niż jeden rekord. Specjalnie spreparowany plik SF2 z zerowym rozmiarem chunku DMOD powoduje zawinięcie odejmowania do UINT_MAX, a parser próbuje wykonać miliardy alokacji SFMod.
- CVE-2026-61714Wysokie
FluidSynth od wersji 2.2.4 do 2.5.6 zawiera podatność związaną z konfiguracją synth.midi-channels powyżej 16, która pozwala na odczyty i zapisy poza zakresem pamięci w strukturze _fluid_player_t::channel_isplaying. Może to prowadzić do niezdefiniowanego zachowania i naruszenia poufności, integralności lub dostępności. Problem został naprawiony w wersji 2.5.6.
Oryginalny opis (angielski, źródło NVD)
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

