Protocollo desktop remoto - Remote Desktop Protocol

Da Wikipedia, l'enciclopedia libera

Remote Desktop Protocol ( RDP ) è un protocollo proprietario sviluppato da Microsoft che fornisce a un utente un'interfaccia grafica per connettersi a un altro computer tramite una connessione di rete. L'utente utilizza il software client RDP per questo scopo, mentre l'altro computer deve eseguire il software server RDP.

Esistono client per la maggior parte delle versioni di Microsoft Windows (incluso Windows Mobile ), Linux , Unix , macOS , iOS , Android e altri sistemi operativi . I server RDP sono integrati nei sistemi operativi Windows; esiste anche un server RDP per Unix e OS X. Per impostazione predefinita, il server è in ascolto sulla porta TCP 3389 e sulla porta UDP 3389.

Microsoft attualmente si riferisce al proprio software client RDP ufficiale come Connessione desktop remoto , precedentemente "Client di Servizi terminal".

Il protocollo è un'estensione del protocollo di condivisione delle applicazioni ITU-T T.128 . Microsoft rende pubbliche alcune specifiche sul proprio sito web.

Storia

Ogni versione di Microsoft Windows da Windows XP in poi include un client RDC (Remote Desktop Connection) ("Terminal Services") installato ( mstsc.exe ) la cui versione è determinata da quella del sistema operativo o dall'ultimo Service Pack di Windows applicato. Il server di Servizi terminal è supportato come funzionalità ufficiale su Windows NT 4.0 Terminal Server Edition , rilasciato nel 1998, Windows 2000 Server , tutte le edizioni di Windows XP eccetto Windows XP Home Edition, Windows Server 2003 , Windows Home Server , su Windows Fundamentals for Legacy PC , nelle edizioni Windows Vista Ultimate, Enterprise e Business, Windows Server 2008 e Windows Server 2008 R2 e su Windows 7 Professional e versioni successive.

Microsoft fornisce il client richiesto per la connessione alle versioni RDP più recenti per i sistemi operativi di livello inferiore. Poiché i miglioramenti del server non sono disponibili di livello inferiore, le funzionalità introdotte con ciascuna versione RDP più recente funzionano solo sui sistemi operativi di livello inferiore quando ci si connette a un server RDP di versione superiore da questi sistemi operativi precedenti e non quando si utilizza il server RDP nel sistema operativo precedente.

Versione 4.0

Basato sul protocollo di condivisione delle applicazioni ITU-T T.128 (durante la bozza noto anche come "T.share") dalla serie di raccomandazioni T.120 , la prima versione di RDP (denominata versione 4.0) è stata introdotta da Microsoft con "Terminal Services ", come parte del loro prodotto Windows NT 4.0 Server, Terminal Server Edition. La Terminal Services Edition di NT 4.0 si basava sulla tecnologia MultiWin di Citrix , precedentemente fornita come parte di Citrix WinFrame su Windows NT 3.51, per supportare più utenti e sessioni di accesso simultaneamente. Microsoft ha richiesto a Citrix di concedere in licenza la sua tecnologia MultiWin a Microsoft per poter continuare a offrire il proprio prodotto di servizi terminal, poi denominato Citrix MetaFrame, su Windows NT 4.0. Le DLL fornite da Citrix incluse in Windows NT 4.0 Terminal Services Edition hanno ancora un copyright Citrix piuttosto che un copyright Microsoft. Le versioni successive di Windows hanno integrato direttamente il supporto necessario. La tecnologia di condivisione delle applicazioni T.128 è stata acquisita da Microsoft dallo sviluppatore di software del Regno Unito Data Connection Limited .

Versione 5.0

Questa versione è stata introdotta con Windows 2000 Server , ha aggiunto il supporto per una serie di funzioni, inclusa la stampa su stampanti locali, e mirava a migliorare l'utilizzo della larghezza di banda della rete.

Versione 5.1.0

Questa versione è stata introdotta con Windows XP Professional e includeva il supporto per colori e suoni a 24 bit. Il client è disponibile per Windows 2000 , Windows 9x , Windows NT 4.0 . Con questa versione, il nome del client è stato modificato da Client di Servizi terminal a Connessione desktop remoto ; l'eredità rimane fino ad oggi, tuttavia, poiché l'eseguibile sottostante è ancora chiamato mstsc.exe .

Versione 5.2.0

Questa versione è stata introdotta con Windows Server 2003 , includeva il supporto per le connessioni in modalità console, una directory di sessione e il mapping delle risorse locali. Inoltre introduce Transport Layer Security (TLS) 1.0 per l'autenticazione del server e per crittografare le comunicazioni del server terminal. Questa versione è incorporata in Windows XP Professional x64 Edition e Windows Server 2003 x64 e x86 Edition.

Versione 6.0

