El Sistema Operativo Windows proporciona diferentes formas de administrar sistemas remotos. Telnet, RDP, VNC son algunos de ellos. Pero estas opciones generalmente están vinculadas a una interfaz gráfica de usuario. Si preferimos una interfaz de línea de comandos existe una alternativa llamada Psexec.
Psexec es en realidad un conjunto de herramientas que consta de las siguientes herramientas.,ed en los usuarios en los sistemas remotos
PsLogList
se utiliza para listar los registros de eventos que residen en los sistemas remotosPsPasswd
se utiliza para cambiar la contraseña de usuario dada en el sistema remotoPsPing
se utiliza para hacer ping desde el sistema remotoPsServervice
se usa para listar y administrar servicios de Windows en el sistema remotoPsShutdown
se usa para apagar, cerrar sesión, suspender y reiniciar el sistema remoto de WindowsPsSuspend
se usa para suspender y reanudar procesos en el sistema remoto de Windows.,PsUptime
se utiliza para mostrar el tiempo de actividad del sistema remotoLa mayoría de estas herramientas se proporcionan en arquitectura de 32 y 64 bits. Los binarios se pueden usar en consecuencia.
descargar Psexec Tools
PsTools está desarrollado por Mark Russinovich y se puede descargar desde el siguiente enlace. PStools es parte de la suite» Sysinternals » que proporciona una gran cantidad de herramientas para la administración del sistema y características internas. PStools se puede descargar desde el Sitio Web de Sysinternals.,
Ejecutar comando sistema remoto
El uso más básico del comando Psexec es simplemente ejecutar simplemente comando en el sistema remoto. Para ejecutar un comando en el sistema remoto, debemos proporcionar un nombre de usuario y una contraseña con el comando que se ejecutará en un sistema remoto. La sintaxis del Ps exec es la siguiente.
psexec
En este ejemplo vamos a ejecutar ipconfig
comando en el sistema remoto donde su dirección IP es 192.168.122.66
. El nombre de usuario es Administrator
y la contraseña es 123456Ww
.,
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww ipconfig
Como podemos ver, el comando se ejecuta en el sistema remoto sin ningún problema.
Redirect Psexec Command Output
después de ejecutar el comando en el sistema remoto, la salida del comando se imprimirá en la salida estándar actual, que es nuestra shell actual. Esta salida se puede redirigir a un archivo con >., Si tenemos muchos sistemas remotos para ejecutar el comando esta opción será muy útil.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww ipconfig > 192.168.122.66_ifconfig
En este ejemplo, la etiqueta ipconfig
comando de salida se guardan en un archivo llamado 192.168.122.66_ipcopnfig
.
Pasar El Hash
En el ejemplo anterior, hemos proporcionado la contraseña de usuario. La única opción no es la contraseña de usuario de texto claro. También podemos proporcionar el valor hash del token de usuario. Siguiendo el ejemplo, proporcionamos el hash del token de usuario.,
$ psexec \\192.168.122.66 -u Administrator -p q23q34t34twd3w34t34wtw34t ipconfig
copiar comando del sistema local al sistema remoto
ejecutar comandos en el sistema remoto es una característica muy útil, pero hay otra característica útil que facilitará los trabajos de administradores de sistemas y pen-testers. Psexec se puede usar para copiar el comando del sistema local al sistema remoto. Usaremos la opción -c
para copiar. Una vez finalizados los comandos, se eliminará la instancia remota.
En este ejemplo vamos a copiar el cmd.exe
. Después de la operación de copia se termina cmd.,exe se iniciará en el sistema remoto.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -c cmd.exe
Como podemos ver tenemos un cmd shell en el sistema remoto.
Ejecutar comando como usuario del sistema
mientras se ejecutan comandos en el sistema remoto, los privilegios y el propietario del proceso serán el usuario proporcionado. Si necesitamos cambiar el usuario propietario de comandos remotos a la opción System
user proporcionaremos -s
.,
En este ejemplo vamos a utilizar la etiqueta regedit.exe
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -s regedit.exe
Ejecutar Aplicación de interfaz de usuario En el Sistema Remoto
los sistemas operativos Windows proporcionar GUI por defecto. Psexec se puede utilizar para abrir la aplicación GUI en el sistema remoto en la consola de usuario especificada. Consola de usuario simplemente significa escritorio de usuario.
en esta aplicación, iniciaremos notepad.exe
en el sistema remoto. El usuario del sistema remoto Administrator
puede interactuar con este bloc de notas.,
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww -i notepad.exe
obtendremos nuestro shell local después de que el usuario remoto cierre el bloc de notas. Después de cerrar el código de salida se imprimirá en la consola psexec.
crear Shell interactivo en el sistema remoto
hasta ahora, hemos ejecutado comandos de forma remota. Una vez finalizada la ejecución del comando, se cierra la conexión del sistema remoto. Esto es como una conexión de sesión., Psexec proporciona un shell remoto o línea de comandos. Psexec conecta remote y nos da un shell MS-DOS. Para obtener un shell remoto, proporcionaremos el comando cmd.exe
en el sistema remoto.
$ psexec \\192.168.122.66 -u Administrator -p 123456Ww cmd.exe
ejecutar regedit con privilegios del sistema
el registro de Windows se puede administrar con la herramienta GUI llamada «regedit»., Regedit se puede acceder con el usuario actual, pero en algunos casos se puede requerir editar el registro del sistema local con los privilegios de «sistema». Podemos abrir el «Regedit» con privilegios del sistema con el siguiente comando psexec.
$ psexec -s -i regedit.exe
Psexec Tools
hasta ahora generalmente, proporcionábamos comandos para ejecutar sistemas remotos. Como administrador del sistema, las operaciones diarias no cambian con frecuencia. Psexec toolkit proporciona algunos comandos simples para ejecutarse directamente sin agregar comandos como parámetro. Veremos estas herramientas a continuación.,
listar archivo en el sistema remoto con PsFile
el comando PsFile se puede usar para listar o cerrar archivos abiertos. La sintaxis es muy similar al comando PSexec. En este ejemplo enumeraremos los archivos ubicados en C:\Users\
en el sistema remoto.
$ psfile \\192.168.122.66 -u Administrator -p 123456Ww
list SID en el sistema remoto con psgetsid
SID se utiliza para identificar a los usuarios de Windows de una manera más detallada., 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
muestra versión de Internet ExplorerSystem Root
mostrar donde está la operación del sistema se instalaProcessor
muestra procesador o hilosProcessor Speed
Physical Memory
Video Driver
muestra actualmente cargado nombre del controladorLista de Procesos En El Sistema Remoto Con PsList
los Procesos que se ejecutan en el sistema remoto puede ser fácilmente aparece con la etiqueta PsList
comando.,
$ pslist \\192.168.122.66 -u Administrator -p 123456Ww
The output will provide following information about remote system processes.,
-
Name
es el nombre del archivo ejecutable -
Pid
es el ID de procesos que identifica los procesos -
Pri
es la prioridad que afecta el rendimiento del proceso en tiempos de carga pesada -
Thd
es el número de subproceso -
Hnd
es el número de controlador de archivos abierto -
CPU Time
es el recurso de CPU total utilizado como tiempo -
Elapsed Time
es el tiempo desde el inicio de el proceso.,
Kill Process At the Remote System With PsKill
los procesos que se ejecutan en el sistema remoto se pueden matar fácilmente con el comando PsKill
. Con el fin de matar al proceso, debemos proporcionar el id del proceso o el nombre del proceso como argumento. Mataremos el proceso remoto con process id 2064
.,
$ pskill \\192.168.122.66 -u Administrator -p 123456Ww 2064
recibimos un mensaje que dice Process 2064 on 192.168.122.66 killed....
listar registros de eventos en el sistema remoto con psloglist
los registros del sistema remoto se pueden descargar fácilmente en el sistema local con el comando PsLogList
. Si usamos este comando sin ningún parámetro adicional volcará todos los registros de eventos del sistema remoto que completará la línea de comandos., Para el ejemplo, limitaremos los registros de eventos de los últimos 5 minutos con la opción -m
.
$ psloglist \\192.168.122.66 -u Administrator -p 123456Ww -m 5
Cambiar Contraseña En El Sistema Remoto Con PsPasswd
Sistema remoto de los usuarios las contraseñas se pueden cambiar fácilmente con la etiqueta PSPasswd
comando. En este ejemplo cambiaremos la contraseña de usuario Administrator
a 123456Aa
.,
$ pspasswd \\192.168.122.66 -u Administrator -p 123456Ww Administrator 123456Aa
Ping Con PsPing
Otra herramienta útil es de PsPing
que va a crear paquetes ICMP ping . Este comando ejecutará el sistema local.
$ psping google.com
Gestionar Servicios En El Sistema Remoto Con PsService
PsService
comando se utiliza para la lista, iniciar, detener servicios en el 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
Después de inicio del servicio de la información sobre el servicio que está impreso.
detener el servicio de forma remota
detendremos el servicio ALG
en el siguiente ejemplo.,
$ 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