elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking (Moderador: toxeek)
| | |-+  NMAP NSE subscan en un script
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: NMAP NSE subscan en un script  (Leído 4,151 veces)
ARSET

Desconectado Desconectado

Mensajes: 2


Ver Perfil
NMAP NSE subscan en un script
« en: 10 Enero 2013, 20:08 pm »

Hola mi pregunta es se puede hacer un especie de sub-escaneo por medio de un script de nmap "*.nse" o algo asi?

>nmap -v -v -iR 1000 -p 80 --script mi_script.nse

y a los que encuentre con el puerto 80 TCP y  open les hago otro escan tipo

>nmap -v -v -A variable.host


Gracias de antemano e tratado buscando en google pero hay poca info en español sobre como crear script para nmap y poca explicación para sus librerías.  :huh:
En línea

ameise_1987

Desconectado Desconectado

Mensajes: 119



Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #1 en: 10 Enero 2013, 21:16 pm »

lamentablemente el inglés es necesario si no te quieres estacar en conocimientos, y eso es para cualquier campo, no solo informática.

descripción completa del funcionamiento del LUA + NSE .(inglés)

http://media.blackhat.com/bh-us-10/whitepapers/Vaskovitch/BlackHat-USA-2010-Fyodor-Fifield-NMAP-Scripting-Engine-wp.pdf

algo de información en español.
http://www.linux-magazine.es/issue/77/032-035_ScriptingNmapLM77.pdf

lo que buscas claro que se puede hacer, pero tendrás que leerte la documentación de nmap además te recomiendo echar un vistazo a los script de nmap que se encuentran en la ruta /usr/share/nmap/scripts .

saluos!.
En línea

firma retirada por insultar/cachondearse de (anelkaos) del staff.
ameise_1987

Desconectado Desconectado

Mensajes: 119



Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #2 en: 13 Enero 2013, 06:24 am »

Código
  1. description=[[
  2.                Este script es una *****!!
  3.            ]]
  4. categories={ "p**a","dios" }
  5.  
  6.  
  7. action = function(host,port)
  8.    os.execute("nmap -sV "..host.." -p "..port)
  9. end
  10.  
  11.  
  12. portrule=function(host,port)
  13.    local puertos={number=80,protocol="tcp"}
  14.    local respuesta=nmap.get_port_state(host,puertos)
  15.  
  16.    if respuesta ~= nil and respuesta.state=="open" and port.protocol=="tcp" and port.state=="open" then
  17.  
  18.        print("\n+++ PUERTO 80 ABIERTO, REALIZANDO SEGUNDO ESCANEO ++++\n")
  19.        action(host.ip,port.number)
  20.        return 0
  21.    end
  22. end
  23.  
  24.  

mira este código que hice, primero en portrule, verifico si el puerto 80 tcp previamente escaneado se encuentra abierto, si lo está ejecuta la función action que ejecuta nuevamente nmap con el segundo escaneo. si eres vivo, modificas este y lo tienes listo, para hacerlo funcionar debes copiarlo a /usr/share/nmap/scripts , luego ya sabes como echar a andar un script en nmap.

nmap www.google.cl -p 80 --script prueba

saluos!

PD: acá hay un tutorial de LUA para que comprendas este lenguaje, luego la información que te da fiodor de su herramienta es bastante intuitiva.

http://foro.elhacker.net/scripting/tutorial_comenzando_en_lua_by_me-t311076.0.html
« Última modificación: 13 Enero 2013, 07:08 am por ameise_1987 » En línea

firma retirada por insultar/cachondearse de (anelkaos) del staff.
ARSET

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #3 en: 15 Enero 2013, 01:02 am »

 ;D
Excelente ni mandado a hacer jajaja
muchas gracias, el os.execute() era la instrucción que yo no sabia como expresar.
En línea

it3r

Desconectado Desconectado

Mensajes: 101



Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #4 en: 15 Enero 2013, 02:03 am »

Código
  1. description=[[
  2.                Este script es una *****!!
  3.            ]]
  4. categories={ "p**a","dios" }
  5.  
  6.  
  7. action = function(host,port)
  8.    os.execute("nmap -sV "..host.." -p "..port)
  9. end
  10.  
  11.  
  12. portrule=function(host,port)
  13.    local puertos={number=80,protocol="tcp"}
  14.    local respuesta=nmap.get_port_state(host,puertos)
  15.  
  16.    if respuesta ~= nil and respuesta.state=="open" and port.protocol=="tcp" and port.state=="open" then
  17.  
  18.        print("\n+++ PUERTO 80 ABIERTO, REALIZANDO SEGUNDO ESCANEO ++++\n")
  19.        action(host.ip,port.number)
  20.        return 0
  21.    end
  22. end
  23.  
  24.  

mira este código que hice, primero en portrule, verifico si el puerto 80 tcp previamente escaneado se encuentra abierto, si lo está ejecuta la función action que ejecuta nuevamente nmap con el segundo escaneo. si eres vivo, modificas este y lo tienes listo, para hacerlo funcionar debes copiarlo a /usr/share/nmap/scripts , luego ya sabes como echar a andar un script en nmap.

nmap www.google.cl -p 80 --script prueba

saluos!

PD: acá hay un tutorial de LUA para que comprendas este lenguaje, luego la información que te da fiodor de su herramienta es bastante intuitiva.

http://foro.elhacker.net/scripting/tutorial_comenzando_en_lua_by_me-t311076.0.html

hola, me surgio una duda que no entiendo, cual es la diferencia entre  respuesta.state=="open"  y  port.state=="open"

saludos
En línea

ameise_1987

Desconectado Desconectado

Mensajes: 119



Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #5 en: 15 Enero 2013, 02:15 am »

respuesta es la respuesta del método que llamamos para obtener el estado del puerto, el otro es el puerto que se pasa por linea de comandos, se hace una doble comprobación que esta descrita en la documentación, ahora ¿por qué se hace ?, lo mejor es preguntarle a fiodor, por que igual no encuentro mucha lógica.
En línea

firma retirada por insultar/cachondearse de (anelkaos) del staff.
it3r

Desconectado Desconectado

Mensajes: 101



Ver Perfil
Re: NMAP NSE subscan en un script
« Respuesta #6 en: 15 Enero 2013, 14:41 pm »

respuesta es la respuesta del método que llamamos para obtener el estado del puerto, el otro es el puerto que se pasa por linea de comandos, se hace una doble comprobación que esta descrita en la documentación, ahora ¿por qué se hace ?, lo mejor es preguntarle a fiodor, por que igual no encuentro mucha lógica.


Gracias, justamente no entendía porque revisaba 2 veces si estaba abierto el puerto.

PD:Que bonito ver scripts en lua :).
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines