Dirottamento Sessioni Remote: Remote Service Session Hijacking (T1563)
Remote Service Session Hijacking descrive l'appropriazione da parte di un attaccante di sessioni già stabilite verso servizi remoti come RDP, SSH o Telnet, con l'obiettivo di muoversi lateralmente all'interno di un ambiente compromesso senza generare nuovi eventi di autenticazione.
La tecnica appartiene alla tattica TA0008 – Lateral Movement e si differenzia sostanzialmente dall'uso legittimo di credenziali valide: qui non viene aperta una nuova sessione, bensì viene ereditata o dirottata una connessione interattiva già autenticata da un utente legittimo. Questo rende l'attività particolarmente insidiosa perché eventi come Logon Success (EventID 4624) possono mancare o essere già stati registrati in un contesto benigno, riducendo drasticamente la visibilità dei classici controlli di identity.
Dal punto di vista della kill chain, la tecnica si colloca dopo una fase iniziale di compromissione con privilegi sufficienti (tipicamente SYSTEM o root) sull'host che ospita la sessione bersaglio. L'impatto operativo è significativo: consente pivoting verso sistemi ai quali l'attaccante non ha credenziali, aggira controlli MFA già superati dall'utente originale e permette di ereditare privilegi di amministratori di dominio momentaneamente connessi a jump server o console di management. Cinque mitigazioni MITRE (M1018, M1026, M1027, M1030, M1042) coprono il perimetro difensivo, ma la detection resta il pilastro centrale.
Nell'ambito di un esercizio red team autorizzato, il dirottamento di sessione richiede privilegi elevati sull'host bersaglio. Su Windows il vettore storico è RDP session hijacking tramite il comando nativo tscon.exe, che consente a un processo SYSTEM di collegarsi a una sessione RDP disconnessa senza richiedere password. La catena tipica prevede l'enumerazione delle sessioni con query user (o qwinsta), l'ottenimento di un contesto SYSTEM tramite PsExec (open source, Sysinternals) con il flag -s -i, e il collegamento alla sessione target con tscon
Un'alternativa consiste nel creare un servizio che esegua tscon come SYSTEM, tecnica documentata pubblicamente da Alexander Korznikov. Framework come Impacket (open source) e CrackMapExec/NetExec (open source) permettono di orchestrare l'enumerazione delle sessioni attive via WMI e RPC. Su ambienti di dominio, BloodHound (open source) evidenzia i path in cui un utente compromesso può raggiungere un host dove è connesso un Domain Admin, rendendo il session hijacking uno step di privilege escalation di fatto.
Su Linux la tecnica principale sfrutta screen e tmux: se un utente ha una sessione screen attiva con permessi permissivi, un attaccante con l'utenza corrispondente (o con root) può attaccarsi via screen -x
Su macOS scenari analoghi si presentano con sessioni VNC (Screen Sharing) e SSH multiplexate. In laboratorio è utile validare la tecnica in un range isolato con host Windows Server 2019+, workstation Linux con screen/tmux preinstallati e endpoint macOS con Screen Sharing abilitato, misurando quali eventi di logging vengono effettivamente generati (spoiler: molti meno di quanto ci si aspetti).
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo