Entrada

NPS - La herramienta perfecta para encontrar scripts de Nmap fácilmente

NPS es una herramienta que nos permite buscar por los scripts que contiene nmap para el protocolo especificado.

NPS - La herramienta perfecta para encontrar scripts de Nmap fácilmente

Introducción

En este artículo, vamos a explicar el funcionamiento de la herramienta nps o también llamada Nmap Scripts for a Protocol. Esta herramienta permite buscar todos los scripts disponibles en Nmap para los protocolos que le especifiquemos, facilitando así el proceso de enumeración.

Funcionamiento de NPS

NPS está completamente escrita en Bash y resulta muy útil durante la fase de reconocimiento en una auditoría, ya que automatiza la búsqueda de scripts relevantes, lo que ahorra tiempo y mejora la eficiencia a la hora de identificar posibles vulnerabilidades en servicios y protocolos específicos.

El funcionamiento principal de nps consiste en filtrar el contenido del directorio /usr/share/nmap/scripts/, donde se encuentran los scripts de Nmap. Utilizando una expresión regular, la herramienta busca y filtra los scripts relacionados con el/los protocolo/s que se le hayan especificado, y finalmente muestra una lista de los scripts que Nmap proporciona para dichos protocolos.

Clonando la herramienta

Empezaremos clonándonos la herramienta, por lo que nos dirigiremos al directorio que deseemos y ejecutaremos los siguientes comandos.

1
2
git clone https://github.com/h3g0c1v/nps.git
cd nps

Para que el script funcione, tendremos que darle permisos de ejecución.

1
chmod u+x nps.sh

Algo que cómodo que podemos hacer, es moverlo a alguna ruta del $PATH para ejecutarlo de una manera más rápida.

1
cp nps.sh /usr/bin/nps

De esta manera, podemos ejecutarlo en cualquier momento.

1
nps

Poniéndolo en práctica

Bien, hasta ahora solo hemos hablado del funcionamiento de nps y de cómo clonarla, pero aún no la hemos probado. Para ver el panel de ayuda, simplemente necesitamos ejecutar la herramienta. Esto nos proporcionará información sobre los parámetros que podemos utilizar.

Cabe recalcar, que la herramienta deberá de ejecutarse como root, en caso contrario nos saldrá el siguiente mensaje de error.

Ejecución de NPS sin root

Supongamos que nos encontramos en la etapa de reconocimiento y tenemos un host en el que el servicio RPC está activo. Si necesitamos ejecutar un script de Nmap pero no recordamos su nombre, esta es una de las funcionalidades clave de NPS.

1
2
3
4
5
6
7
8
9
10
11
❯ nps rpc

[+] RPC
	bitcoinrpc-info.nse
	deluge-rpc-brute.nse
	metasploit-msgrpc-brute.nse
	metasploit-xmlrpc-brute.nse
	msrpc-enum.nse
	nessus-xmlrpc-brute.nse
	rpc-grind.nse
	xmlrpc-methods.nse

Pongámonos en situación que queremos ejecutar varios scripts de diferentes protocolos. Con NPS, podemos buscarlos todos a la vez. Para ello, deberemos pasarle como argumentos tantos protocolos como deseemos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
❯ nps ftp ssh rdp

[+] FTP
	ftp-anon.nse
	ftp-bounce.nse
	ftp-brute.nse
	ftp-libopie.nse
	ftp-proftpd-backdoor.nse
	ftp-syst.nse
	ftp-vsftpd-backdoor.nse
	ftp-vuln-cve2010-4221.nse
	tftp-enum.nse
	tftp-version.nse

[+] SSH
	ssh-auth-methods.nse
	ssh-brute.nse
	ssh-hostkey.nse
	ssh-publickey-acceptance.nse
	ssh-run.nse

[+] RDP
	rdp-enum-encryption.nse
	rdp-ntlm-info.nse
	rdp-vuln-ms12-020.nse

Despedida

Muchas gracias por leer este blog y espero que la herramienta te sea de utilidad. Si tienes alguna aportación, no dudes en escribirme por LinkedIn. !Un abrazo!

Esta entrada está licenciada bajo CC BY 4.0 por el autor.