Grazie all'Autore: Ing. Massimo Giustiniani
Capita di sedersi alla console di un PC (o di connettersi da remoto) e voler avere un quadro di cosa stia facendo, magari abbiamo il dubbio
che possano essere presenti servizi indesiderati o connessioni che non dovrebbero esserci o vorremmo sapere quali utenti sono connessi alle
risorse della macchina.
Vediamo alcuni strumenti utili a questo scopo per sistemi operativi Microsoft (diciamo orientativamente da Windows 7 in poi o Server da
2008 in su). Si tratta di utility di sistema o che possono essere eseguite dalla suite di strumenti Sysinternals, un insieme di tools di grande
utilità che è consigliabile avere a portata di mano (Possono essere downloadati nella sezione download).
Una volta effettuato il download sarà utile creare una cartella in cui espandere il file .zip scaricato e rendere disponibili le utility,
aggiungendo eventualmente al Path il percorso della cartella.
logonsessions, una parte della schermata di output con SID noti
Il primo passo è quello di avere un’idea di cosa è accaduto al PC prima che ci avvicinassimo. C’è una finestra DOS aperta? Possiamo vedere
quali comandi sono stati inseriti precedentemente, sia scrollando con le freccette su e giù sia, più elegante, digitando il comando
doskey /history
Fatto questo, vediamo chi è connesso al PC, sia in locale che da remoto. Possiamo usare
psloggedon
(Sysinternals) che appunto indica chi è loggato localmente e chi è connesso alle risorse di rete
C:\Windows\system32>psloggedon
PsLoggedon v1.35 - See who's logged on
Copyright (C) 2000-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
Users logged on locally:
2/16/2019 1:31:32 PM MYDOM\administrator
Users logged on via resource shares:
2/16/2019 9:19:48 PM mg-wks\max
Possiamo naturalmente anche usare il comando nativo,
net session
ritorna l’ip address e lo username di chi è connesso al nostro PC. Richiede accesso elevato (come amministratore).
C:\Users\Administrator.SRV01>net session
Computer User name Client Type Opens Idle time
-------------------------------------------------------------------------------
\\10.0.0.78 max 2 00:10:04
The command completed successfully.
logonsessions -p
(Sysinternals) fornisce la lista degli account che sono al momento loggedin su PC. L’opzione -p ci consente di avere anche info su process
ID e chi lo ha lanciato. Nel caso di esempio è stato eseguito su un Windows 2012 Server. Si possono notare un paio di elementi:
- la quantità di account connessi è molto maggiore di quanto si potrebbe pensare
- alcuni di questi account presentano dei SID di formato particolare (ad esempio S-1-5-18 ).
Sono account di sistema, ed hanno dei SID noti, sempre uguali. Ad esempio S-1-5-18 è un service account usato da sistema operativo.
Di seguito un esempio (editato per ridurlo a dimensioni ragionevoli).
Nel tipo di logon si identificano i moduli che si avviano come servizio (logon type: service), rispetto a ciò che si avvia come interactive,
network, o remote interactive (in questo caso una sessione di desktop remoto).
Molti task si avviano con SID che identificano entità di sistema.
Ad esempio S-1-5 individua NT Security Authority. La tabella dei SID noti si trova qui, anche se non cita, curiosamente, S-1-5-90, che fa
riferimento al Microsoft Window Manager.
Altre info sui SID noti e meno noti si trovano qui e qui
Notiamo infine come l’Administrator abbia SID terminante con 500 come è sempre nei sistemi operativi Microsoft, connesso mediante
sessione remota. Anche se si fosse chiamato diversamente e non administrator, il SID terminante in 500 avrebbe denunciato la sua natura
di built-in administrator.
1] Logon session 00000000:0000dede:
User name: Window Manager\DWM-1
Auth package: Negotiate
Logon type: Interactive
Session: 1
Sid: S-1-5-90-1
Logon time: 2/16/2019 1:21:24 PM
Logon server:
DNS Domain:
UPN:
848: dwm.exe[2] Logon session 00000000:000003e5:
User name: NT AUTHORITY\LOCAL SERVICE
Auth package: Negotiate
Logon type: Service
Session: 0
Sid: S-1-5-19
Logon time: 2/16/2019 1:21:25 PM
Logon server:
DNS Domain:
UPN:
868: svchost.exe
944: svchost.exe
1064: svchost.exe
1692: dasHost.exe
4892: WmiPrvSE.exe[3] Logon session 00000000:0003eadf:
User name: MYDOM\SRV01$
Auth package: Kerberos
Logon type: Network
Session: 0
Sid: S-1-5-18
Logon time: 2/16/2019 1:22:57 PM
Logon server:
DNS Domain: MYDOM.LOCAL
UPN:[4] Logon session 00000000:000458c8:
User name: MYDOM\SRV01$
Auth package: Kerberos
Logon type: Network
Session: 0
Sid: S-1-5-18
Logon time: 2/16/2019 1:23:00 PM
Logon server:
DNS Domain: MYDOM.LOCAL
UPN:[5] Logon session 00000000:000cad0f:
User name: Window Manager\DWM-2
Auth package: Negotiate
Logon type: Interactive
Session: 2
Sid: S-1-5-90-2
Logon time: 2/16/2019 1:31:29 PM
Logon server:
DNS Domain:
UPN:
2904: dwm.exe[6] Logon session 00000000:000cec20:
User name: MYDOM\administrator
Auth package: Kerberos
Logon type: RemoteInteractive
Session: 2
Sid: S-1-5-21-2640026123-xxxxxxxxx-xxxxxxxxxxx-500
Logon time: 2/16/2019 1:31:29 PM
Logon server: SRV01
DNS Domain: MYDOM.LOCAL
UPN: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
4176: taskhostex.exe
4372: rdpclip.exe
4560: explorer.exe
5068: jusched.exe
3824: jucheck.exe
6012: cmd.exe
5340: conhost.exe
1028: cmd.exe
4604: conhost.exe
5152: logonsessions.exe(...)