Questa versione è stata introdotta con Windows Vista e ha incorporato il supporto per le applicazioni Windows Presentation Foundation , l' autenticazione a livello di rete , lo spanning di più monitor e il supporto per desktop di grandi dimensioni e le connessioni TLS 1.0 . Il client versione 6.0 è disponibile per Windows XP SP2, Windows Server 2003 SP1 / SP2 (edizioni x86 e x64) e Windows XP Professional x64 Edition. Microsoft Remote Desktop Connection Client per Macintosh OS X è disponibile anche con supporto per Intel e PowerPC Mac OS versioni 10.4.9 e successive.

Versione 6.1.4

Questa versione è stata rilasciata nel febbraio 2008 ed è inclusa in Windows Server 2008 e in Windows Vista Service Pack 1. Il client è incluso in Windows XP SP3. Oltre alle modifiche relative al modo in cui un amministratore remoto si connette alla "console", questa versione ha nuove funzionalità introdotte in Windows Server 2008, come la connessione remota a singoli programmi e un nuovo sistema di reindirizzamento della stampante lato client che rende le capacità di stampa del client disponibile per le applicazioni in esecuzione sul server, senza dover installare i driver di stampa anche sul server d'altra parte, l'amministratore remoto può installare, aggiungere / rimuovere liberamente qualsiasi software o impostazione alla fine del client. Tuttavia, per avviare una sessione di amministrazione remota, è necessario essere membri del gruppo Administrators sul server a cui si sta tentando di connettersi.

Versione 7.0.0

Questa versione è stata rilasciata per la produzione nel luglio 2009 ed è inclusa in Windows Server 2008 R2 e in Windows 7 . Con questa release, cambiato anche dal Terminal Services di Servizi Desktop remoto . Questa versione ha nuove funzioni come il reindirizzamento di Windows Media Player, l'audio bidirezionale, il supporto per più monitor, il supporto Aero glass, l'accelerazione bitmap migliorata, il reindirizzamento Easy Print, l' ancoraggio della barra della lingua . Il client RDP 7.0 è disponibile su Windows XP SP3 e Windows Vista SP1 / SP2 tramite KB969084. Il client RDP 7.0 non è ufficialmente supportato nelle edizioni Windows Server 2003 x86 e Windows Server 2003 / Windows XP Professional x64.

La maggior parte delle funzionalità di RDP 7.0 come l'uso remoto di Aero glass, l'audio bidirezionale, il reindirizzamento di Windows Media Player, il supporto di più monitor e Easy Print Desktop remoto sono disponibili solo nelle edizioni Windows 7 Enterprise o Ultimate.

Versione 7.1.0

La versione 7.1 di RDP è stata inclusa con Windows 7 Service Pack 1 e Windows Server 2008 R2 SP1 nel 2010. Ha introdotto RemoteFX , che fornisce supporto GPU virtualizzato e codifica lato host.

Versione 8.0.0

Questa versione è stata rilasciata in Windows 8 e Windows Server 2012 . Questa versione ha nuove funzioni come Adaptive Graphics (rendering progressivo e relative tecniche), selezione automatica di TCP o UDP come protocollo di trasporto, supporto multi touch , supporto DirectX 11 per vGPU, reindirizzamento USB supportato indipendentemente dal supporto vGPU, ecc. il pulsante "qualità" viene visualizzato nella barra di connessione del client RDP per le connessioni RDP 8.0; facendo clic su di esso si forniscono ulteriori informazioni sulla connessione, incluso se UDP è in uso o meno.

I componenti client e server RDP 8.0 sono disponibili anche come componente aggiuntivo per Windows 7 SP1. Il client RDP 8.0 è disponibile anche per Windows Server 2008 R2 SP1, ma i componenti server non lo sono. L'add-on richiede l' installazione del protocollo DTLS come prerequisito. Dopo aver installato gli aggiornamenti, per abilitare il protocollo RDP 8.0 tra i computer Windows 7, è necessario un passaggio di configurazione aggiuntivo utilizzando l' editor Criteri di gruppo .

Una nuova funzionalità in RDP 8.0 è il supporto limitato per l'annidamento della sessione RDP; funziona solo per Windows 8 e Server 2012, tuttavia, Windows 7 e Server 2008 R2 (anche con l'aggiornamento RDP 8.0) non supportano questa funzione.

La funzione "ombra" di RDP 7, che consentiva a un amministratore di monitorare (snoop) su una connessione RDP, è stata rimossa in RDP 8. Anche la funzione di remoting Aero Glass (applicabile alle macchine Windows 7 che si connettono tra loro) è stata rimossa in RDP 8.

Versione 8.1.0

Questa versione è stata rilasciata con Windows 8.1 e Windows Server 2012 R2 . Un aggiornamento del client RDP 8.1 esiste anche per Windows 7 SP1, ma a differenza dell'aggiornamento RDP 8.0 per Windows 7, non aggiunge un componente server RDP 8.1 a Windows 7. Inoltre, se si desidera la funzione server RDP 8.0 su Windows 7, il È necessario installare l'aggiornamento KB 2592687 (client RDP 8.0 e componenti server) prima di installare l'aggiornamento RDP 8.1.

Il supporto per lo shadowing della sessione è stato aggiunto di nuovo nella versione RDP 8.1. Questa versione risolve anche alcuni problemi visivi con Microsoft Office 2013 durante l'esecuzione come RemoteApp .

La versione 8.1 dell'RDP abilita anche una modalità "amministratore limitato". L'accesso a questa modalità richiede solo la conoscenza della password con hash, piuttosto che del suo testo in chiaro , rendendo quindi possibile un attacco con hash . Microsoft ha rilasciato un documento di 82 pagine che spiega come mitigare questo tipo di attacco.

Versione 10.0.0

La versione 10.0 di RDP include le seguenti nuove funzionalità: Zoom AutoSize (utile per i client HiDPI). Inoltre, sono stati inclusi miglioramenti della compressione grafica utilizzando H.264 / AVC.

Caratteristiche

  • Supporto per colori a 32 bit. Sono supportati anche i colori a 8, 15, 16 e 24 bit.
  • Crittografia a 128 bit, utilizzando l' algoritmo di crittografia RC4 , a partire dalla versione 6. Supporto TLS dalla versione 5.2.
  • Il reindirizzamento audio consente agli utenti di elaborare l'audio su un desktop remoto e di reindirizzare l'audio al proprio computer locale.
  • Il reindirizzamento del file system consente agli utenti di utilizzare i propri file locali su un desktop remoto all'interno della sessione del terminale.
  • Il reindirizzamento della stampante consente agli utenti di utilizzare la propria stampante locale all'interno della sessione del terminale come farebbero con una stampante condivisa in rete o in locale.
  • Il reindirizzamento delle porte consente alle applicazioni in esecuzione nella sessione del terminale di accedere direttamente alle porte seriali e parallele locali.
  • Il computer remoto e il computer locale possono condividere gli appunti.

