FreeRDP является бесплатной реализацией протокола удаленных настольных ПК. До версии 3.23.0 `xf_clipboard_format_equal` читает освобожденну…
FreeRDP является бесплатной реализацией протокола удаленных настольных ПК. До версии 3.23.0 `xf_clipboard_format_equal` читает освобожденную память `xf_clipboard_format_free` потому `xf_clipboard_formats_free` (называемая из потока канала cliprdr во время автоматического повторного подключения) освобождает массив, в то время как нить события X11 одновременно итерирует его в `xf_clipboard_changed`, вызывая использование кучи после бесплатного. Версия 3.23.0 исправляет проблему.
Продукт повторно использует или ссылается на память после её освобождения. В какой-то момент эта память может быть выделена повторно и сохранена в другом указателе, тогда как исходный указатель на освобождённую память используется вновь. Поскольку теперь по этому адресу может храниться посторонний объект, исходное использование указателя может привести к повреждению памяти или иным непреднамеренным последствиям. Если новая структура данных содержит указатель на функцию, то при исполнении может быть вызван код, контролируемый злоумышленником.
https://cwe.mitre.org/data/definitions/416.html →Открыть в коллекции CWE →| Продукт | Вендор | Статус |
|---|---|---|
| Отслеживается | ||
| freerdp2 | Отслеживается | |
| freerdp2 | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp | * | Отслеживается |
| freerdp | Отслеживается | |
| freerdp | Отслеживается | |
| freerdp | Отслеживается | |
| freerdp-plugins-standard | Отслеживается | |
| freerdp-plugins-standard | Отслеживается | |
| freerdp-plugins-standard | Отслеживается | |
| freerdp-server | Отслеживается | |
| freerdp-server | Отслеживается | |
| freerdp-server | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp3 | Отслеживается | |
| freerdp3 | Отслеживается |