• Earn real money by being active: Hello Guest, earn real money by simply being active on the forum — post quality content, get reactions, and help the community. Once you reach the minimum credit amount, you’ll be able to withdraw your balance directly. Learn how it works.

Phyton Escaner de Puertos by [Z]tuX v1.2 [Python]

Status
Not open for further replies.

Closter

Leech
User
Joined
Oct 21, 2011
Messages
14
Reputation
0
Reaction score
0
Points
1
Credits
0
‎13 Years of Service‎
94%
by [Z]tuX

Pros:

Ahora se puede escanear un rango de puertos y puertos diferentes a la vez...

Contras:

Hay un Error al escanear el Puerto 80 cuando se escanean puertos diferentes a la vez...

AQUI EL CODE:

Code:
>#!/usr/bin/python
#by [Z]tuX 2011 :D
import sys, socket, string
ver = '1.2'

if (len(sys.argv)==1) or sys.argv[1]=="-h" or sys.argv[1]=="--help":
   print '''
Escaner de Puertos by [Z]tuX
[+] Uso: scanner.py [HOST] [OPCIONES] [PUERTO(s)]
-h     Muestra la ayuda
-v     Muestra la Version del Programa
========================================
              OPCIONES
========================================
-p --ports  Escanea diferentes puertos:
[+] Ejemplo: scanner.py www.example.com -p 21,26,22,445
[+] Ejemplo: scanner.py www.example.com --ports 21,26,22,445

-r --range  Escanea un rango de puertos:
[+] Ejemplo: scanner.py www.example.com -r 21-30  
[+] Ejemplo: scanner.py www.example.com --range 21-30  
-
'''
elif (sys.argv[1]=='-v') or (sys.argv[1]=='--version'):
   print 'Version ' + ver

#ESCANEO DE UN SOLO PUERTO
elif len(sys.argv)==3: 
   host = sys.argv[1]
   port = int(sys.argv[2])
   print '[+] Escaneando a %s al puerto %s ' % (host, port)
   cn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
   cn.connect( (host, port) )
   if port==80:
       cn.send('GET / HTTP/1.1\r\n')
       cn.send('HOST: %s\r\n\r\n'%host)
       data = cn.recv(1024)
       cn.close()
       if data=='':
           print "Puerto %s - [*]Cerrado :(" % port
       else:
           print "Puerto %s - [*]Abierto :D" % port    
   elif (cn.recv(1024) ==''):
       print "Puerto %s - [*]Cerrado :(" % port
       cn.close()
   else:
       cn.close()
       print "Puerto %s - [*]Abierto :D" % port  
       
#Escaneo por rangos
elif sys.argv[2]=='-r' and len(sys.argv)==4 or sys.argv[2]=='--range' and len(sys.argv)==4:
   host = sys.argv[1]
   ports = str(sys.argv[3])
   print '[+] Escaneando a %s en un rango de puertos %s ' % (host, ports)
   ztux = ports.split('-')
   for puerto in range(int(ztux[0]), int(ztux[1]) +1):
       cn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
       cn.connect( (host, puerto) )
       if puerto==80:
           cn.send('GET / HTTP/1.1\r\n')
           cn.send('HOST: %s\r\n\r\n'%host)
           data = cn.recv(1024)
           cn.close()
           if data=='':
               print "Puerto %s - [*]Cerrado :(" % puerto
           else:
               print "Puerto %s - [*]Abierto :D" % puerto    
           
       elif (cn.recv(1024) ==''):
           print "Puerto %s - [*]Cerrado :(" % puerto
           cn.close()
       else:
           cn.close()
           print "Puerto %s - [+] Abierto :D" % puerto
           
#Escaneo de diferentes puertos
elif sys.argv[2]=='-p' and len(sys.argv)==4 or sys.argv[2]=='--ports' and len(sys.argv)==4: 
   host = sys.argv[1]
   ports = sys.argv[3]
   print '[+] Escaneando a %s a los puertos %s ' % (host, ports)
   ztux = ports.split(',')
   for puerto in ztux:
       cn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
       cn.connect( (host, int(puerto)) )
       if puerto==80:
           cn.send('GET / HTTP/1.1\r\n')
           cn.send('HOST: %s\r\n\r\n'%host)
           data = cn.recv(1024)
           cn.close()
           if data=='':
               print "Puerto %s - [*]Cerrado :(" % puerto
           else:
               print "Puerto %s - [*]Abierto :D" % puerto
               
       elif (cn.recv(1024) ==''):
           print "Puerto %s - [*]Cerrado :(" % puerto
           cn.close()
       else:
           cn.close()
           print "Puerto %s - [+] Abierto :D" % puerto       
else:
   print u'\n>>> Teclea -h o --help para mas informaci\xf3n'
#[Z]TuX
#E[N]D
 
Status
Not open for further replies.
Back
Top