Ejecutar Programas Remotamente utilizando el Script smb-psexec de Nmap

  • Posted on: 5 February 2016
  • By: ReYDeS

El script de nombre “smb-psexec” implementa la ejecución de procesos remotos similar a la herramienta de nombre “psexec” de Sysinternals, el cual permite a un usuario ejecutar una serie de programas sobre una máquina remota y leer su salida. Esto es grandioso para recopilar información sobre servidores, ejecutan la misma herramienta sobre una gama de sistemas, o incluso instalar una puerta trasera sobre un conjunto de computadoras.

Este script puede ejecutar comandos presentes sobre la máquina remota, como un ping o tracert, o puede subir un programa y ejecutarlo, como pwdump6 o una puerta trasera. Adicionalmente puede leer las salidas y errores desde los programas y devolverlas hacia el usuario (trabaja buin con ping, pwdump6, etc), o puede leer un archivo generado por un proceso (fgdump, por ejemplo genera un archivo), o puede sólo iniciar un proceso y dejarlo ejecutarse ( una puerta trasera podría ejecutarse así).

Para utilizar lo, se debe crear y editar un archivo de configuración Muchos archivos de configuración son incluidos y pueden ser personalizados, o se puede escribir el propio. Este archivo de configuración se ubica en nselib/data/psexec (si no se está seguro sobre su ubicación, buscar en el sistema por default.lua), luego es pasado hacia Nmap como un argumento del script (por ejemplo, myconfig.lua podría ser pasado como –script.args=config=myconfig).

El archivo de configuración esta constituido principalmente de una lista de módulos. Cada módulo se define por una tabla lua, y contiene campos para el nombre del programa, el ejecutable y argumentos para el programa, y una puntuación de otras opciones Los módulos también tienen un campo de “subida”, el cual determina ya sea o no el módulo es subido.

Se ejecuta el script requerido contra el objetivo de evaluación. Considerar el hecho de definir un nombre de usuario y contraseña válidos.

# nmap --script smb-psexec.nse --script-args=smbuser=miguel,smbpass=XXX -p445 192.168. 0.31

El mensaje presentado versa sobre la no factibilidad de encontrar el archivo de servicio de nombre “nmap_service.exe”. Debido a falsos positivos en software antivirus, este módulo no es incluido por defecto. Se sugiere al usuario descargar el módulo desde el enlace indicado.

Se utiliza la herramienta wget para descargar el archivo.

# wget https://nmap.org/psexec/nmap_service.exe

Nuevamente se procede a ejecutar el script; en esta oportunidad de manera satisfactoria; presentándose información como la versión de Windows, cuentas de usuarios, trazado de ruta, cache ARP.

Listado de conexiones en atención o establecidas, tabla de encaminamiento.

Rutas persistentes, configuración del cargador de inicio, entradas de inicio, ruta de acceso, lista de unidades, entre otra información.

Este Script de Nmap ejecuta los comandos contenidos por defecto en el archivo “default.lua”.

El factible de hecho crear un archivo propio para ejecutar un comando personalizado como "net user", para obtener información sobre las cuentas de usuarios del sistema.

Se ejecuta el script definiendo con el argumento “config” el nombre del archivo personalizado.

# nmap --script smb-psexec.nse --script-args=smbuser=miguel,smbpass=XXX,config=demo1 -p445 192.168. 0.31

El Script se ejecuta correctamente, y se obtiene un lista de los usuarios del sistema.

Fuentes:

https://nmap.org/nsedoc/scripts/smb-psexec.html
https://technet.microsoft.com/en-us/sysinternals/psexec.aspx
http://download.openwall.net/pub/projects/john/contrib/pwdump/
https://technet.microsoft.com/en-us/library/cc771865.aspx

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/
Facebook: https://www.facebook.com/alonsoreydes
Youtube: https://www.youtube.com/c/AlonsoCaballero


Webinar Informática Forense