Abuso di Servizi di Sistema: System Services (T1569)
La tecnica T1569 - System Services descrive l'abuso di servizi o daemon di sistema per eseguire comandi e programmi arbitrari. Rientra nella tattica TA0002 (Execution) e si colloca tipicamente nelle fasi centrali della kill chain, dopo l'ottenimento di un accesso iniziale e prima o durante il movimento laterale e il consolidamento.
A differenza di tecniche di persistenza pura come Create or Modify System Process, qui l'attenzione è sull'esecuzione: il servizio può essere effimero, creato per lanciare un payload una tantum e poi rimosso, oppure sfruttato tramite invocazioni remote per eseguire codice su macchine terze. Su Windows il vettore classico è il Service Control Manager manipolato via sc.exe, PowerShell o API native; su Linux le orchestrazioni passano da systemd, init.d o service; su macOS il perno è launchd con i suoi property list.
L'impatto è duplice. Sul piano operativo, l'esecuzione avviene con privilegi elevati (spesso SYSTEM su Windows o root su Unix), aggirando controlli applicativi che agiscono solo su processi utente. Sul piano investigativo, le esecuzioni via servizio si mimetizzano nel rumore amministrativo legittimo, rendendo la detection dipendente da baseline accurate. MITRE elenca 4 mitigazioni (M1018, M1022, M1026, M1040) e una strategia di detection multipiattaforma (DET0279) che copre Windows, Linux e macOS con analisi dedicate.
Su Windows il punto di partenza in un ingaggio red team è il Service Control Manager. La creazione di un servizio con binario controllato dall'attaccante avviene con la sintassi nativa sc.exe create
Per scenari più stealth, SharpNoPSExec e moduli come Invoke-ServiceAbuse di PowerSploit (open source) manipolano servizi esistenti mal configurati: se un servizio ha ACL deboli, si può riscrivere il ImagePath e riavviarlo per ottenere esecuzione privilegiata senza crearne uno nuovo. Il tool AccessChk (gratuito, Sysinternals) è utile per enumerare servizi vulnerabili: accesschk.exe -uwcqv "Authenticated Users" * elenca i servizi scrivibili dagli utenti autenticati.
Su Linux la creazione di un unit file in /etc/systemd/system/backdoor.service con direttiva ExecStart seguita da systemctl daemon-reload && systemctl enable --now backdoor.service fornisce esecuzione e persistenza. Per ambienti privi di systemd si ricade su script in /etc/init.d/ o cron. In post-exploitation, framework come Metasploit (open source) e Sliver (open source) automatizzano queste operazioni tramite moduli dedicati.
Su macOS il pattern è la scrittura di un file .plist in /Library/LaunchDaemons/ (root) o ~/Library/LaunchAgents/ (utente), seguito da launchctl load
In ambienti ESXi, che espongono servizi tramite esxcli, si osserva l'abuso di script custom registrati come servizi persistenti sull'hypervisor. In laboratorio, ogni catena va testata con Sysmon attivo e telemetria centralizzata, così da validare anche la detection lato blue team nello stesso esercizio.
Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?
Accedi alle lezioni gratuite e segui il percorso corretto fin dal primo passo