PDA

Просмотр полной версии : 37 уязвимостей в различных реализациях VNC


Suicide
24.11.2019, 20:45
Павел Черемушкин из Лаборатории Касперского проанализировал (https://ics-cert.kaspersky.ru/reports/2019/11/13/vnc-vulnerability-research/) различные реализации системы удалённого доступа VNC (Virtual Network Computing) и выявил 37 уязвимостей, вызванных проблемами при работе с памятью. Выявленные в реализациях VNC-серверов уязвимости могут быть эксплуатированы только аутентифицированным пользователем, а атаки на уязвимости в клиентском коде возможны при подключении пользователя к серверу, контролируемому злоумышленником.

Наибольшее число уязвимостей обнаружено в пакете UltraVNC (https://www.uvnc.com/), доступном только для платформы Windows. Всего в UltraVNC выявлены 22 уязвимости. 13 уязвимостей могут потенциально привести к выполнению кода в системе, 5 к утечке содержимого областей памяти и 4 к отказу в обслуживании. Уязвимости устранены в выпуске 1.2.3.0 (https://www.uvnc.com/downloads/ultravnc.html).

В открытой библиотеке LibVNC (http://libvnc.github.io/) (LibVNCServer и LibVNCClient), которая используется (http://libvnc.github.io/success.html) в VirtualBox, выявлено 10 уязвимостей. 5 уязвимостей (CVE-2018-20020 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20020), CVE-2018-20019 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20019), CVE-2018-15127 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-15127), CVE-2018-15126 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-15126), CVE-2018-6307 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6307)) вызваны переполнением буфера и могут потенциально привести к выполнению кода. 3 уязвимости могут привести к утечке информации, 2 к осуществлению отказа в обслуживании. Все проблемы уже устранены разработчиками - большинство исправлений включено в выпуск LibVNCServer 0.9.12 (https://github.com/LibVNC/libvncserver/releases), но полностью все исправления пока отражены (https://github.com/LibVNC/libvncserver/commit/6073771eed1caf72f196e410182471e0dfd32149) только (https://github.com/LibVNC/libvncserver/commit/d01e1bb4246323ba6fcee3b82ef1faa9b1dac82a) в master-ветке и в формируемых дистрибутивами (https://bugzilla.suse.com/show_bug.cgi?id=CVE-2019-15681) обновлениях (https://security-tracker.debian.org/tracker/source-package/libvncserver).

В TightVNC (https://sourceforge.net/projects/vnc-tight/) (тестировалась кросс-платформенная устаревшая ветка 1.3 (https://www.tightvnc.com/download-old.php), так как актуальная версия 2.x выпускается только для Windows), обнаружено 4 уязвимости. Три проблемы (CVE-2019-15679 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=2019-15679), CVE-2019-15678 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=2019-15678), CVE-2019-8287 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-8287)) вызваны переполнением буфера в функциях InitialiseRFBConnection, rfbServerCutText и HandleCoRREBBP, и потенциально могут привести к выполнению кода. Одна проблема (CVE-2019-15680 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=2019-15680)) приводит к отказу в обслуживании. Несмотря на то, что разработчики TightVNC были уведомлены (https://www.openwall.com/lists/oss-security/2018/12/10/5) о проблемах ещё в прошлом году, уязвимости так и остаются неисправленными.

В кросс-платформенном пакете TurboVNC (https://www.turbovnc.org/) (форк TightVNC 1.3, использующий библиотеку libjpeg-turbo), найдена только одна уязвимость (CVE-2019-15683 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=2019-15683)), но она является опасной и при наличии аутентифицированного доступа к серверу, даёт возможность организовать выполнение своего кода, так как при переполнении буфера имеется возможность контролировать адрес возврата. Проблема устранена 23 августа (https://github.com/TurboVNC/turbovnc/commit/cea98166008301e614e0d36776bf9435a536136e) и не проявляется в актуальном выпуске 2.2.3 (https://github.com/TurboVNC/turbovnc/releases).

23.11.2019

http://www.opennet.ru/opennews/art.shtml?num=51922​