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


 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el ttwitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [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 2,750 veces)
0x5d

Desconectado Desconectado

Mensajes: 241



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
  1. 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
  1. import nmap
  2.  
Algunos ejemplos de su uso :
Código
  1. >>> import nmap
  2. >>> nm = nmap.PortScanner()
  3. >>> nm.scan('127.0.0.1', '22-443')
  4. >>> nm.command_line()
  5. 'nmap -oX - -p 22-443 -sV 127.0.0.1'
  6. >>> nm.scaninfo()
  7. {'tcp': {'services': '22-443', 'method': 'connect'}}
  8. >>> nm.all_hosts()
  9. ['127.0.0.1']
  10. >>> nm['127.0.0.1'].hostname()
  11. 'localhost'
  12. >>> nm['127.0.0.1'].state()
  13. 'up'
  14. >>> nm['127.0.0.1'].all_protocols()
  15. ['tcp']
  16. >>> nm['127.0.0.1']['tcp'].keys()
  17. [80, 25, 443, 22, 111]
  18. >>> nm['127.0.0.1'].has_tcp(22)
  19. True
  20. >>> nm['127.0.0.1'].has_tcp(23)
  21. False
  22. >>> nm['127.0.0.1']['tcp'][22]
  23. {'state': 'open', 'reason': 'syn-ack', 'name': 'ssh'}
  24. >>> nm['127.0.0.1'].tcp(22)
  25. {'state': 'open', 'reason': 'syn-ack', 'name': 'ssh'}
  26. >>> nm['127.0.0.1']['tcp'][22]['state']
  27. 'open'
  28.  
  29. >>> for host in nm.all_hosts():
  30. >>>     print('----------------------------------------------------')
  31. >>>     print('Host : %s (%s)' % (host, nm[host].hostname()))
  32. >>>     print('State : %s' % nm[host].state())
  33. >>>     for proto in nm[host].all_protocols():
  34. >>>         print('----------')
  35. >>>         print('Protocol : %s' % proto)
  36. >>>
  37. >>>         lport = nm[host][proto].keys()
  38. >>>         lport.sort()
  39. >>>         for port in lport:
  40. >>>             print ('port : %s\tstate : %s' % (port, nm[host][proto][port]['state']))
  41. ----------------------------------------------------
  42. Host : 127.0.0.1 (localhost)
  43. State : up
  44. ----------
  45. Protocol : tcp
  46. port : 22 state : open
  47. port : 25 state : open
  48. port : 80 state : open
  49. port : 111 state : open
  50. port : 443 state : open
  51.  
  52.  
  53.  
  54. >>> nm.scan(hosts='192.168.1.0/24', arguments='-n -sP -PE -PA21,23,80,3389')
  55. >>> hosts_list = [(x, nm[x]['status']['state']) for x in nm.all_hosts()]
  56. >>> for host, status in hosts_list:
  57. >>>     print('{0}:{1}'.format(host, status))
  58. 192.168.1.0:down
  59. 192.168.1.1:up
  60. 192.168.1.10:down
  61. 192.168.1.100:down
  62. 192.168.1.101:down
  63. 192.168.1.102:down
  64. 192.168.1.103:down
  65. 192.168.1.104:down
  66. 192.168.1.105:down
  67. [...]
  68.  
  69.  
  70.  
  71. >>> nma = nmap.PortScannerAsync()
  72. >>> def callback_result(host, scan_result):
  73. >>>     print '------------------'
  74. >>>     print host, scan_result
  75. >>>
  76. >>> nma.scan(hosts='192.168.1.0/30', arguments='-sP', callback=callback_result)
  77. >>> while nma.still_scanning():
  78. >>>     print("Waiting >>>")
  79. >>>     nma.wait(2)   # you can do whatever you want but I choose to wait after the end of the scan
  80. >>>
  81. 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'}}}
  82. ------------------
  83. 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': ''}}}
  84. ------------------
  85. 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': ''}}}
  86.  
Fuente(en inglés):http://xael.org/norman/python/python-nmap/


Saludos :D


En línea

¡ SIGUEME EN TWITTER -> @JavierEsteban__ !
WaAYa HaCK

Desconectado Desconectado

Mensajes: 292


Arduino, Android and music


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

La cacatúa yoyó es nueva en el zoo!
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: 292


Arduino, Android and music


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

La cacatúa yoyó es nueva en el zoo!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tk en Python usando OOP « 1 2 »
Scripting
alvk4r 16 7,439 Último mensaje 13 Noviembre 2008, 13:03
por 43H4FH44H45H4CH49H56H45H
[Nmap & Metasploit] Pasar Resultado de escaneo de Nmap al MSF
Hacking Básico
Shell Root 2 9,881 Último mensaje 4 Enero 2010, 22:35
por Debci
Actualizar mi ip usando dyndns en python
Scripting
Borito30 0 958 Último mensaje 14 Marzo 2017, 19:27
por Borito30
MOVIDO: Actualizar mi ip usando dyndns en python
Programación General
Eleкtro 0 667 Último mensaje 16 Marzo 2017, 02:09
por Eleкtro
problema con la libreria de nmap en python v 3.7.4 « 1 2 »
Scripting
dash166 10 657 Último mensaje 16 Noviembre 2019, 03:33
por tincopasan
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines