Il sistema operativo Windows offre diversi modi per gestire i sistemi remoti. Telnet, RDP, VNC sono alcuni di loro. Ma queste opzioni sono generalmente legate a un’interfaccia utente grafica. Se preferiamo un’interfaccia a riga di comando c’è un’alternativa chiamata Psexec.
Psexec è in realtà un set di strumenti costituito dai seguenti strumenti.,ed utenti in remoto sistemi
PsLogList
utilizzato per visualizzare i registri eventi risiede su sistemi remotiPsPasswd
usato per cambiare utente password sul sistema remotoPsPing
utilizzato per eseguire il ping dal sistema remotoPsServervice
utilizzato per visualizzare e gestire i servizi di Windows sul sistema remotoPsShutdown
utilizzato per l’arresto, log off, sospendere e riavviare il sistema remoto di WindowsPsSuspend
usato per sospendere e riprendere i processi di un sistema remoto di Windows.,PsUptime
utilizzato per visualizzare l’uptime del sistema remoto La maggior parte di questi strumenti sono forniti in architettura a 32 e 64 bit. I binari possono essere utilizzati di conseguenza.
Scarica Psexec Tools
PStools è sviluppato da Mark Russinovich e può essere scaricato dal seguente link. PStools fa parte della suite “Sysinternals” che fornisce molti strumenti per la gestione del sistema e le funzionalità interne. PStools può essere scaricato dal sito web Sysinternals.,
Esegui comando sistema remoto
La maggior parte dell’utilizzo di base del comando Psexec è solo in esecuzione semplicemente comando sul sistema remoto. Per eseguire un comando sul sistema remoto, dovremmo fornire un nome utente e una password con il comando da eseguire su un sistema remoto. La sintassi di Ps exec è come di seguito.
psexec
In questo esempio eseguiremo il comandoipconfig
sul sistema remoto dove il suo indirizzo IP è192.168.122.66
. Il nome utente è Administrator
e la password è123456Ww
.,
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww ipconfig
Come possiamo vedere il comando viene eseguito nel sistema remoto senza alcun problema.
Redirect Psexec Command Output
Dopo aver eseguito il comando sul sistema remoto, l’output del comando verrà stampato nell’output standard corrente, che è la nostra shell corrente. Questo output può essere reindirizzato in un file con >., Se abbiamo un sacco di sistemi remoti per eseguire il comando questa opzione sarà molto utile.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww ipconfig > 192.168.122.66_ifconfig
In questo esempio l’output del comandoipconfig
viene salvato nel file denominato192.168.122.66_ipcopnfig
.
Passa l’Hash
Nell’esempio precedente, abbiamo fornito la password utente. L’unica opzione non è la password utente testo in chiaro. Possiamo anche fornire il valore hash del token utente. Seguendo l’esempio, forniamo l’hash del token utente.,
$ psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t ipconfig
Copia il comando dal locale al sistema remoto
L’esecuzione di comandi sul sistema remoto è una caratteristica molto utile, ma c’è un’altra caratteristica utile che faciliterà i lavori degli amministratori di sistema e dei pen-tester. Psexec può essere utilizzato per copiare il comando dal sistema locale al sistema remoto. Useremo l’opzione-c
per copiare. Una volta terminati i comandi, l’istanza remota verrà eliminata.
In questo esempio copieremo il cmd.exe
. Dopo l’operazione di copia è terminata cmd.,exe verrà avviato sul sistema remoto.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -c cmd.exe
Come abbiamo possiamo vedere che otteniamo una shell cmd sul sistema remoto.
Esegui comando come utente di sistema
Mentre esegui comandi sul sistema remoto, i privilegi e il proprietario del processo saranno l’utente fornito. Se abbiamo bisogno di cambiare l’utente proprietario comandi remoti per ilSystem
utente forniremo-s
opzione.,
In questo esempio useremo regedit.exe
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -s regedit.exe
Esegui Applicazione GUI Sul Sistema Remoto
sistemi operativi Windows fornire GUI di default. Psexec può essere utilizzato per aprire l’applicazione GUI sul sistema remoto nella console utente specificata. Console utente significa semplicemente desktop utente.
In questa applicazione, inizieremo notepad.exe
sul sistema remoto. Il sistema remoto Administrator
utente può interagire con questo blocco note.,
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -i notepad.exe
Avremo il nostro locale shell dopo che l’utente remoto si chiude il blocco note. Dopo la chiusura il codice di uscita verrà stampato sulla console psexec.
Creare Shell interattiva sul sistema remoto
Fino ad ora, abbiamo eseguito comandi da remoto. Al termine dell’esecuzione del comando, la connessione del sistema remoto viene chiusa. Questa è come una connessione di sessione., Psexec fornisce una shell remota o una riga di comando. Psexec collega remoto e ci dà una shell MS-DOS. Per ottenere una shell remota, forniremo il comandocmd.exe
nel sistema remoto.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww cmd.exe
Esegui Regedit con Privilegi di Sistema
registro di Windows può essere gestito con la GUI strumento denominato “Regedit”., Regedit è accessibile con l’utente corrente, ma in alcuni casi può essere richiesta la modifica del registro di sistema locale con i privilegi “Sistema”. Possiamo aprire il “Regedit” con privilegi di sistema con il seguente comando psexec.
$ psexec -s -i regedit.exe
Psexec Tools
Fino ad ora generalmente, abbiamo fornito comandi per eseguire sistemi remoti. Come amministratore di sistema le operazioni quotidiane non cambiano frequentemente. Psexec toolkit fornisce alcuni semplici comandi da eseguire direttamente senza aggiungere comando come parametro. Vedremo questi strumenti di seguito.,
File elenco Sul sistema remoto Con PsFile
Comando PsFile può essere utilizzato per elencare o chiudere i file aperti. La sintassi è molto simile al comando PSexec. In questo esempio elencheremo i file che si trovano in C:\Users\
sul sistema remoto.
$ psfile \\192.168.122.66 -u Administrator -p 123456Ww
Elenco di SID Sul Sistema Remoto Con PsGetSid
SID è utilizzato per identificare gli utenti Windows in maniera più precisa., We can list provided users SID with PsGetSid
command like below.
$ psgetsid \\192.168.122.66 -u Administrator -p 123456Ww
Get Remote System Information With PSInfo
PsInfo is a tool used to get remote system information like Uptime, Version, Windows variant etc.,
IE Version
mostra la versione di Internet ExplorerSystem Root
mostra dove si trova il funzionamento del sistema è installatoProcessor
mostra processore o thread countProcessor Speed
Physical Memory
Video Driver
mostra attualmente caricato il driver di nomeElenco del Processo Al Sistema Remoto Con PsList
i Processi in esecuzione sul sistema remoto può essere facilmente elencati con PsList
comando.,
$ pslist \\192.168.122.66 -u Administrator -p 123456Ww
The output will provide following information about remote system processes.,
-
Name
è il nome del file eseguibile -
Pid
i processi ID che identifica i processi -
Pri
è la priorità che gli effetti del processo di prestazioni in heavyload volte -
Thd
è il numero di thread -
Hnd
è aperto il gestore dei file di conte -
CPU Time
è totale risorse di CPU, come il tempo -
Elapsed Time
è il tempo dall’inizio del processo.,
Uccidi il processo sul sistema remoto Con PsKill
I processi in esecuzione sul sistema remoto possono essere facilmente uccisi con il comandoPsKill
. Per uccidere il processo dovremmo fornire l’ID del processo o il nome del processo come argomento. Uccideremo il processo remoto con id processo 2064
.,
$ pskill \\192.168.122.66 -u Administrator -p 123456Ww 2064
ottenere un messaggio che dice Process 2064 on 192.168.122.66 killed....
Elenco Registri Eventi di Sistema Remoto Con PsLogList
Remote log di sistema possono essere scaricati in locale sistema facilmente con PsLogList
comando. Se usiamo questo comando senza alcun parametro aggiuntivo scaricherà tutti i registri degli eventi dal sistema remoto che compilerà la riga di comando., Quindi per l’esempio limiteremo i registri degli eventi degli ultimi 5 minuti con l’opzione -m
.
$ psloglist \\192.168.122.66 -u Administrator -p 123456Ww -m 5
Cambia Password Sul Sistema Remoto Con PsPasswd
Sistema remoto utenti, le password possono essere modificate facilmente con PSPasswd
comando. In questo esempio cambieremo la password utente Administrator
in 123456Aa
.,
$ pspasswd \\192.168.122.66 -u Administrator -p 123456Ww Administrator 123456Aa
Ping Con PsPing
un Altro strumento utile è PsPing
che crea i pacchetti ICMP ping . Questo comando verrà eseguito sistema locale.
$ psping google.com
Gestire il servizio sul sistema remoto Con PsService
PsService
comando viene utilizzato per elencare, avviare, arrestare i servizi sul sistema remoto.,
List Services
We can list remote service with query
option.
$ psservice \\192.168.122.66 -u Administrator -p 123456Aa query
Start Service Remotely
Remote service can be started with start
option. In this example we will start the service named ALG
service.,
$ psservice \\192.168.122.66 -u Administrator -p 123456Aa start ALG
Dopo che il servizio ha avviato le informazioni informazioni sul servizio è stampato.
Interrompere il servizio in remoto
Interromperemo il ALG
servizio nel seguente esempio.,
$ psservice \\192.168.122.66 -u Administrator -p 123456Aa stop ALG
Shutdown, Reboot, Suspend Remote System With PSShutdown
Remote system can be shut down with PSShutdown
command like below.
$ psshutdown \\192.168.122.66 -u Administrator -p 123456Aa -k