xrdp w wersji 0.10.6 i wcześniejszych zawiera lukę typu heap-based buffer overflow w trybie vnc-any, wynikającą z braku walidacji indeksów kolorów w protokole RFB. Podatność jest krytyczna, ponieważ może zostać wykorzystana przez złośliwy serwer VNC do wykonania zdalnego kodu jeszcze przed uwierzytelnieniem użytkownika.
▸ Pokaż oryginał (EN)
xrdp is an open source RDP server. Versions 0.10.6 and prior contain a missing bounds check in xrdp, which allows a heap-based buffer overflow when operating in vnc-any mode. The issue occurs during the handling of RFB protocol color map messages from a VNC server, where incoming color indices are not properly validated. A malicious VNC server can exploit this flaw by sending crafted messages with out-of-range values, leading to an out-of-bounds write on the heap. This memory corruption can result in a denial of service (DoS) or potentially allow remote code execution (RCE) prior to authentication. This issue has been fixed in version 0.10.6.1.
Podczas obsługi komunikatów color map protokołu RFB (Remote Framebuffer) przychodzących od serwera VNC, xrdp nie sprawdza poprawności zakresu indeksów kolorów. Złośliwy serwer VNC może wysłać spreparowane komunikaty zawierające wartości spoza dozwolonego zakresu, co powoduje zapis poza granicami bufora na stercie (heap). Wynikające z tego uszkodzenie pamięci może być wykorzystane do wywołania odmowy usługi (DoS) lub do przejęcia zdalnej kontroli nad systemem.
Atakujący kontrolujący serwer VNC może doprowadzić do awarii procesu xrdp (DoS) lub potencjalnie wykonać dowolny kod na serwerze z uprawnieniami xrdp, przy czym atak możliwy jest przed uwierzytelnieniem użytkownika.
Należy zaktualizować xrdp do wersji 0.10.6.1, w której problem został naprawiony. Pakiet dostępny jest w repozytorium projektu pod adresem wskazanym w referencjach producenta.
xrdp w wersjach 0.10.6 i wcześniejszych, działający w trybie vnc-any
Podatność dotyczy wyłącznie konfiguracji, w której xrdp działa w trybie vnc-any (jako proxy do serwera VNC). Scenariusz ataku wymaga, aby atakujący kontrolował serwer VNC, do którego łączy się xrdp.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNeutrinolabs Xrdp
APPNeutrinolabs< 0.10.6.1
Powiązane podatności
Brak weryfikacji podpisu MAC w Xrdp — podatność MITM w Classic RDP Security
Nieuwierzytelniony stack-based buffer overflow w xrdp (RCE)
Out of Bound Write w xrdp — zapis poza granicami bufora przez RDP
Buffer overflow w xrdp — funkcja audin_send_open()
Buffer overflow w xrdp – funkcja xrdp_mm_chan_data_in()