CVE-2026-111379: переполнение буфера в FreeRDP до версии 3.32.0
В библиотеке FreeRDP — популярной реализации протокола удалённого рабочего стола RDP — выявлена уязвимость, связанная с переполнением буфера в куче. Проблема затрагивает механизм обработки persistent cache, используемый клиентом для кэширования данных сеанса.
Подробности
Уязвимость получила идентификатор CVE-2026-111379 и описана как heap buffer overflow в функции persistent_cache_read_entry_v3. Затронуты версии FreeRDP до 3.32.0 включительно. Оценка по шкале CVSS составляет 7.0, что соответствует высокому уровню опасности.
При разборе специально сформированного файла v3 persistent cache атакующий может задать завышенные значения ширины (width) и высоты (height). Эти значения используются в вычислении размера внутри функции persist_cache_get_data. Из-за целочисленного переполнения (wrap) итоговый размер оказывается меньше ожидаемого, и последующий вызов fread записывает данные в недостаточно выделенный буфер. Это приводит к повреждению памяти и, при определённых условиях, к возможности выполнения произвольного кода.
Для эксплуатации требуется локальный доступ — злоумышленник должен заставить приложение FreeRDP обработать вредоносный файл кэша. Несмотря на локальный вектор атаки, последствия могут быть серьёзными, если процесс FreeRDP запущен с высокими привилегиями или обрабатывает данные из недоверенных источников.
Что делать
Рекомендуется как можно скорее обновить FreeRDP до версии 3.32.0 или выше — именно в этой версии устранена уязвимость. Если обновление невозможно, следует рассмотреть следующие меры:
- не открывать и не обрабатывать файлы persistent cache, полученные из ненадёжных источников;
- ограничить права процесса FreeRDP, чтобы минимизировать последствия возможной эксплуатации;
- при возможности отключить использование persistent cache, если эта функциональность не требуется.
Точные патчи и дополнительную информацию стоит отслеживать в официальных каналах проекта FreeRDP.
Уязвимость CVE-2026-111379 демонстрирует, что целочисленные переполнения при расчёте размеров буферов остаются актуальным классом ошибок даже в зрелых проектах. Своевременное обновление до FreeRDP 3.32.0 закрывает проблему, а ограничение привилегий и отказ от обработки ненадёжных файлов кэша снижают риск эксплуатации.
Источник: CVE Project (cvelistV5)
