elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 05:23  


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez., EleKtro H@cker)
| | |-+  [Utilidad]Usando NMAP en Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Utilidad]Usando NMAP en Python  (Leído 735 veces)
0x5d

Desconectado Desconectado

Mensajes: 137

¡ Programming the World !


Ver Perfil WWW
[Utilidad]Usando NMAP en Python
« en: 2 Julio 2011, 13:48 »

Bueno, navegando por la red, me topé con NMAP para Python.
se usaría igual
Código
import nmap
La pueden descargar desde acá para versiones 3.X: http://xael.org/norman/python/python-nmap/python-nmap-0.2.2.tar.gz
Y de Acá para las 2.X :http://xael.org/norman/python/python-nmap/python-nmap-0.1.4.tar.gz
Luego descomprimir :
Código:
tar xvzf python-nmap-0.2.0.tar.gz
hacemos CD a la carpeta creada.
Luego
Código:
python setup.py install
Una vez hecho esto podemos utilizarla así
Código
import nmap
 
Algunos ejemplos de su uso :
Código
>>> import nmap
>>> nm = nmap.PortScanner()
>>> nm.scan('127.0.0.1', '22-443')
>>> nm.command_line()
'nmap -oX - -p 22-443 -sV 127.0.0.1'
>>> nm.scaninfo()
{'tcp': {'services': '22-443', 'method': 'connect'}}
>>> nm.all_hosts()
['127.0.0.1']
>>> nm['127.0.0.1'].hostname()
'localhost'
>>> nm['127.0.0.1'].state()
'up'
>>> nm['127.0.0.1'].all_protocols()
['tcp']
>>> nm['127.0.0.1']['tcp'].keys()
[80, 25, 443, 22, 111]
>>> nm['127.0.0.1'].has_tcp(22)
True
>>> nm['127.0.0.1'].has_tcp(23)
False
>>> nm['127.0.0.1']['tcp'][22]
{'state': 'open', 'reason': 'syn-ack', 'name': 'ssh'}
>>> nm['127.0.0.1'].tcp(22)
{'state': 'open', 'reason': 'syn-ack', 'name': 'ssh'}
>>> nm['127.0.0.1']['tcp'][22]['state']
'open'
 
>>> for host in nm.all_hosts():
>>>     print('----------------------------------------------------')
>>>     print('Host : %s (%s)' % (host, nm[host].hostname()))
>>>     print('State : %s' % nm[host].state())
>>>     for proto in nm[host].all_protocols():
>>>         print('----------')
>>>         print('Protocol : %s' % proto)
>>>
>>>         lport = nm[host][proto].keys()
>>>         lport.sort()
>>>         for port in lport:
>>>             print ('port : %s\tstate : %s' % (port, nm[host][proto][port]['state']))
----------------------------------------------------
Host : 127.0.0.1 (localhost)
State : up
----------
Protocol : tcp
port : 22 state : open
port : 25 state : open
port : 80 state : open
port : 111 state : open
port : 443 state : open
 
 
 
>>> nm.scan(hosts='192.168.1.0/24', arguments='-n -sP -PE -PA21,23,80,3389')
>>> hosts_list = [(x, nm[x]['status']['state']) for x in nm.all_hosts()]
>>> for host, status in hosts_list:
>>>     print('{0}:{1}'.format(host, status))
192.168.1.0:down
192.168.1.1:up
192.168.1.10:down
192.168.1.100:down
192.168.1.101:down
192.168.1.102:down
192.168.1.103:down
192.168.1.104:down
192.168.1.105:down
[...]
 
 
 
>>> nma = nmap.PortScannerAsync()
>>> def callback_result(host, scan_result):
>>>     print '------------------'
>>>     print host, scan_result
>>>
>>> nma.scan(hosts='192.168.1.0/30', arguments='-sP', callback=callback_result)
>>> while nma.still_scanning():
>>>     print("Waiting >>>")
>>>     nma.wait(2)   # you can do whatever you want but I choose to wait after the end of the scan
>>>
192.168.1.1 {'nmap': {'scanstats': {'uphosts': '1', 'timestr': 'Mon Jun  7 11:31:11 2010', 'downhosts': '0', 'totalhosts': '1', 'elapsed': '0.43'}, 'scaninfo': {}, 'command_line': 'nmap -oX - -sP 192.168.1.1'}, 'scan': {'192.168.1.1': {'status': {'state': 'up', 'reason': 'arp-response'}, 'hostname': 'neufbox'}}}
------------------
192.168.1.2 {'nmap': {'scanstats': {'uphosts': '0', 'timestr': 'Mon Jun  7 11:31:11 2010', 'downhosts': '1', 'totalhosts': '1', 'elapsed': '0.29'}, 'scaninfo': {}, 'command_line': 'nmap -oX - -sP 192.168.1.2'}, 'scan': {'192.168.1.2': {'status': {'state': 'down', 'reason': 'no-response'}, 'hostname': ''}}}
------------------
192.168.1.3 {'nmap': {'scanstats': {'uphosts': '0', 'timestr': 'Mon Jun  7 11:31:11 2010', 'downhosts': '1', 'totalhosts': '1', 'elapsed': '0.29'}, 'scaninfo': {}, 'command_line': 'nmap -oX - -sP 192.168.1.3'}, 'scan': {'192.168.1.3': {'status': {'state': 'down', 'reason': 'no-response'}, 'hostname': ''}}}
 
Fuente(en inglés):http://xael.org/norman/python/python-nmap/


Saludos :D


En línea

¡ Te espero en el foro de RootCodes -> http://rootcodes.com/foro/index.php !
WaAYa HaCK

Desconectado Desconectado

Mensajes: 262


import ehn / #include <ehn.h>


Ver Perfil
Re: [Utilidad]Usando NMAP en Python
« Respuesta #1 en: 2 Julio 2011, 15:30 »

 ;-) ;-) Genial aporte!

Se me ocurren muchas cosas...  :rolleyes:

Gracias!  :D


En línea



zZznewbiezZz

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Re: [Utilidad]Usando NMAP en Python
« Respuesta #2 en: 9 Julio 2011, 20:32 »

pero y si tengo windows???
por cierto  que hace exactamente?
gracias de antemano ;D
En línea
WaAYa HaCK

Desconectado Desconectado

Mensajes: 262


import ehn / #include <ehn.h>


Ver Perfil
Re: [Utilidad]Usando NMAP en Python
« Respuesta #3 en: 9 Julio 2011, 20:56 »

Nmap es un escaneador de hosts muy bueno. Esta libreria hace posible su implementacion en Python. En Windows debes tener el interprete de Python instalado.
En línea



Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
usando nmap
Hacking Básico
aftershock 2 599 Último mensaje 13 Enero 2005, 05:57
por Rojodos
Tk en Python usando OOP « 1 2 »
Scripting
alvk4r 16 2,200 Último mensaje 13 Noviembre 2008, 13:03
por 43H4FH44H45H4CH49H56H45H
(Python)Existen ventanas de entrada y salida de datos en python
Scripting
tonilogar 11 4,346 Último mensaje 29 Noviembre 2009, 00:49
por tonilogar
[Nmap & Metasploit] Pasar Resultado de escaneo de Nmap al MSF
Hacking Básico
Shell Root 2 4,554 Último mensaje 4 Enero 2010, 22:35
por Debci
[python]VideoTraining Aprende A Programar En Python desde 0 « 1 2 »
Scripting
juh 22 5,571 Último mensaje 16 Octubre 2010, 13:12
por sheevalum
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines