FreeRDP (v3)

Implémentation libre et open-source du protocole Remote Desktop Protocol ; xfreerdp est le client en ligne de commande standard pour accéder à des hôtes Windows via RDP. Free and open-source implementation of the Remote Desktop Protocol; xfreerdp is the standard command-line client for accessing Windows hosts over RDP.

↗ https://www.freerdp.com

Overview

FreeRDP is a full client/server implementation of Microsoft’s RDP protocol. On engagements the xfreerdp3 client is the everyday tool for interactive access to Windows hosts obtained via valid credentials, pass-the-hash, or NLA relay — supporting clipboard sharing, drive redirection, and RDP-level session recording for later review.

Common Usage

Standard interactive login

xfreerdp3 /v:<target> /u:<user> /p:<password>

Domain login

xfreerdp3 /v:<target> /u:<user> /d:<domain> /p:<password>

Pass-the-hash (NTLM hash instead of password)

xfreerdp3 /v:<target> /u:<user> /pth:<ntlm_hash>

Full screen, better performance, drive redirection

xfreerdp3 /v:<target> /u:<user> /p:<password> /f /drive:share,/tmp/share

Ignore certificate warnings (lab/engagement use)

xfreerdp3 /v:<target> /u:<user> /p:<password> /cert:ignore

Useful Options

Clipboard sync

xfreerdp3 /v:<target> /u:<user> /p:<password> +clipboard

Record the session to a file for later review/reporting

xfreerdp3 /v:<target> /u:<user> /p:<password> /video:/tmp/session.mp4

Restrict admin (console) session

xfreerdp3 /v:<target> /u:<user> /p:<password> /admin

Specify RDP security protocol explicitly

xfreerdp3 /v:<target> /u:<user> /p:<password> /sec:nla

Tips

  • /pth requires the server to negotiate NTLM (NLA); RestrictedAdmin mode must be enabled on the target for full pass-the-hash to work
  • Use /log-level:TRACE when debugging protocol negotiation failures
  • /dynamic-resolution avoids awkward scaling on multi-monitor setups
  • FreeRDP 3.x rewrote much of the client CLI syntax from 2.x — check /help if scripts were written against older versions
Help / Man page
xfreerdp3 [file] [options] [/v:<server>[:port]]

Common options:
  /v:<server>[:port]     Server address
  /u:<username>          Username
  /p:<password>          Password
  /d:<domain>            Domain
  /pth:<hash>            Pass-the-hash (NTLM)
  /f                     Fullscreen mode
  /admin                 Restricted admin / console session
  /cert:ignore           Ignore certificate validation errors
  /sec:<nla|tls|rdp>     Force security protocol
  /drive:<name>,<path>   Redirect local path as a drive
  /clipboard             Enable clipboard redirection
  /video:<file>          Record session to file
  /log-level:<level>     TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF
  /gdi:<sw|hw>           Software or hardware GDI rendering
  /h, /help              Show help

Vue d’ensemble

FreeRDP est une implémentation client/serveur complète du protocole RDP de Microsoft. En mission, le client xfreerdp3 est l’outil du quotidien pour un accès interactif aux hôtes Windows obtenu via des identifiants valides, du pass-the-hash, ou un relais NLA : il supporte le partage du presse-papiers, la redirection de lecteurs, et l’enregistrement de session au niveau RDP pour une revue ultérieure.

Utilisation courante

# Connexion interactive standard
xfreerdp3 /v:<target> /u:<user> /p:<password>

# Connexion au domaine
xfreerdp3 /v:<target> /u:<user> /d:<domain> /p:<password>

# Pass-the-hash (hash NTLM au lieu du mot de passe)
xfreerdp3 /v:<target> /u:<user> /pth:<ntlm_hash>

# Plein écran, meilleures performances, redirection de lecteur
xfreerdp3 /v:<target> /u:<user> /p:<password> /f /drive:share,/tmp/share

# Ignorer les avertissements de certificat (usage lab/mission)
xfreerdp3 /v:<target> /u:<user> /p:<password> /cert:ignore

Options utiles

# Synchronisation du presse-papiers
xfreerdp3 /v:<target> /u:<user> /p:<password> +clipboard

# Enregistrer la session dans un fichier pour revue/rapport ultérieur
xfreerdp3 /v:<target> /u:<user> /p:<password> /video:/tmp/session.mp4

# Restreindre à une session admin (console)
xfreerdp3 /v:<target> /u:<user> /p:<password> /admin

# Spécifier explicitement le protocole de sécurité RDP
xfreerdp3 /v:<target> /u:<user> /p:<password> /sec:nla

Conseils

  • /pth nécessite que le serveur négocie NTLM (NLA) ; le mode RestrictedAdmin doit être activé sur la cible pour que le pass-the-hash fonctionne pleinement
  • Utiliser /log-level:TRACE pour déboguer les échecs de négociation de protocole
  • /dynamic-resolution évite un scaling maladroit sur les configurations multi-écrans
  • FreeRDP 3.x a réécrit une grande partie de la syntaxe CLI client par rapport à la 2.x : vérifier /help si des scripts ont été écrits pour des versions plus anciennes
Aide / Page de manuel
xfreerdp3 [file] [options] [/v:<server>[:port]]

Common options:
  /v:<server>[:port]     Server address
  /u:<username>          Username
  /p:<password>          Password
  /d:<domain>            Domain
  /pth:<hash>            Pass-the-hash (NTLM)
  /f                     Fullscreen mode
  /admin                 Restricted admin / console session
  /cert:ignore           Ignore certificate validation errors
  /sec:<nla|tls|rdp>     Force security protocol
  /drive:<name>,<path>   Redirect local path as a drive
  /clipboard             Enable clipboard redirection
  /video:<file>          Record session to file
  /log-level:<level>     TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF
  /gdi:<sw|hw>           Software or hardware GDI rendering
  /h, /help              Show help