"Microsoft Windows RDP Network Level Authentication can bypass the Windows lock screen"

 ( trey | 2019. június 5., szerda - 12:34 )

Microsoft Windows Remote Desktop supports a feature called Network Level Authentication (NLA), which moves the authentication aspect of a remote session from the RDP layer to the network layer. The use of NLA is recommended to reduce the attack surface of systems exposed using the RDP protocol. In Windows a session can be locked, which presents the user with a screen that requires authentication to continue using the session. Session locking can happen over RDP in the same way that a local session can be locked. [...] Starting with Windows 10 1803 (released in April 2018) and Windows Server 2019, the handling of NLA-based RDP sessions has changed in a way that can cause unexpected behavior with respect to session locking. If a network anomaly triggers a temporary RDP disconnect, upon automatic reconnection the RDP session will be restored to an unlocked state, regardless of how the remote system was left. [...] At this point, an attacker can interrupt the network connectivity of the RDP client system. The RDP client software will automatically reconnect to the remote system once internet connectivity is restored. But because of this vulnerability, the reconnected RDP session is restored to a logged-in desktop rather than the login screen. This means that the remote system unlocks without requiring any credentials to be manually entered.

Részletek itt.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Közeledünk...

--
trey @ gépház

hát, ezt én fícsörnek hívnám inkább ;)

This means that the remote system unlocks without requiring any credentials to be manually entered.

Hiszen az NLA miatt már megtörtént a sikeres authentikáció.

--
zrubi.hu

Ha lelockoltad és azt mutatja, hogy a feloldáshoz jelszó kell, majd ennek ellenére a megszakított session restore-ja után beenged jelszó nélkül, az egy nem várt, hibás működés.

--
trey @ gépház

this

Persze, értem.

De kérdés, hogy az NLA mivel enged be?
Szerintem legtöbb esetben ugyan azzal a usernév jelszó párossal, amivel a lock screen-t feloldanád.

Tehát ha nem tudod a jelszót, nem tudsz visszacsatlakozni. pont.

Ha meg tudod, és már megadtad csatlakozáskor, akkor mi értelme van annak hogy a screen lock fogad, amihez ugyan azt a jelszót kell BEGÉPELNI amit már egyszer a csatlakozáskor megkapott a szerver.

Ez így ebben a formában csak kényelmetlenséget okoz a felhasználónak, hozzádott értéke nincs.

Ha az NLA és a screen lock különböző authentikációt használ(na) - amire példát csak tanúsívány alapú NLA auth esetében tudok elképzelni - akkor valóban nem várt működés. De ebben az esetben is az NLA nak kellene hogy legyen a nagyobb súlya, tehát továbbra is csak szivatás a lock screen.

Hozzátéve, hogy szerintem a lock screen eleve értelmetlen hülyeség RDP esetén :)

--
zrubi.hu

A probléma, amitől ezt szerintem CWE azonosítóval látták el:

A felhasználó csatlakozik egy távoli W10 vagy 2019 Server-hez. Lelockolja a képernyőt, de nem bontja a kapcsolatot. Nyilván ha újra be akar lépni, jelszót kell beírnia. Ez a várt működés. Ezt kínálja a Windows.

Most jön a probléma. Az illető elmegy ebédelni annak tudatában, hogy úgysem fér hozzá senki a távoli lockolt géphez. Közben jön a gonosz támadó (kollégája, akárki), aki szintén nem tudna belépni a távoli szerverre, mert az jelszót kér. Azonban a _nem várt működés_ amiatt mégis be tud: Megszakítja a session-t - itt jön a mókolás - majd az újracsatlakozáskor az simám beengedi. Jelszó nélkül.

Érted a problémát? Most tekintsünk el attól, hogy ez a támadási vektor mennyire életszerű. A nem várt működés áll és hordoz magában - ha nem is túl nagy - rizikót.

"Hozzátéve, hogy szerintem a lock screen eleve értelmetlen hülyeség RDP esetén :)"

Tulajdonképpen értelmetlen, de így, ebben a formában még veszélyes is.

--
trey @ gépház

Sőt, kipróbáltam, nem is kell semmit mókolni. Elég disconnect-elni a sessiont a támadónak. Ha újrakapcsolódik, simán beengedi a Windows jelszó nélkül.

--
trey @ gépház

De ehhez az kell ,hogy hirtelen az oledbe uljon a tamado. Ha meg nem vagyok a gepemnel az elso mozdulatom a Windows+L mikor otthagyom.

"Most tekintsünk el attól, hogy ez a támadási vektor mennyire életszerű. A nem várt működés áll és hordoz magában - ha nem is túl nagy - rizikót."

Tudnék mondani az itteni mindennapokban is életszerű helyzetet, nyilván nem lenne túl tipikus, de ettől még a lehetőség ott van.

--
trey @ gépház

Idézet:
az elso mozdulatom a Windows+L mikor otthagyom

Nekem is. De volt már olyan, hogy elfelejtettem.

