E

ecadlr

Usuario (Bolivia)

Primer post: 5 feb 2015Último post: 7 feb 2015
2
Posts
86
Puntos totales
3
Comentarios
U
Un poco de python 2 - Viendo puertos.
LinuxporAnónimo2/7/2015

Un saludo cordial, lincesas y manquinolas. Deseo poder compartir con todos ustedes algo que vengo practicando con python, espero sea de ayuda para algunos o puedan corregirme. Ya habiendo encontrado las ip's activas en la red como se ve . A continuación veremos si los puertos están corriendo, nos interese directamente: Protocolo:http puerto:80Protocolo:ssh puerto:22Protocolo:ftp puerto:21Protocolo:Microsoft-DS puerto:445Protocolo:telnet puerto:23Protocolo: DNS puerto:53 Y de igual manera podemos ver otros puertos que nos interesen en este caso se realiza el escaneo de estos puertos para poder realizar mas adelante mas code con python. ipScanPort.py #!/usr/bin/python import urllib2 import socket import optparse import traceback def http(ip):     try:         c = urllib2.urlopen("http://"+str(ip))         print('[+] HTTP - {0}'.format(c.info()))         c.close()     except Exception, e:         print('[-] HTTP  - {0}'.format(ip)) def ssh(ip):     try:         socket.setdefaulttimeout(5)         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         s.connect((ip, 22))         print('[+] SSH - {0} {1}'.format(ip, str(s.recv(33333)) ))         s.close()     except Exception, e:         print('[-] SSH  - {0} '.format(ip)) def ftp(ip):     try:         socket.setdefaulttimeout(5)         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         s.connect((ip, 21))         print('[+] FTP - {0} {1}'.format(ip, str(s.recv(33333)) ))         s.close()     except Exception, e:         print('[-] FTP - {0}'.format(ip)) def ms(ip):     try:         socket.setdefaulttimeout(5)         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         s.connect((ip, 445))         print('[+] MS - {0} {1}'.format(ip, str(s.recv(33333)) ))         s.close()     except Exception, err:         print('[-] MS - {0} '.format(ip)) def telnet(ip):     try:         socket.setdefaulttimeout(5)         s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         s.connect((ip, 23))         s.close()         print('[+] Telnet - {0} {1}'.format(ip, str(s.recv(33333)) ))     except Exception, err:         print('[-] Telnet - {0} '.format(ip)) def dns(ip):     try:         socket.setdefaulttimeout(5)          s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)         s.connect((ip, 23))         print('[+] DNS - {0} {1}'.format(ip, str(s.recv(33333)) ))         s.close()     except Exception, err:         print('[-] DNS - {0} '.format(ip)) def main():     try:         pr = optparse.OptionParser(" python ipScanPort.py -l [IP's.txt]")         pr.add_option('-l', '--lista', dest='list', type='string', help="Nombre del archivo donde estan las IP's")         (opt, args) = pr.parse_args()         if opt.list == None:             print pr.parse_args()             exit(0)         else:             with open(opt.list, 'r') as ips:                 for ip in ips.readlines():                     print " IP : " + str(ip)                     http(ip)                     ssh(ip)                     ftp(ip)                     ms(ip)                     telnet(ip)                     dns(ip)                     print('n')     except Exception, err:         print('Error Main : {0}'.format(err))         print traceback.format_exc() if __name__ == '__main__':     main() Se importa los siguientes módulos: urllib2(para tratar con paginas), socket(conexión de red), optparse(adornar la entrada de datos), traceback(Ver la linea de error en las excepciones). def http(ip): Usamos la función urlopen al cual le pasamos como parámetros la ip mas el http:// y vemos su información con la función info(). def ssh(ip): Usamos la función connect al cual le pasamos como parámetros la ip y el puerto 22 y con la funcion recv(3333), recivimos informacion de el puerto, en un total de 3333 de tamaño de buffer. def ftp(ip): Usamos la función connect al cual le pasamos como parámetros la ip y el puerto 21 y con la funcion recv(3333), recivimos informacion de el puerto, en un total de 3333 de tamaño de buffer. def ms(ip): Usamos la función connect al cual le pasamos como parámetros la ip y el puerto 445 y con la funcion recv(3333), recivimos informacion de el puerto, en un total de 3333 de tamaño de buffer. ms solo es una variable. def telnet(ip): Usamos la función connect al cual le pasamos como parámetros la ip y el puerto 23 y con la funcion recv(3333), recivimos informacion de el puerto, en un total de 3333 de tamaño de buffer. def dns(ip): Usamos la función connect al cual le pasamos como parámetros la ip y el puerto 53 y con la funcion recv(3333), recivimos informacion de el puerto, en un total de 3333 de tamaño de buffer. def main(): Esta función se encarga de pedir los datos necesarios con optparse. Y lee el contenido del archivo donde estén la lista de las ip's y van ejecutando cada función para cada ip. Para ejecutar el código sera de la siguiente manera. python ipScanPort.py -l lista.txt donde: -l , Es el archivo que contenga una lista de direcciones ip's. Eje. 192.168.1.168

42
3
U
Un poco de python 1 - Hacer ping.
LinuxporAnónimo2/5/2015

Un saludo cordial, lincesas y manquinolas. Deseo poder compartir con todos ustedes algo que vengo practicando con python, espero sea de ayuda para algunos o puedan corregirme. Antes de comenzar seria aconsejable conocer un poco de python, taringa cuenta con mucha información sobre introducción a python. 1.- 2.- 3.- La idea es poder codear herramientas que puedan ayudar a realizar un poco de test de intrusión. Por tal, imaginaremos que ya se tiene acceso a una terminal de Linux, con permisos de usuario común, con python instalado por defecto. Deseamos conocer todas las maquinas conectadas a la red. Para ello podríamos hacer un ping a cada maquina y ver que maquina da una respuesta. Entonces automaticemos aquello, con el siguiente código. pingView.py from subprocess import Popen, PIPE import sys import optparse ip = str(sys.argv[1]) def ping(ip): ...try: ......for i in range(1,255): ............ipp = ip+'.'+str(i) ............subprocess = Popen(['ping', '-c 1 ', ipp], stdin=PIPE, stdout=PIPE, stderr=PIPE) ............(stdout, stderr) = subprocess.communicate(input=None) ............if 'bytes from ' in stdout: ...............print(stdout.split()[1]) ...except Exception, err: ......print('Error {0}'.format(err)) def main(): ...pr = optparse.OptionParser(" python pingView.py -r [IP / 192.168.1]" ...pr.add_option("-r", "--rango" ,dest='ip', type='string', help='El rango de escaneo es de /24') ...(opts, args) = pr.parse_args() ...if opts.ip == None: ......print pr.usage ......exit(0) ...else: ......ping(opts.ip) if __name__ == '__main__': ...main()  La primera función llamada ping(ip) es el encargado de realizar el escaneo segun la ip que se introduzca por la consola. Usando el modulo subprocces, para poder llamar directamente el comando ping del sistema. La segunda función llamada main() es el encargado de mostrar la forma correcta de introducir los datos. Para ejecutar el código sera de la siguiente manera. python pingView.py -r 192.168.1 donde: -r , Seria los 3 primeros números de la IP de la red ya que esto lo ara bajo /24 bits.

44
5
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.