Microsoft ha introdotto le seguenti funzionalità con il rilascio di RDP 6.0 nel 2006:

  • Windows senza soluzione di continuità: le applicazioni remote possono essere eseguite su una macchina client servita da una connessione Desktop remoto. È disponibile da RDP 6.
  • Programmi remoti: pubblicazione di applicazioni con associazioni di tipi di file lato client.
  • Terminal Services Gateway: consente di utilizzare un server IIS front-end per accettare connessioni (sulla porta 443 ) per server Terminal Services back-end tramite una connessione https , simile a come RPC su https consente ai client Outlook di connettersi a un back -end fine del server Exchange 2003. Richiede Windows Server 2008 .
  • Autenticazione a livello di rete
  • Supporto per il remoting del tema Aero Glass (o Composed Desktop), inclusa la tecnologia di smussatura dei caratteri ClearType .
  • Supporto per la comunicazione remota di applicazioni Windows Presentation Foundation : i client compatibili che dispongono del supporto .NET Framework 3.0 possono visualizzare gli effetti completi di Windows Presentation Foundation su un computer locale.
  • Riscrittura del reindirizzamento del dispositivo per scopi più generali, consentendo l'accesso a una maggiore varietà di dispositivi.
  • Completamente configurabile e creabile tramite script tramite Strumentazione gestione Windows .
  • Ottimizzazione della larghezza di banda migliorata per i client RDP.
  • Supporto per Transport Layer Security (TLS) 1.0 su entrambe le estremità del server e del client (può essere negoziato se entrambe le parti sono d'accordo, ma non è obbligatorio in una configurazione predefinita di qualsiasi versione di Windows).
  • Supporto di più monitor per consentire a una sessione di utilizzare più monitor sul client (disabilita la composizione del desktop)

La versione 7.1 di RDP nel 2010 ha introdotto la seguente funzionalità:

  • RemoteFX : RemoteFX fornisce supporto GPU virtualizzato e codifica lato host; viene fornito come parte di Windows Server 2008 R2 SP1.

Problemi di sicurezza

La versione 5.2 dell'RDP nella sua configurazione predefinita è vulnerabile a un attacco man-in-the-middle . Gli amministratori possono abilitare la crittografia del livello di trasporto per mitigare questo rischio.

Le sessioni RDP sono anche suscettibili alla raccolta delle credenziali in memoria, che può essere utilizzata per lanciare attacchi pass the hash .

Nel marzo 2012, Microsoft ha rilasciato un aggiornamento per una vulnerabilità di sicurezza critica nel RDP. La vulnerabilità consentiva a un computer Windows di essere compromesso da client non autenticati e worm di computer .

La versione 6.1 del client RDP può essere utilizzata per rivelare i nomi e le immagini di tutti gli utenti sul server RDP (indipendentemente dalla versione di Windows) per sceglierne uno, se non è specificato alcun nome utente per la connessione RDP.

Nel marzo 2018 Microsoft ha rilasciato una patch per CVE - 2018-0886 , una vulnerabilità legata all'esecuzione di codice in modalità remota in CredSSP, che è un fornitore di supporto per la sicurezza coinvolto nel desktop remoto Microsoft e nella gestione remota di Windows, scoperta da Preempt.

Nel maggio 2019 Microsoft ha rilasciato una patch di sicurezza per CVE - 2019-0708 (" BlueKeep "), una vulnerabilità che consente la possibilità di esecuzione di codice in modalità remota e che Microsoft ha avvertito essere "wormable", con il potenziale per causare interruzioni diffuse. Insolitamente, le patch sono state rese disponibili anche per diverse versioni di Windows che avevano raggiunto la fine del loro ciclo di vita, come Windows XP . Non è seguito alcuno sfruttamento dannoso immediato, ma gli esperti sono stati unanimi sul fatto che ciò fosse probabile e potesse causare danni diffusi in base al numero di sistemi che sembravano essere rimasti esposti e privi di patch.

Nel luglio 2019, Microsoft ha rilasciato una patch di sicurezza per CVE - 2019-0887 , una vulnerabilità RDP che interessa Hyper-V .

Implementazioni non Microsoft

Esistono numerose implementazioni non Microsoft di client e server RDP che implementano sottoinsiemi della funzionalità Microsoft. Ad esempio, il client della riga di comando open source rdesktop è disponibile per i sistemi operativi Linux / Unix e Microsoft Windows. Ci sono molti client GUI, come tsclient e KRDC , che sono costruiti sopra rdesktop; CoRD è un tale client per il Macintosh.

Nel 2009, rdesktop è stato biforcato come FreeRDP, un nuovo progetto che mira a modularizzare il codice, affrontare vari problemi e implementare nuove funzionalità. FreeRDP viene fornito con il proprio client da riga di comando xfreerdp, che supporta Seamless Windows in RDP6. Intorno al 2011, il progetto ha deciso di abbandonare il fork e invece di riscriverlo con licenza Apache , aggiungendo più funzionalità come RemoteFX, RemoteApp e NTLMv2. Una distribuzione commerciale chiamata Thincast è stata avviata nel 2019. Un client multipiattaforma basato su FreeRDP incluso il supporto Vulkan / H.264 è seguito nell'estate 2020. C'è anche un'applicazione GTK chiamata Remmina .

I server RDP open source su Unix includono FreeRDP, ogon project e xrdp . Il client Connessione desktop remoto di Windows può essere utilizzato per connettersi a tale server.

Le soluzioni client RDP proprietarie come rdpclient sono disponibili come applicazione autonoma o incorporate con l'hardware del client. Un nuovo paradigma di accesso, l'accesso basato su browser, ha consentito agli utenti di accedere a desktop e applicazioni Windows su qualsiasi host RDP, come host di sessione Microsoft Remote Desktop (RDS) (Servizi terminal) e desktop virtuali, nonché PC fisici remoti.

C'è anche un VirtualBox Remote Display Protocol (VRDP) utilizzato nell'implementazione della macchina virtuale VirtualBox da Oracle . Questo protocollo è compatibile con tutti i client RDP, come quello fornito con Windows ma, a differenza dell'RDP originale, può essere configurato per accettare connessioni non crittografate e non protette da password, il che può essere utile in reti sicure e affidabili, come LAN domestiche o aziendali . Per impostazione predefinita, il server RDP di Microsoft rifiuta le connessioni agli account utente con password vuote (ma questo può essere modificato con l' Editor criteri di gruppo ). Anche le opzioni di autorizzazione esterna e ospite sono fornite da VRDP. Non importa quale sistema operativo è installato come guest perché VRDP è implementato a livello di macchina virtuale (host), non nel sistema guest. È richiesto il VirtualBox Extension Pack proprietario .

Brevetti

Microsoft richiede implementazioni di terze parti per concedere in licenza i relativi brevetti RDP. A partire da febbraio 2014, la misura in cui i client open source soddisfano questo requisito rimane sconosciuta.

Utilizzare nella criminalità informatica

I ricercatori di sicurezza hanno riferito che i criminali informatici vendono server RDP compromessi su forum clandestini e negozi specializzati in RDP illeciti. Questi PSR compromessi possono essere utilizzati come "terreno di gioco" per condurre altri tipi di frode o per accedere a dati personali o aziendali sensibili. I ricercatori segnalano inoltre casi di criminali informatici che utilizzano RDP per rilasciare malware direttamente sui computer.

Guarda anche

Riferimenti

link esterno