Neked még soha?

De mondok mást: te meg én lockoljuk. Dolgoztam együtt néhány emberrel, aki meg nem lockolta.

Idézet:
Dolgoztam együtt néhány emberrel, aki meg nem lockolta.

Én meg dolgoztam olyan emberekkel, akik emiatt megtréfálták azt a felelőtlent, aki ezt megtette. Asztali parancsikonok összekuszálása (Netbeans ikonjára megnyílt pl a pasziánsz, stb), Screenshot az asztalról és az összes parancsikon ideiglenes eltüntetése, meg ilyenek. Utána ő is zárolt rendesen. :)

Mi Hoffolni szoktunk ilyenkor.
David Hasselhoff képe megy mindenhova.

Nemrég a boss hagyta úgy a gépét, sajnos lebuktam Hoffolás közben, ezért csak részben sikerült.

Igen, én is láttam ilyesmi tréfát.

Pl. beállítottak valami pornóból kiollózott képkockát háttérképnek, meg az ikonokkal is trükköztek.

A lényeg, hogy kevés ugyan, de van ilyen, aki (gyakran) nem lockol.

Sose értettem ezt a gyerekes faszságot: 30-40+ (elvileg) agyilag már bőven felnőtt embereknek adnak ilyen munkahelyeken godlike root jogot dollármilliárdokat érő és kiszolgáló rendszerekhez. Hogy egyeztethető össze az ehhez szükséges fegyelem (ilyen jogokkal kb. bárhol bármiben helyrehozhatatlan károkat lehetne tenni) azzal, h. infantilis hülyegyerek módjára szórakozunk a másik kolléga desktop ikonjaival?
Vagy ez inkáb csak a Józsi és tsa kft-nél dolgozó frusztrált alkalmazottak színvonala?
--

Friss huszonévesek voltunk, godlike jogot pedig jóideig nem osztogattak még a dev környezethez sem, csak amikor már kiszóródott az alja a bejutottaknak. A nagycég stimmel, frusztráltág helyett pedig gyerekes hülyeség okozta az ilyen tréfálkozásokat. Aztán megszokta mindenki a lockot és a végére már el is maradtak az ennyire genny tréfák. Ha néha mégis elmaradt, csak egy notepad lett nyitva, amiben leírtuk hogy kit kell szünetben meghívni egy kávéra/cigire, aztán lock.

"hozok csokit mindenkinek"
"ingyen lemosom a kocsitokat" "vendégem vagytok egy pizzára"
"Figyelmetlen voltam :D KÉNE ZÁROLNI

Szerencséd volt bátttyaaaa.. J"

Üdv,
Marci

Nálunk az egyik kolléga így "mondott fel", a főnök pedig teljesen komolyan felvilágositotta, hogy nem bánja és mindent előkészített már. :)

Nem soha.
OCD-s vagyok nem tudom ez mond e valamit :D

Értem a problémát, persze.

Hanem attól ráz a hideg, amikor ilyen sebezhetőségnek látszó hibákat túl marketingelnek.
Itt szerintem csak egy már komprommitált local gépről lehet ezt a hibát kihasználni. (aminek lehet eleve érvényes SSO tiketje is van az egész hálózatra, nem csak egy db RPD szerverre) - de javíts ki, ha tévedek.

Innentől persze probléma hogy nem az elvárt módok viselkedik az RDP szerver, de nagyságrendekkel kisebb, mint a kihasználásához feltételezett helyzet.

ennyi.

--
zrubi.hu

"Innentől persze probléma hogy nem az elvárt módok viselkedik"

Ennyi.

--
trey @ gépház

Nem ismerem az NRA-t (meg az RDP-t se nagyon).

Ha az NRA azonosítana, az hogy történik, feljön egy ablak és be kell írnom a jelszót?

LOL @ videó, amikor a linuxos csávó kétszer is csöcsre fut a "clear" paranccsal Windowson :D

(mintha magam látnám sokszor a Windowson kiadott "clear", "ls" stb. parancsokkal)

--
trey @ gépház

+1
átlagos cmd session:
clear
clear
clear
cls a k_rvaanyád!

Én mv fronton nézem folyton a Bad command or file name aktuális utódját. :D

Üdv,
Marci

Nekem a traceroute játszik. :)
--
"Sose a gép a hülye."

+1

--
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

nálam az ifconfig :)

Én lusta vagyok mostanában leváltani a powershell-t telepítés után és azt használom cmd helyett. Abban nincs probléma a clear és ls parancsokkal :)

Nekem pl. egy ping-hez túl bloatware egy powershell. Illetve, mivel számos olyan szervert kell még támogatni, amiben nincs (gyárilag), igyekszem univerzális megoldásokat használni.

De, nyilván, az a jövő.

--
trey @ gépház

Igen, talán overkill egy pingre... lassabban is indul mint a cmd. Kíváncsi leszek a beígért újításokra, a terminálosabb cmd-re.