El libre pensamiento para un internet libre

No estas registrado.  

#1 07-01-2016 17:54:24

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

2016 :
            ¡Bully WPS está de vuelta!

bully_1.png

Aanarchyy da una nueva vida al código de Brian Purcell e implementa la automatización del ataque tipo "pixie dust"

  Bully WPS es originalmente un trabajo de Brian PURCELL.
Fue publicado en 2013, un año después la salida  de WPS reaver y fue integrado enseguida en los repositorios de Kali linux.
  A esta época el desarrolló de WPS reaver estaba parrado desde tiempo (fijado en su versión 1.4), dejando la escena hacker sin herramienta para ataque WPS con desarrolló y actualizaciones. 
  Brian PURCELL lanzó entonces la primera versión de Bully
La idea era respectar la esencia de Reaver : los dos programas tienen las mismas opciones y unas sintaxis casi similares.
  Los dos están escrito en C y necesitan las mismas librerías.
  La gran diferencia entre los dos es que ...son dos códigos totalmente distintos.
Bully no se basa en Reaver (en este aspecto, a nivel de código), es un código escrito desde cero, mucho mas liviano y mucho más simple que reaver
 
  Desgraciadamente, como fue el caso para reaver, el autor dejó de mantener la herramienta y retiró su código de la circulación. 
Podéis encontrar una copia (añadido soporte canales 12 y 13) del código original aquí : Lrs121/bully @ GitHub

  Lo bueno con el código libre es que hace que los programas tienen vida propia... cool
 
  2015 fue marcado por  "pixie dust", un nuevo método para averiguar el PIN en uso con un solo intento. ( ver "Pixie Dust" ataque de fuerza bruta offline para generar el PIN valido)
  La idea es de Dominique BONGART y se materializo con el código de wiire; el ahora famoso pixiewps ( ver Pixiewps de wiire : la herramienta para el novedoso ataque Pixie Dust.) que tenemos en nuestro Kali linux.

  Para poder realizar un ataque pixie dust era necesario modificar un poco las herramientas tal y como nos las habían dejado sus creadores años antes del descubrimiento del nuevo método (ver Modificar bully para realizar el ataque pixie dust )

Disponemos ahora de Reaver 1.5.2 que automatiza el ataque pixiedust (ver Reaver modificado para pixiewps)

  El compañero Aanarchyy ha tenido la buena idea de resucitar Bully, incluyendo el ataque pixie dust en la nueva versión.
Ya se había encargado de actualizar wifite ( Ataque WPS Pixie Dust integrado en Wifite por aanarchyy) .... ¡Gracias otra vez! smile

Instalación

 

  Debemos tener instaladas las mismas dependencias que las de reaver.
Es decir las de aircrack-ng ( libssl-dev,libnl-3-dev...) (todos los detalles en Instalar reaver wps en ubutnu 14.10/15.10 (y derivados))
  Debemos obviamente tener pixiewps instalado para que pueda llevar los ataques pixiedust ( ver Pixiewps de wiire : la herramienta para el novedoso ataque Pixie Dust.)
  Lo que nos daría en kali linux

sudo apt-get -y install build-essential libpcap-dev libssl-dev aircrack-ng pixiewps

Empezamos :

  1. Descargamos la rama github con

    git clone https://github.com/aanarchyy/bully.git

    Sino lo hacemos a mano : Bully.zip (hay que descomprimir el zip)

  2. Nos situamos en el directorio src

    cd bully/src
  3. Compilamos

    make
  4. Instalamos

    sudo make install

bully_2.jpg

El proceso es casi instantáneo, se nota la diferencia con reaver : Bully es un código mucho mas depurado.

El nuevo Bully en acción

Si echamos un ojo a las opciones vemos que tenemos mas o menos las mismas que en reaver.
La nomenclatura cambia un poco y tenemos un par de cositas más que con reaver, como por ejemplo :
   - El opción -T (Test mode (no inyecta paquetes) )
   - El opción -B (Bruteforce del ultimo dígito por si no respeta la regla del checksum)
Estas opciones estaban incluidas en el "viejo" Bully.

Las nuevas opciones, de la mano de Aanarchyy  :

  1. El opción -d

          -d, --pixiewps         : Attempt to use pixiewps               [No]

    Lanza automáticamente un ataque pixie dust tras el primer intento de PIN

  2. El opción -g

          -g, --genpin N         : Pin Generator [1] D-Link [2] Belkin    [0]

    Genera el PIN siguiendo los algoritmos D-Link (ver      Desenredando el algoritmo D-Link con el maestro craig heffner) o Belkin (      Viaje en las entrañas de Belkin para extirpar un nuevo algoritmo PIN) desvelados por Craig Heffner, el creador de ... reaver 

  Vamos a ver que tal nos va con el opción -d cool

Primero activamos el mode monitor

sudo airmon-ng start <interfaz>

Mi interfaz tipo wlanX se transforma en wlanXmon que usare de aquí en adelante. (wlan4mon para mi USB con rtl8187l)

A la diferencia de reaver, Bully no integra una herramienta de escaneo.
Así que hago mi escaneo con airdoump-ng activando el parámetro  --wps ( y de paso pongo --manufacturer para conocer el fabricante, simple curiosidad tongue)

sudo airodump-ng -i wlan4mon --wps --manufacturer

Una vez que veo mi objetivo copio su bSSID para lanzar el ataque con Bully con una sintaxis muy básica

time sudo bully wlan4mon -b 72:6B:D3:XX:XX:XX -d -v 3
  • time : Es solo para esta vez,  para medir el tiempo exacto transcurrido durante el proceso entero

  • sudo : Para obtener los privilegios de administrador (son necesarios) 

  • bully : Para ejecutar reaver. Es una broma : bully es para ejecutar Bully tongue

  • wlan4mon : Mi interfaz en mode monitor. Debes poner la tuya

  • -b 72:6B:D3:XX:XX:XX : El bSSID (dirección MAC wifi) del objetivo

  • -d : La nueva opción que lanzará pixiewps y bully otra vez para obtener la llave WPA haciendo un ataque "pixie dust"

  • -v 3 : Para tener la salida la más completa posible en consola

Y todo va muuuuy rápido...

bully_3.jpg

   Muy bueno comportqmiento con mi rtl8187l en condiciones "correctas sin más"

¿Es Bully mejor que reaver?

Una pregunta a la cual no responderé big_smile
Se suele leer que bully es mucho más rápido.
Esto es en gran parte falso y explico porque la gente tiene esta impresión : 
  Bully se lanza por defecto sin "delay" entre PINES mientras reaver observa por defecto una pausa de un segundo.
Si queremos comparar correctamente las velocidades debemos lanzar reaver con el opción -d 0
  De este modo la diferencia es mucho menos notable.
  Hay que decir también que estas velocidades multiplicamos los errores... si bully puede un ir un poco más rapido, reaver suele ser algo mas estable...
  Asi que es muy difícil afirmar algo y dependerá de su material y de sus gustos.
Para los que tienen un USB con chipset de tipo Ralink RT3070 ; Bully es una bendita alternativa a reaver ( que anda como el culo con los chip ralink)   
Un regalo de los dioses :

RALINK + REAVER = TRISTEZA

Saco mi magnifico adaptador de doble banda con su chipset rt3572 :

PHY	Interface	Driver		Chipset

phy0	wlan0		ath9k		Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01)
phy4	wlan1		rt2800usb	Ralink Technology, Corp. RT3572

		(mac80211 monitor mode vif enabled for [phy4]wlan1 on [phy4]wlan1mon)
		(mac80211 station mode vif disabled for [phy4]wlan1)

Si sería depresivo creo que me hubiera suicidado...
bully_4.jpg
No podemos asociar...

RALINK + BULLY = UN RAYO DE SOL EN TU TRISTE EXISTENCIA

Mismo adaptador en el mismo sitio contra el mismo router. Supongo que la presión atmosférica y la tasa de humedad son las mismas también. tongue

buly_5.jpg

La velocidad es alucinante... demasiado ya que tenemos un error sobre cuatro PIN.
Habría que poner algo de delay entre los PIN para que todo vaya sobre la seda. 
Es lo que comentaba antes : esta velocidad extra genera falló y es a menudo necsario rebajarla un poco.
Esto dicho el rt3572 va como un cohete con Bully y da gusto poder auditar el WPS con mi LP-667 gozando de todo el potencial de este formidable material.
Redes 5Ghz... ¡Ha llegado vuestra hora!  big_smile

  • Bully by Aanarchyy @ GitHub

Desconectado

#2 07-01-2016 23:38:26

dymusya
Very Important Usuario

Registrado: 19-04-2015
Mensajes: 189

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Hay que bueno eres, muchas gracias por la info, muy interesante, lo probare con mi startech.com (loopcom), a ver como funciona.

Desconectado

#3 08-01-2016 13:55:29

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Con el startech/loopcomm son dos mundos.
Y es así con todos los chipsets Ralink que funcionan con drivers rt2800usb
Pequeña prueba con un gran clásico : el RT3070
Es el chipset de la alfa "verde", la AWUS036NH con 2000mW de potencia en salida)

  Voy a pasar el mode monitor con iwconfig en lugar de airmon-ng con reaver porque reaver va mejor así con los ralink (va menos mal así sería mas exacto)
Pasare el mode monitor normalmente con bully ya que no tiene problemas de compatibildad

REAVER + RT3070 = PARA AMARGARSE

Pasando el mode monitor con iwconfig tenemos una muy  ligera mejora en comparación con airmon-ng

bully_7.jpg

Una ligera mejora que no sirve de nada. : No llego a procesar correctamente un solo PIN, no se puede hacer un brute force.
                                                             Peor aún : no consigo recibir correctamente el M3, paquete absolutamente necesario para un intento de ataque pixie dust.... No puedo hacer un pixiedust.
  Luego no llega a asociar un rato y vuelvo a tener un intercambio, sucio otra vez...
Supongo que con mucha paciencia, reanudando el ataque cada vez que llegamos a un bucle "de la muerte" ("failed to asscociate") conseguiría hacer un pixiedust y mandar un PIN...  Con muchas lagrimas y sudor...

BULLY + RT3070 = UN POCO DE DULZURA EN UN MUNDO DE BRUTOS

Esta vez no me hace falta hacer maniobras raras con el mode monitor para obtener resultados.
¡Airmon-ng en acción!

bully_8.jpg

La conclusión es obvia : PIxiewps y bruteforce WPS son ahora posible.

Bully es muy ligero y no se necesitaran dependencias extras si ya tienen la pareja aircrack-ng/reaver en su sistema.
Los propietarios  de chispet USB Ralink no deberían pensárselo dos veces : Bully es gratis y tiene ahora soporte pixie dustsmile

Desconectado

#4 08-01-2016 21:19:27

atim
Very Important Usuario

Registrado: 15-03-2015
Mensajes: 189

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

kcdtv escribió:

La conclusión es obvia : PIxiewps y bruteforce WPS son ahora posible.

Esto que significa, que se puede hacer un ataque wps forzando todos los pines sin que se bloquee?

Desconectado

#5 09-01-2016 14:12:44

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

No es esto que quería decir.
Lo que quería decir es

*Con Reaver y mis chipsets USB Ralink
  - No puedo comprobar un solo PIN : en estas condiciones un brute force es impossible
  - Peor aún : no me ha sido posible hacer un ataque pixiedust porque no consigo ni siquiera llegar al M3,

*Con Bully y mis chipsets Ralink
  - Puedo comprobar unos PINes = El brute force es possible
  - Si puedo comprobvar un PIN significa que puedo obtener un M3 y puedo hacer un ataque pixue dust

  Conclusión = PIxiewps y bruteforce WPS son ahora posible. ( con chipset ralink y bully)

Porque "antes" del "nuevo" Bully solo teníamos al reaver mod para hacer todo de forma automatizada (pixie dust y/o brute force) 
  Y los chispets ralink van muuuuuuuuuuuy mal con reaver.
Ahora podemos hacer ambos con nuestros Ralink gracias a Bully.

Sobre el bloqueo del WPS ("AP rate limit") : en la ultima liña de la captura con bully puedes ver "WPS lockout reported"
Lo que quiere decir que se ha activado el bloqueo del WPS.
En este caso es una buena noticia porque significa que he mandado correctamente los mensajes "M" de mi protocolo WPS hasta que el router me bloquee por PINes no legítimos
Con reaver no se activa el mecanismo de defensa porque no he llegado a hacer un solo intercambio "WPS PIN" correctamente

  El bloqueo es independiente de la herramienta para crack o conexión WPS que usas.
  No hay forma conocida de burlar este bloqueo.
Se ven circular unos cuantos scripts que usan mdk3 para "resetear la cuenta"
Los que han usado mdk3 para intentar resetear o "crashear" un router a distancia saben que esto no funcionará porque los routers aguantan los ataques.
Era asi en 2010 antes de que se diera a conocer la brecha WPS
  La cosa no cambia. Es mas bien los contrario : Los routers que vemos en 2016 tienen mas RAM, mas CPU etc...
  Ni hablo del cambio de Mac porque no tiene sentido (y lógicamente no funciona)
  Una pista interesante fue la idea soxrok2212, que era resetear a distancia un router bombardeándolo con mensajes "M" una vez empezado el protocolo WPS.
  No llegó a nada concluyente.
  Pero por ahi van los tiros si lo que queremos es "resetear" (y por lo tanto levantar el bloqueo WPS)  un router a distancia : buscando nuevo tipos de inyecciones que las que ofrecen el viejo compañero mdk3.

Desconectado

#6 09-01-2016 21:30:51

atim
Very Important Usuario

Registrado: 15-03-2015
Mensajes: 189

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Muchas gracias por la explicación kcdtv, ahora me queda claro porque no lo habia entendido bien. wink

Desconectado

#7 10-01-2016 11:02:24

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Que bueno que bully no se olvide,
remercies kcdtv esto si que son reyes wenos y no los de los camellos xD

porque no te compras una atheros como todo el mundo tiras la Ralink y dejas de quejarte tanto xD
puedes comprar por 10 euros una tp-link 722N con chip ath9k que va de lujo y ademas dura años no se rompe te lo aseguro, mas barato imposible,
aqui una muestra:
http://www.amazon.es/Adaptador-USB-Wifi … p-link+722


tambien se actualizo pixiewps, no pusiste nada por aqui ya te lo digo yo por si no lo sabias,
Updated to 1.2.2

bonne année toallin a ver si este año tienes suerte y puedes dejar las drogas xD

Desconectado

#8 10-01-2016 19:55:14

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

¡Hey ! ¡ Mister DK !
Mi regalo para los reyes es tu vuelta por aquí  "wapo" tongue big_smile
¿Que tal estas?
      ¿Has acabo tu "sabatismo"?
¿Has dado la vuelta al mundo?

Que bueno que bully no se olvide,

smile Sabía que la noticia te iba a gustar.
Después de tanto tocar me los huevos con lo de poner bully en WPSPIN,... Me hubiera dado algo si hubieras dicho : "¿Bully?¿Quien quiere usar esta mierda hoy en día? "
big_smile

porque no te compras una atheros como todo el mundo tiras la Ralink y dejas de quejarte tanto xD

big_smile 
Me quejo para sentirme vivo big_smile
Soy de la vieja escuela y empece con los atheros... solo atheros,.,,, PCI 2T2R mad-wifi + atheros vs WEP WLAN_XX y estas cosas big_smile
Tengo desde mucho tiempo un wn722n... ...Lo compré cuando llegó a España, antes de que haya soporte linux, la cague un poco... tenia un USB ar9170 que funcionaba y pensé " el ar9271 va a funcionar".
  Me pelee mucho para hacerlo rular en linux probando todo lo que podía.
  Tengo pruebas big_smile esto era en 2010

open a terminal and write
cd /home/kcdtv/Escritorio/compat-wireless-2010-03-19
sudo make
sudo make install

 
[SOLVED] TP-WN722n [ AR9271 Chipset ] + ath_htc driver PROBLEM .

De lo mejor en relación cualidad-precio, sin dudas ningunas.

tambien se actualizo pixiewps, no pusiste nada por aqui ya te lo digo yo por si no lo sabias,
Updated to 1.2.2

¡Yes!
Gracias, no me había fijado.
Muy bien; veo que wiire ha implementado el opción para hacer el brute force contra chispet Realteck.
Algo que puedo probar y me viene bien ya que mis routers con chipset Realteck usan como semilla la fecha de la última actualización/instalación del firmware en lugar del momento del inetrcambio WPS y necesitan un brute force.


bonne année toallin a ver si este año tienes suerte y puedes dejar las drogas xD

  Para esta buena resolución ya la cague en noche vieja big_smile
Estoy de resaca aún..

Bonne année à toi! smile

Desconectado

#9 10-01-2016 21:53:47

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

ACTUALIZACIóN :
Nuveo nivel de "verbosity" ( -v 4 )

bully_31.jpg

Se publicó ayer esta actualización...Incluye unas mejores de código y un nuevo nivel de "verbosity" más alto (el nivel cuatro)
No he visto cambios notables entre nivel 3 y 4 pero me peude escapar algo.
En todos casos ahora el nivel 3 esta activado por defecto y podemos invocar el modo cuatro con -v 4

 -v, --verbosity N      : Verbosity level 1-4, 1 is quietest     [3]

Desconectado

#10 11-01-2016 10:02:15

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

si yo soy tu regalo de reyes que reyes mas triste tienes este año xD
estoy de aquella manera como siempre.
el sabatismo acaba de aqui a un siglo, me puesto un siglo de tope, creo que llevo 2 meses todavia me falta cacho xD
no soy willy fox smile


BULLY + AR9271 = ORGASMO ASEGURADO

bueno al tema, una imagen vale mas ........

b1085e70671060ca930cdb133c54d34e.png

el time es brutal 1 segundo, y 10 milesimas, ha sido darle al enter y darme el pin, simplemente brutal.
usando pixiewps 1.2.2,
sobran los palabros.

probado con ap vulnerable, con los no vulnerables no va tan bien pero solo probe en un rato, habra que probar mas,
ya dire algo si sale algo que valga la pena decir.
me olvide usar la opcion -v 4, para la proxima,

la opcion time no la conocia a partir de ahora la usare en alguna que otra prueba, no sabia ni que la tenia en el sistema,
gracias por enrrollarte tanto ha sido bueno leer todo el hilo smile

yo no tocarte los huevos con lo de poner bully en WPSPIN solo enseñar el camino de la luz,
y por los comentarios de todo el hilo no dejas de darme la razon,
veo que has visto la luz hasta de resaca alabado sea bully xD
bully rules reaver suck xD

saluti

Desconectado

#11 11-01-2016 20:48:33

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

bully rules reaver suck xD

big_smile
¡Ves!
Se te ha escapado justo para concluir tu respuesta...
...Es más fuerte que tu: No puedes parrar de hacer proselitismo para bully. .
¿Que es lo que tiene de más que yo para provocarte hasta "orgasmos"? Cabrón de bully big_smile

Desconectado

#12 12-01-2016 12:34:46

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

es mas rapido provocandolos solo tarda 1 segundo xD

Desconectado

#13 12-01-2016 13:44:53

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Contra esto no hay quien pueda competir.... big_smile

Desconectado

#14 15-01-2016 18:42:27

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

esta captura es solo para seguir diciendo que bully rules y reaver suck con fundamento xD

bully detecta que wps no esta activado en 1 segundo mientras reaver se tira la vida intentando asociar,
lo corte porque sino la captura de reaver no cabria en el foro xDDDD

ya se que esta wash, airodump y mas pero el concepto es el concepto, bully rules reaver suck xD

01125f647225b9f49ce6c1d18a4e47d3.png

saludos

Desconectado

#15 16-01-2016 13:40:40

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

ya se que esta wash, airodump y mas pero el concepto es el concepto, bully rules reaver suck xD

Totalmente de acuerdo contigo.
  Si este es el concepto; hay que ir hasta el fundo de las cosas. El arte no es objetivo. wink

Gracias por este aporte muy interesante... Me tienes muy muy intrigado por esta diferencia entre los dos a la hora de aprehender la viabilidad del ataque.
¿Puedes pasar me un beacon (probes) de este routers?
¿Puedes relanzar bully contra este router pero esta ves poniendo -v 4 ?
Es para ver con mas precisión a que momento exactamente y con que información Bully se da cuenta de que el WPS no esta activado/habilitado. 
Dice que no tiene "WPS IE" (WPS Identification? + Exchange?  )
No si es porque ni siquiera hay un tag WPS en los probes o si es porque bully lo deduce de un modo que no hace reaver interpretando el contenido de los tags dedicados al WPS en los PROBE.

edit ...
Ahora que me fijo bien, la diferencia es que con bully estas asociado, con reaver a ninguno momento llega a intercambiar los PROBES.
ES probable que bully lo detecte al no recibir el M1, en la forma en la cual no lo recibe porque vemos que se pone bien en el canal después los probes....
¿Te molestaría capturar el trafico cuando pruebas bully contra este router y mandarme el .cap para que echamos un ojo?

Un saludo biere

Desconectado

#16 17-01-2016 05:53:11

USUARIONUEVO
Usuario

Registrado: 07-07-2015
Mensajes: 312

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Habia escrito un post largo ..y no se ha donde ha hido a parar.  ?

¿recordáis que las ralink necesitan la interface UP para trabajar en reaver?

Con el airmon-ng nuevo , no se como queda la interface al pasar a wlanXmon , creo quedaba UP pero no rulaba con reaver.
Sin embargo el airmon-ng viejo , crea la interface virtual monX , y si levantas la interface real wlanX si trabaja en reaver.

Como ya ha visto kcdtv es un problema de asociación .. no mete pines por que no asocia si la interface esta abajo...(como digo no contrlolo el tema del nuevo airmon-ng y creo que si la dejaba arriba pero aun asi no trabajaba)

Las ralink inyectan en reaver , seguro.  :=)


kcdtv , si puedes hacerte con una copia del viejo airmon-ng prueba lo que te digo ..pasa a monitor y levanta wlanX , veras como inyecta la ralink :=)

Ultima edición por USUARIONUEVO (17-01-2016 05:55:23)

Desconectado

#17 17-01-2016 15:30:20

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

USUARIONUEO escribió:

Habia escrito un post largo ..y no se ha donde ha hido a parar.  ?

Por defecto estas conectado medio hora a tu sesión sin "hacer nada" (escribir en el recuadro de respuesta no es hacer algo porque no haces una acción en el foro, hacer previsualización del mensaje si)
Esto lo puedes cambiar en los parámetros de tu cuenta, poner una hora o permanente o el intervalo de tiempo que quieres. 

USUARIONUEVO escribió:

¿recordáis que las ralink necesitan la interface UP para trabajar en reaver?

Si
Por esto he usado también iwconfig para pasar el mode monitor wink :

bully_7.jpg

USUARIONUEVO escribió:

Las ralink inyectan en reaver , seguro.  :=)

¡Nadie ha dicho que no ! big_smile
Pero el rendimiento no esta a la altura del potencial del chipset.
Con el rt3072 va algo mejor que con el rt3070
Esto son pruebas que hice en su tiempo  y que he publicado por otros lados

reaver20.png

Por supuesto con la interfaz wlanX de mi ralink "up". Sino ni conseguía probar un PIN.
Esto era en condiciones perfecta en un router muy "reaver friendly"

USUARIONUEVO escribió:

Como ya ha visto kcdtv es un problema de asociación .. no mete pines por que no asocia si la interface esta abajo...(como digo no contrlolo el tema del nuevo airmon-ng y creo que si la dejaba arriba pero aun asi no trabajaba)

Has leído con prisas y no has entendido de que iba el ultimo mensaje de dk. smile
Bully en su caso no manda tampoco un solo PIN : se parra automáticamente al detectar que el WPS en mode PIN no esta habilitado en el router.

bully_40.jpg

Independientemente del caso y del chipset, de forma general,
Es una cosa que no hace reaver.
Te dirá si hay el AP rate activado cuando lo esta y se pondrá en minuto en pausa antes de volver a mirar y nada más.
Reaver (con el chipset que sea) seguirá probando sin exitó sin dar te explicaciones contra los routers que no tienen el WPS en mode PIN realmente funcional.
Me parece que bully tiene una rutina de comprobación que no tiene reaver que se dispara en algunos casos.
Esta rutina no se baza en los TAGS WPS en los beacon : se activa después no recibir un M1 (ves en la captura que la asociación con PROBES se hace bien). 
Supongo que no es algo tan simple como "no recibo un M1" porque esto podría ser un simple "timeout".
Me tiene intrigado...

Desconectado

#18 17-01-2016 22:36:22

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

kcdtv escribió:

¿Puedes pasar me un beacon (probes) de este routers?
¿Puedes relanzar bully contra este router pero esta ves poniendo -v 4 ?

Ahora que me fijo bien, la diferencia es que con bully estas asociado, con reaver a ninguno momento llega a intercambiar los PROBES.

creo que no hace falta que te pase nada no es la culpa de ese router bully siempre ha hecho eso desde el principio,
pruebalo contra cualquier router que no lo tenga activado y te deberia salir lo mismo,
pero si quieres si lo vuelvo a ver te paso un cap.

aunque reaver asocie es el mismo concepto, bully lo deduce de otra menera no hay duda, que yo no se cual es.
otro detalle es que bully asocia en 1 segundo y reaver se tira la vida,


otra cosa cuando actualizo aircrack le quito el airmon nuevo y sigo en el viejo,
exactamente uso el de la revison 2421 que fue la de antes del cambio y el resto es la revision 2810 que es la ultima a dia de hoy,
asi me siguen funcionando todos los scripts antiguos como el WPSpin sin comerme la olla tongue
hasta que no tenga que cambiarlo si o si sigo usando ese, tambien lo levanto con ifconfig nunca con airmon, quizas alguna vez pero no noto diferencia,
si quereis os subo la revison 2421 que lleva el antiguo con el airmon-zc separados, solo teneis que compilar y sustituir el nuevo airmon por ese o esos aunque el zc nunca lo uso pero se lo pongo igual, es mi rutina de actualizacion.


ademas hay una pelicula del genio Larry Clark que se llama Bully, tambien lo prefiero por eso aunque Kids sea mejor pelicula.
esto que acabo de decir es una payasada pero es asi en mi mente deforme y mi mente deforme manda xDD

saludos

otro detalle quizas sea que uso atheros no ralink

otra vez que no paro de equivocarme con las prisas,
dije que lo levantaba con ifconfig pero es con iw, exactamenrte asi,

iw dev wlan0 interface add mon0 type monitor

aclarado xD

Ultima edición por kcdtv (18-01-2016 00:45:47)

Desconectado

#19 18-01-2016 00:44:02

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

creo que no hace falta que te pase nada no es la culpa de ese router bully siempre ha hecho eso desde el principio,
pruebalo contra cualquier router que no lo tenga activado y te deberia salir lo mismo,
pero si quieres si lo vuelvo a ver te paso un cap.

Si, he ido mas rápido que la música y pensaba en estos routers que salen con el WPS habilitado pero dónde  no lo esta del todo.
Hablas de routers que claramente anuncian que no hay wps.(mas bien no anucian WPS en sus PROBES)
aclarado, no hace falta que me pasas nada tongue

aunque reaver asocie es el mismo concepto, bully lo deduce de otra menera no hay duda, que yo no se cual es.
otro detalle es que bully asocia en 1 segundo y reaver se tira la vida,

Al final tengo claro que lo hace como lo hace wash, leyendo los probes.
bully lleva un filtro al lanzar el tool : recibe el probes (que no puede conocer) y a este momento ve que no hay apartado WPS en los PROBES y cancela la operación.   
Como bien dices reaver viene con wash y se supone que has mirrado en wash antes de hacer el ataque... y estos PA no te salen.

otro detalle quizas sea que uso atheros no ralink

Con el ar9271 no hace falta de todo modo tener la interfaz levantada en mode managed.
Anda bien "nromalamente" y con airmon-ng(airmon-zc) o airmon-ng viejo... el problema de la asociación con Ralink y reaver es muy especifico.

Desconectado

#20 18-01-2016 14:16:33

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

kcdtv escribió:

Al final tengo claro que lo hace como lo hace wash, leyendo los probes.
bully lleva un filtro al lanzar el tool : recibe el probes (que no puede conocer) y a este momento ve que no hay apartado WPS en los PROBES y cancela la operación.   
Como bien dices reaver viene con wash y se supone que has mirrado en wash antes de hacer el ataque... y estos PA no te salen.

visto asi es como si bully llevara algo de code de wash, exactamente el que rechaza los aps sin wps activado pero en vez de ocultarlos te lo avisa,
curioso xD


dejo aqui el codigo del airmon antiguo,
asi no subo todo el pack de la revision 2421 para compilar porque no vale la pena compilarlo porque el scripts no cambia en la compilacion al no ser un binario,

copiar a un texto y llamarlo airmon-ng, sustituir por el nuevo y ya puedes usar el airmon anterior al cambio.

nunca me habia fijado pero en PROCESSES pasa bastante de wicd y si nombra wlassistant que esta recaducado

#!/bin/sh

USERID=""
IFACE=""
KISMET=/etc/kismet/kismet.conf
CH=$3; [ x$3 = "x" ] && CH=10
IFACE_FOUND="false"
MADWIFI=0
MAC80211=0
USE_IW=0
IW_SOURCE="https://www.kernel.org/pub/software/network/iw/iw-3.14.tar.gz"
IW_ERROR=""
UDEV_ISSUE=0

if [ -f "`which iw 2>&1`" ]
then
	USE_IW=1
fi

if [ "x$MON_PREFIX" = "x" ]
then
MON_PREFIX="mon"
fi

PROCESSES="wpa_action\|wpa_supplicant\|wpa_cli\|dhclient\|ifplugd\|dhcdbd\|dhcpcd\|NetworkManager\|knetworkmanager\|avahi-autoipd\|avahi-daemon\|wlassistant\|wifibox"
PS_ERROR="invalid"

usage() {
	printf "usage: `basename $0` <start|stop|check> <interface> [channel or frequency]\n"
	echo
	exit
}

startStdIface() {
	iwconfig $1 mode monitor >/dev/null 2>&1
	if [ ! -z $2 ]
	then
	    if [ $2 -lt 1000 ]
	    then
		iwconfig $1 channel $2 >/dev/null 2>&1
	    else
		iwconfig $1 freq "$2"000000 > /dev/null 2>&1
	    fi
	fi
	iwconfig $1 key off >/dev/null 2>&1
	ifconfig $1 up
	printf " (monitor mode enabled)"
}


stopStdIface() {
	ifconfig $1 down >/dev/null 2>&1
	iwconfig $1 mode Managed >/dev/null 2>&1
	ifconfig $1 down >/dev/null 2>&1
	printf " (monitor mode disabled)"
}

getModule() {
    if [ -f "/sys/class/net/$1/device/driver/module/srcversion" ]
    then
        srcver1=`cat "/sys/class/net/$1/device/driver/module/srcversion"`
        for j in `lsmod | awk '{print $1}' | grep -v "^Module$"`
        do
            srcver2="`modinfo $j 2>/dev/null | grep srcversion | awk '{print $2}'`"
            if [ $srcver1 = "$srcver2" ]
            then
                MODULE=$j
                break
            fi
        done
    else
        MODULE=""
    fi
#    return 0
}

getDriver() {
   if [ -e "/sys/class/net/$1/device/driver" ]
   then
       DRIVER="`ls -l "/sys/class/net/$1/device/driver" | sed 's/^.*\/\([a-zA-Z0-9_-]*\)$/\1/'`"
       BUS="`ls -l "/sys/class/net/$1/device/driver" | sed 's/^.*\/\([a-zA-Z0-9_-]*\)\/.*\/.*$/\1/'`"
   else
       DRIVER=""
       BUS=""
   fi
   if [ x$(echo $DRIVER | grep ath5k) != "x" ]
   then
       DRIVER="ath5k"
   fi
   if [ x$(echo $DRIVER | grep ath9k) != "x" ]
   then
       DRIVER="ath9k"
   fi
   if [ x$DRIVER = "x" ]
   then
	if [ -d /sys/class/net/tiwlan0/wireless ]
	then
		DRIVER=WiLink
	fi
   fi

}

scanProcesses() {
    if [ -f "`which service 2>&1`" ] && [ x"$1" = "xkill" ]
    then
    	service network-manager stop 2>/dev/null >/dev/null
 	service avahi-daemon stop 2>/dev/null >/dev/null
    fi

    match=`ps -A -o comm= | grep $PROCESSES | grep -v grep | wc -l`
    if [ $match -gt 0 -a x"$1" != "xkill" ]
    then
        printf "\n\n"
        echo "Found $match processes that could cause trouble."
        echo "If airodump-ng, aireplay-ng or airtun-ng stops working after"
        echo "a short period of time, you may want to kill (some of) them!"
        echo -e "\nPID\tName"
    else
        if [ x"$1" != "xkill" ]
        then
            return
        fi
    fi

    if [ $match -gt 0 -a x"$1" = "xkill" ]
    then
        echo "Killing all those processes..."
    fi

    i=1
    while [ $i -le $match ]
    do
        pid=`ps -A -o pid= -o comm= | grep $PROCESSES | grep -v grep | head -n $i | tail -n 1 | awk '{print $1}'`
        pname=`ps -A -o pid= -o comm= | grep $PROCESSES | grep -v grep | head -n $i | tail -n 1 | awk '{print $2}'`
        if [ x"$1" != "xkill" ]
        then
            printf "$pid\t$pname\n"
        else
            kill $pid
        fi
        i=$(($i+1))
    done
}

checkProcessesIface() {
    if [ x"$1" = "x" ]
    then
        return
    fi

    match2=`ps -o comm= -p 1 2>&1 | grep $PS_ERROR | grep -v grep | wc -l`
    if [ $match2 -gt 0 ]
    then
	return
    fi

    for i in `ps auxw | grep $1 | grep -v "grep" | grep -v "airmon-ng" | awk '{print $2}'`
    do
        pname=`ps -o comm= -p $i`
        echo "Process with PID $i ($pname) is running on interface $1"
    done
}

getStack() {
    if [ x"$1" = "x" ]
    then
        return
    fi

    if [ -d /sys/class/net/$1/phy80211/ ]
    then
        MAC80211=1
    else
        MAC80211=0
    fi
}

#you need to run getDriver $iface prior to getChipset
getChipset() {
    if [ x"$1" = "x" ]
    then
        return
    fi

    CHIPSET="Unknown "

    if [ x$DRIVER = "xOtus" -o x$DRIVER = "xarusb_lnx" ]
    then
		CHIPSET="AR9001U"
    fi

    if [ x$DRIVER = "xWiLink" ]
    then
	CHIPSET=`dmesg | grep TIWLAN | grep CHIP | tail -n 1 | awk -F\  '{ print $6 }'` 
   	if [ x$CHIPSET = "x" ]
	then
		CHIPSET="Unknown"
	else
		CHIPSET="TI${CHIPSET}"	
	fi 
    fi
    
    if [ x$DRIVER = "xar9170usb" ]
    then
    	getPhy $2
    	CHIPSET="Atheros `dmesg | grep $PHYDEV | grep "is registered as" | cut -d':' -f 2 | cut -d' ' -f 3`"
    fi

    if [ x$DRIVER = "xzd1211rw_mac80211" ]
    then
        CHIPSET="ZyDAS 1211"
    fi

	if [ x$DRIVER = "xzd1211rw" ]
    then
        getPhy $2
        TEMP_USBPORT="`dmesg | grep $PHYDEV | grep zd1211rw | cut -d'w' -f 2 | cut -d' ' -f 2`"
        TEMP_CHIPSET="`dmesg | grep "$TEMP_USBPORT" | grep chip | tail -n 1 | cut -d':' -f 3 | cut -d' ' -f 2`"
        CHIPSET="Zydas $TEMP_CHIPSET"
    fi

    if [ x$DRIVER = "xacx" -o x$DRIVER = "xacx-mac80211" -o x$DRIVER = "xacx1xx" ]
    then
        CHIPSET="TI ACX1xx"
    fi

    if [ x$DRIVER = "adm8211" ]
    then
        CHIPSET="ADMtek 8211"
    fi

    if [ x$DRIVER = "xat76_usb" ]
    then
        CHIPSET="Atmel   "
    fi

    if [ x$DRIVER = "xb43" -o x$DRIVER = "xb43legacy" -o x$DRIVER = "xbcm43xx" -o x$DRIVER = "xwl" ]
    then
        CHIPSET="Broadcom"
        if [ x$DRIVER = "xb43" ]
        then
        	getPhy $2
        	TEMP_CHIPSET="`dmesg | grep $PHYDEV | grep found | cut -d':' -f 2 | cut -d' ' -f 3`"
        	if [ x$TEMP_CHIPSET = "x4318" ]
        	then
        		CHIPSET="$CHIPSET $TEMP_CHIPSET"
        	fi
        fi
    fi

    if [ x$DRIVER = "xprism54" -o x$DRIVER = "xp54pci" -o x$DRIVER = "xp54usb" ]
    then
        CHIPSET="PrismGT "
    fi

    if [ x$DRIVER = "xhostap" ]
    then
        CHIPSET="Prism 2/2.5/3"
    fi

    if [ x$DRIVER = "xr8180" -o x$DRIVER = "xrtl8180" ]
    then
        CHIPSET="RTL8180/RTL8185"
    fi

    # r8187 is reporting itself as rtl8187
    if [ x$DRIVER = "xrtl8187" ]
    then
        getPhy $2
       if [ x"$PHYDEV" = "x" ]
       then
               CHIPSET="RTL8187 "
       else
               CHIPSET="`dmesg | grep $PHYDEV | grep hwaddr | cut -d',' -f 2 | cut -d' ' -f 2`"
               if [ x$CHIPSET = "xRTL8187vB" ]
               then
                       CHIPSET="Realtek RTL8187L"
               else
                       CHIPSET="Realtek $CHIPSET"
               fi
       fi
    fi
    
    if [ x$DRIVER = "xr8187" ]
    then
        CHIPSET="RTL8187 "
    fi

    if [ x$DRIVER = "xrt2570" -o x$DRIVER = "xrt2500usb" ]
    then
        CHIPSET="Ralink 2570 USB"
    fi

    if [ x$DRIVER = "xrt2400" -o x$DRIVER = "xrt2400pci" ]
    then
        CHIPSET="Ralink 2400 PCI"
    fi

    if [ x$DRIVER = "xrt2500" -o x$DRIVER = "xrt2500pci" ]
    then
        CHIPSET="Ralink 2560 PCI"
    fi

    if [ x$DRIVER = "xrt61" -o x$DRIVER = "xrt61pci" ]
    then
        CHIPSET="Ralink 2561 PCI"
    fi

    if [ x$DRIVER = "xrt73" -o x$DRIVER = "xrt73usb" ]
    then
        CHIPSET="Ralink 2573 USB"
    fi

	#if [ x$DRIVER = "xrt2800usb" ]
	#then
	#	getPhy $2
	#	CHIPSET="Ralink `dmesg | grep rt2800usb | grep firmware | cut -d':' -f 4 | cut -d' ' -f 3 | cut -d'.' -f 1`"
	#fi
	
    if [ x$DRIVER = "xrt2800" -o x$DRIVER = "xrt2800usb" -o x$DRIVER = "xrt3070sta" ]
    then
        CHIPSET="Ralink RT2870/3070"
    fi

    if [ x$DRIVER = "xipw2100" ]
    then
        CHIPSET="Intel 2100B"
    fi

    if [ x$DRIVER = "xipw2200" ]
    then
        CHIPSET="Intel 2200BG/2915ABG"
    fi

    if [ x$DRIVER = "xipw3945" -o x$DRIVER = "xipwraw" -o x$DRIVER = "xiwl3945" ]
    then
        CHIPSET="Intel 3945ABG"
    fi

    if [ x$DRIVER = "xipw4965" -o x$DRIVER = "xiwl4965" ]
    then
        CHIPSET="Intel 4965AGN"
    fi

    if [ x$DRIVER = "xiwlagn" -o x$DRIVER = "xiwlwifi" ]
    then
        CHIPSET="Intel 4965/5xxx/6xxx/1xxx"
        
        DETECTED_STR="`dmesg | grep $DRIVER | grep Detected | tail -n 1 `"
        LINK_POS="3"
        FOUND="0"
        
        if [ x"$DETECTED_STR" != "x" ]
        then
        	INTEL_WORD="Link"
        	if [ "`echo "$DETECTED_STR" | grep $INTEL_WORD | wc -l`" = "0" ]
        	then
        		INTEL_WORD="Wireless"
        		if [ "`echo "$DETECTED_STR" | grep $INTEL_WORD | wc -l`" = "0" ]
			then
				INTEL_WORD="Ultimate"
        			if [ "`echo "$DETECTED_STR" | grep $INTEL_WORD | wc -l`" = "0" ]
				then
						INTEL_WORD="Advanced"
	        		fi	
			fi
        	fi
        	
        	while [ $FOUND = "0" ]
		do
			FOUND=`echo "$DETECTED_STR" | cut -d' ' -f $LINK_POS | grep $INTEL_WORD | wc -l`
			LINK_POS=$(($LINK_POS+1))
		done

		TEMP_CHIPSET=`echo "$DETECTED_STR" | cut -d' ' -f $LINK_POS`

		case "x${TEMP_CHIPSET}" in
	#               x5100AGN)
	#                       CHIPSET="Intel $TEMP_CHIPSET"
	#                       ;;
			x5300)
				TYPE_TEMP=`echo "$DETECTED_STR" | cut -d' ' -f $(($LINK_POS+1)) | awk -F, '{ print $1 }' `
				CHIPSET="Intel ${TEMP_CHIPSET}${TYPE_TEMP}"
				;;
			x1000)
				TYPE_TEMP=`echo "$DETECTED_STR" | cut -d' ' -f $[$LINK_POS+2]`
				CHIPSET="Intel ${TEMP_CHIPSET}${TYPE_TEMP}"
				;;
			*)
				CHIPSET="Intel $TEMP_CHIPSET"
				;;
		esac
        fi

    fi

	if [ x$DRIVER = "xath5k" ]
	then
		getPhy $2
		CHIPSET="Atheros `dmesg | grep $PHYDEV | grep "chip found" | cut -d':' -f 2 | cut -d' ' -f 3`"
	fi
	
    if [ x$DRIVER = "xath_pci" ]
    then
        CHIPSET="Atheros "
    fi
    
    if [ x$DRIVER = "xath9k" ]
    then
    	getPhy $2
    	CHIPSET="Atheros `dmesg | grep $PHYDEV | grep Atheros | tail -n 1 | cut -d':' -f 2 | cut -d' ' -f 3`"
    fi

    if [ x$DRIVER = "xorinoco" ]
    then
        CHIPSET="Hermes/Prism"
    fi
    
    if [ x$DRIVER = "xath9k_htc" -o x$DRIVER = "xusb" ]
    then
        CHIPSET="AR9001/9002/9271"
    fi
    
    if [ x$DRIVER = "xwl12xx" ]
    then
            CHIPSET="TI WL1251/WL1271"
            IS_WL1251="`dmesg| grep firmware | grep wl1251 | wc -l`"
            IS_WL1271="`dmesg| grep firmware | grep wl1271 | wc -l`"

            if [ $IS_WL1251 != "0" ] && [ $IS_WL1271 = "0" ]
            then
                CHIPSET="TI WL1251"
            fi
            if [ $IS_WL1271 != "0" ] && [ $IS_WL1251 = "0" ]
            then
                CHIPSET="TI WL1271"
            fi
            # In any other case, we can't determine the chipset and thus give the generic: 1251/1271
    fi
    
    
    if [ x$DRIVER = "xr871x_usb_drv" ]
    then
            CHIPSET="Realtek 81XX"
    fi
    
    if [ x$DRIVER = "xcarl9170" ]
    then
            getPhy $2
            CHIPSET=`dmesg | grep usb | grep $PHYDEV | awk -F\  '{ print $3 " " $4 }'`
	    if [ `echo $CHIPSET | grep -i atheros | wc -l` -eq 0 ]
	    then
		CHIPSET=`dmesg | grep usb | grep $PHYDEV | awk -F\  '{ print $5 " " $6 }'`
	    fi
    fi
}

getPhy() {
    PHYDEV=""
    if [ x"$1" = "x" ]
    then
        return
    fi

    if [ x$MAC80211 = "x" ]
    then
        return
    fi

    if [ -d /sys/class/net/$1/phy80211/ ]
    then
	PHYDEV="`ls -l "/sys/class/net/$1/phy80211" | sed 's/^.*\/\([a-zA-Z0-9_-]*\)$/\1/'`"
    fi
}

getNewMon() {
    i=0

    while [ -d /sys/class/net/$MON_PREFIX$i/ ]
    do
        i=$(($i+1))
    done

    MONDEV="$MON_PREFIX$i"
}

if [ x"`which id 2> /dev/null`" != "x" ]
then
	USERID="`id -u 2> /dev/null`"
fi

if [ x$USERID = "x" -a x$UID != "x" ]
then
	USERID=$UID
fi

if [ x$USERID != "x" -a x$USERID != "x0" ]
then
	echo Run it as root ; exit ;
fi

iwpriv > /dev/null 2> /dev/null ||
  { echo Wireless tools not found ; exit ; }

if [ x"$1" = "xcheck" ] || [ x"$1" = "xstart" ]
then
    scanProcesses
    for iface in `iwconfig 2>/dev/null | egrep '(IEEE|ESSID|802\.11|WLAN)' | sed 's/^\([a-zA-Z0-9_.]*\) .*/\1/' | grep -v wifi`
    do
#         getModule $iface
#         getDriver $iface
        checkProcessesIface $iface
    done

    if [ x"$2" = "xkill" ]
    then
        scanProcesses "$2"
    fi
    if [ x"$1" = "xcheck" ]
    then
        exit
    fi
fi

printf "\n\n"

if [ $# -ne "0" ]
then
    if [ x$1 != "xstart" ] && [ x$1 != "xstop" ]
    then
        usage
    fi

    if [ x$2 = "x" ]
    then
        usage
    fi
fi

SYSFS=0
if [ -d /sys/ ]
then
    SYSFS=1
fi

printf "Interface\tChipset\t\tDriver\n\n"


for iface in `ifconfig -a 2>/dev/null | egrep UNSPEC | sed 's/^\([a-zA-Z0-9_]*\) .*/\1/'`
do

 if [ x"`iwpriv $iface 2>/dev/null | grep ipwraw-ng`" != "x" ]
 then
        printf "$iface\t\tIntel 3945ABG\tipwraw-ng"
        if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
        then
                cp $KISMET~ $KISMET 2>/dev/null &&
                echo "source=ipw3945,$iface,Centrino_abg" >>$KISMET
                startStdIface $iface $CH
                iwconfig $iface rate 1M 2> /dev/null >/dev/null
                iwconfig $iface txpower 16 2> /dev/null >/dev/null
        fi
        if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
        then
                stopStdIface $iface
                iwconfig $iface txpower 15 2> /dev/null >/dev/null
                iwconfig $iface rate 54M 2> /dev/null >/dev/null
        fi
        echo
        continue
 fi

 if [ -e "/proc/sys/dev/$iface/fftxqmin" ]
 then
    MADWIFI=1
    ifconfig $iface up
    printf "$iface\t\tAtheros\t\tmadwifi-ng"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
        IFACE=`wlanconfig ath create wlandev $iface wlanmode monitor -bssid | grep ath`
        cp $KISMET~ $KISMET 2>/dev/null &&
        echo "source=madwifi_g,$iface,Atheros" >>$KISMET
        ifconfig $iface up 2>/dev/null >/dev/null
        if [ $CH -lt 1000 ]
        then
            iwconfig $IFACE channel $CH 2>/dev/null >/dev/null
        else
            iwconfig $IFACE freq "$CH"000000 2>/dev/null >/dev/null
        fi
        ifconfig $IFACE up 2>/dev/null >/dev/null
        UDEV_ISSUE=$?
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
            echo "$iface does not support 'stop', do it on ath interface"
    fi
    echo
    continue
 fi
done

if [ $MADWIFI -eq 1 ]
then
	sleep 1s
fi

for iface in `iwconfig 2>/dev/null | egrep '(IEEE|ESSID|802\.11|WLAN)' | sed 's/^\([a-zA-Z0-9_.]*\) .*/\1/' | grep -v wifi`
do
 getModule  $iface
 getDriver  $iface
 getStack   $iface
 getChipset $DRIVER $iface


 if [ x$MAC80211 = "x1" ]
 then
    getPhy $iface
    getNewMon
    printf "$iface\t\t$CHIPSET\t$DRIVER - [$PHYDEV]"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
        if [ $USE_IW = 1 ]
        then
            IW_ERROR=`iw dev $iface interface add $MONDEV type monitor 2>&1 | grep "nl80211 not found"`
            if [ x$IW_ERROR = "x" ]
            then
                sleep 1s
		if [ ! -z $3 ]
                then
            	    if [ $3 -lt 1000 ]
            	    then
                	iwconfig $MONDEV channel $3 >/dev/null 2>&1
            	    else
                	iwconfig $MONDEV freq "$3"000000 >/dev/null 2>&1
            	    fi
            	fi
                ifconfig $MONDEV up
                printf "\n\t\t\t\t(monitor mode enabled on $MONDEV)"
            else
                if [ -f /sys/class/ieee80211/"$PHYDEV"/add_iface ]
                then
                    echo -n "$MONDEV" > /sys/class/ieee80211/"$PHYDEV"/add_iface
                    sleep 1s
                    if [ $3 -lt 1000 ]
                    then
                        iwconfig $MONDEV mode Monitor channel $3 >/dev/null 2>&1
                    else
                        iwconfig $MONDEV mode Monitor freq "$3"000000 >/dev/null 2>&1
                    fi
                    ifconfig $MONDEV up
                    printf "\n\t\t\t\t(monitor mode enabled on $MONDEV)"
                else
                    printf "\n\nERROR: nl80211 support is disabled in your kernel.\nPlease recompile your kernel with nl80211 support enabled.\n"
                fi
            fi
        else
            if [ -f /sys/class/ieee80211/"$PHYDEV"/add_iface ]
            then
                echo -n "$MONDEV" > /sys/class/ieee80211/"$PHYDEV"/add_iface
                sleep 1s
                if [ $3 -lt 1000 ]
                then
                    iwconfig $MONDEV mode Monitor channel $3 >/dev/null 2>&1
                else
                    iwconfig $MONDEV mode Monitor freq "$3"000000 >/dev/null 2>&1
                fi
                ifconfig $MONDEV up
                printf "\n\t\t\t\t(monitor mode enabled on $MONDEV)"
            else
                printf "\n\nERROR: Neither the sysfs interface links nor the iw command is available.\nPlease download and install iw from\n$IW_SOURCE\n"
            fi
        fi
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
        z="`echo $iface | cut -b -${#MON_PREFIX}`"
        if [ x$z = "x$MON_PREFIX" ]
        then
            if [ $USE_IW = 1 ]
            then
                IW_ERROR=`iw dev "$iface" interface del 2>&1 | grep "nl80211 not found"`
                if [ x$IW_ERROR = "x" ]
                then
                    printf " (removed)"
                else
                    if [ -f /sys/class/ieee80211/"$PHYDEV"/remove_iface ]
                    then
                        echo -n "$iface" > /sys/class/ieee80211/"$PHYDEV"/remove_iface
                        printf " (removed)"
                    else
                        printf "\n\nERROR: nl80211 support is disabled in your kernel.\nPlease recompile your kernel with nl80211 support enabled.\n"
                fi
                fi
            else
                if [ -f /sys/class/ieee80211/"$PHYDEV"/remove_iface ]
                then
                    echo -n "$iface" > /sys/class/ieee80211/"$PHYDEV"/remove_iface
                    printf " (removed)"
                else
                    printf "\n\nERROR: Neither the sysfs interface links nor the iw command is available.\nPlease download and install iw from\n$IW_SOURCE\n"
                fi
	    fi
        else
            ifconfig $iface down
            iwconfig $iface mode managed
            printf "\n\t\t\t\t(monitor mode disabled)"
        fi
    fi
    echo
    continue
 fi


 if [ x$DRIVER = "xorinoco" ] || [ x"`iwpriv $iface 2>/dev/null | grep get_rid`" != "x" ] || [ x"`iwpriv $iface 2>/dev/null | grep dump_recs`" != "x" ]
 then
    printf "$iface\t\tHermesI\t\torinoco"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
        cp $KISMET~ $KISMET 2>/dev/null &&
        echo "source=orinoco,$iface,HermesI" >>$KISMET
        if [ $CH -lt 1000 ]
        then
            iwconfig $iface mode Monitor channel $CH >/dev/null 2>&1
        else
            iwconfig $iface mode Monitor freq "$CH"000000 >/dev/null 2>&1
        fi
        iwpriv $iface monitor 1 $CH >/dev/null 2>&1
        ifconfig $iface up
        printf " (monitor mode enabled)"
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
        ifconfig $iface down
        iwpriv $iface monitor 0 >/dev/null 2>&1
        iwconfig $iface mode Managed >/dev/null 2>&1
        printf " (monitor mode disabled)"
    fi
    echo
    continue
 fi

 if [ x$DRIVER = "xrtl819xU" ]
 then
 	printf "$iface\t\tRealtek 819x\trtl819xU"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
        startStdIface $iface $CH
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
        stopStdIface $iface
    fi
    echo
    continue
 fi

 if [ x$DRIVER = "xipw2100" ] || [ x"`iwpriv $iface 2>/dev/null | grep set_crc_check`" != "x" ]
 then
    printf "$iface\t\tIntel 2100B\tipw2100"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
        cp $KISMET~ $KISMET 2>/dev/null &&
        echo "source=ipw2100,$iface,Centrino_b" >>$KISMET
        startStdIface $iface $CH
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
        stopStdIface $iface
    fi
    echo
    continue
 fi


 if [ x$DRIVER = "xarusb_lnx" ] || [ x$DRIVER = "Otus" ]
 then
    printf "$iface\t\tAR9001USB\tOtus"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
	echo "Monitor mode not yet supported"
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then
	stopStdIface $iface
    fi
    echo
    continue
 fi  

 if [ x$DRIVER = "xWiLink" ]
 then
    getChipset $iface
    printf "$iface\t\t${CHIPSET}\t\t${DRIVER}"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then 
        printf "\n\t\t\t\tMonitor mode not yet supported"
    fi  
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
    then 
        stopStdIface $iface
    fi  
    echo
    continue
 fi

 if [ x$DRIVER = "xipw2200" ] || [ x"`iwpriv $iface 2>/dev/null | grep sw_reset`" != "x" ]
 then
    MODINFO=`modinfo ipw2200  2>/dev/null | awk '/^version/ {print $2}'`
    if { echo "$MODINFO" | grep -E '^1\.0\.(0|1|2|3)$' ; }
    then
    	echo "Monitor mode not supported, please upgrade"
    else
	printf "$iface\t\tIntel 2200BG\tipw2200"
	if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
	then
	    cp $KISMET~ $KISMET 2>/dev/null &&
	    echo "source=ipw2200,$iface,Centrino_g" >>$KISMET
	    startStdIface $iface $CH
	fi
	if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
	then
	    stopStdIface $iface
	fi

    	if { echo "$MODINFO" | grep -E '^1\.0\.(5|7|8|11)$' ; }
	then
		printf " (Warning: bad module version, you should upgrade)"
	fi
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xcx3110x" ] || [ x"`iwpriv $iface 2>/dev/null | grep set_backscan`" != "x" ]
 then
     printf "$iface\t\tNokia 770\t\tcx3110x"
     if [ x$1 = "xstart" ] || [ x$1 = "xstop" ]
     then
     	printf " (Enable/disable monitor mode not yet supported)"
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xipw3945" ] || [ x"`iwpriv $iface 2>/dev/null | grep set_preamble | grep -v set_crc_check`" != "x" ]
  then
        printf "$iface\t\tIntel 3945ABG\tipw3945"
        if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
         then
                cp $KISMET~ $KISMET 2>/dev/null &&
                echo "source=ipw3945,$iface,Centrino_g" >>$KISMET
                startStdIface $iface $CH
        fi
        if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
         then
                stopStdIface $iface
        fi
        echo
        continue
 fi


 if [ x"`iwpriv $iface 2>/dev/null | grep inact_auth`" != "x" ]
 then
     if [ -e "/proc/sys/net/$iface/%parent" ]
     then
        printf "$iface\t\tAtheros\t\tmadwifi-ng VAP (parent: `cat /proc/sys/net/$iface/%parent`)"
	if [ x$2 = x$iface ] && [ x$1 = "xstop" ]
	then
		wlanconfig $iface destroy
		printf " (VAP destroyed)"
	fi
	if [ x$1 = "xstart" ]
	then
		if [ $iface = "$IFACE" ]
		then
			printf " (monitor mode enabled)"
		fi
		if [ x$2 = x$iface ]
		then
			printf " (VAP cannot be put in monitor mode)"
		fi
	fi

	echo ""
        continue

     fi
     printf "$iface\t\tAtheros\t\tmadwifi"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=madwifi_g,$iface,Atheros" >>$KISMET
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xprism54" ] || [ x"`iwpriv $iface 2>/dev/null | grep getPolicy`" != "x" ]
 then
     printf "$iface\t\tPrismGT\t\tprism54"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=prism54g,$iface,Prism54" >>$KISMET
         ifconfig $iface up
         if [ $CH -lt 1000 ]
         then
             iwconfig $iface mode Monitor channel $CH
         else
             iwconfig $iface mode Monitor freq "$CH"000000
         fi
         iwpriv $iface set_prismhdr 1 >/dev/null 2>&1
         printf " (monitor mode enabled)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xhostap" ] || [ x"`iwpriv $iface 2>/dev/null | grep antsel_rx`" != "x" ]
 then
     printf "$iface\t\tPrism 2/2.5/3\tHostAP"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=hostap,$iface,Prism2" >>$KISMET
         if [ $CH -lt 1000 ]
         then
             iwconfig $iface mode Monitor channel $CH
         else
             iwconfig $iface mode Monitor freq "$CH"000000
         fi
         iwpriv $iface monitor_type 1 >/dev/null 2>&1
         ifconfig $iface up
         printf " (monitor mode enabled)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xwlan-ng" ] || [ x"`wlancfg show $iface 2>/dev/null | grep p2CnfWEPFlags`" != "x" ]
 then
     printf "$iface\t\tPrism 2/2.5/3\twlan-ng"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=wlanng,$iface,Prism2" >>$KISMET
         wlanctl-ng $iface lnxreq_ifstate ifstate=enable >/dev/null
         wlanctl-ng $iface lnxreq_wlansniff enable=true channel=$CH \
                           prismheader=true wlanheader=false \
                           stripfcs=true keepwepflags=true >/dev/null
         echo p2CnfWEPFlags=0,4,7 | wlancfg set $iface
         ifconfig $iface up
         printf " (monitor mode enabled)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         ifconfig $iface down
         wlanctl-ng $iface lnxreq_wlansniff enable=false  >/dev/null
         wlanctl-ng $iface lnxreq_ifstate ifstate=disable >/dev/null
         printf " (monitor mode disabled)"
     fi
     echo
     continue
 fi


 if [ x$SYSFS = "x" ] && [ x"`iwpriv $iface 2>/dev/null | grep get_RaAP_Cfg`" != "x" ]
 then
    if [ x"`iwconfig $iface | grep ESSID | awk -F\  '{ print $2}' | grep -i rt61`" != "x" ]
    then
    	printf "$iface\t\tRalink 2561 PCI\trt61"
    fi

    if [ x"`iwconfig $iface | grep ESSID | awk -F\  '{ print $2}' | grep -i rt73`" != "x" ]
    then
        printf "$iface\t\tRalink 2573 USB\trt73"
    fi

    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
         startStdIface $iface $CH
         iwpriv $iface rfmontx 1
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprismheader`" != "x" ]
         then
             iwpriv $iface forceprismheader 1
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprism`" != "x" ]
         then
             iwpriv $iface forceprism 1
         fi
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
     	stopStdIface $iface
    fi
    echo
    continue

 fi


 if [ x$DRIVER = "xrt61" ]
 then
    printf "$iface\t\tRalink 2561 PCI\trt61"

    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
         startStdIface $iface $CH
         iwpriv $iface rfmontx 1
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprismheader`" != "x" ]
         then
             iwpriv $iface forceprismheader 1
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprism`" != "x" ]
         then
             iwpriv $iface forceprism 1
         fi
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
     	stopStdIface $iface
    fi    
    echo
    continue

 fi


 if [ x$DRIVER = "xrt73" ]
 then
    printf "$iface\t\tRalink 2573 USB\trt73"

    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
         startStdIface $iface $CH
         iwpriv $iface rfmontx 1
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprismheader`" != "x" ]
         then
             iwpriv $iface forceprismheader 1
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprism`" != "x" ]
         then
             iwpriv $iface forceprism 1
         fi
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
     	stopStdIface $iface
    fi    
    echo
    continue

 fi


 if [ x$DRIVER = "xrt2500" ] || [ x"`iwpriv $iface 2>/dev/null | grep bbp`" != "x" ]
 then
     printf "$iface\t\tRalink 2560 PCI\trt2500"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=rt2500,$iface,Ralink_g" >>$KISMET
         iwconfig $iface mode ad-hoc 2> /dev/null >/dev/null
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xrt2570" ] || [ x"`iwpriv $iface 2>/dev/null | grep wpapsk`" != "x" ] && [ x"`iwpriv $iface 2>/dev/null | grep get_RaAP_Cfg`" = "x" ]
 then
     printf "$iface\t\tRalink 2570 USB\trt2570"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=rt2500,$iface,Ralink_g" >>$KISMET
         iwconfig $iface mode ad-hoc 2> /dev/null >/dev/null
         startStdIface $iface $CH
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprismheader`" != "x" ]
         then
             iwpriv $iface forceprismheader 1
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep forceprism`" != "x" ]
         then
             iwpriv $iface forceprism 1
         fi
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xr8180" ] || [ x"`iwpriv $iface 2>/dev/null | grep debugtx`" != "x" ]
 then
     printf "$iface\t\tRTL8180/RTL8185\tr8180"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=rt8180,$iface,Realtek" >>$KISMET
         if [ $CH -lt 1000 ]
         then
             iwconfig $iface mode Monitor channel $CH
         else
             iwconfig $iface mode Monitor freq "$CH"000000
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep prismhdr`" != "x" ]
         then
            iwpriv $iface prismhdr 1 >/dev/null 2>&1
         fi
         ifconfig $iface up
         printf " (monitor mode enabled)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xr8187" ] || [ x"`iwpriv $iface 2>/dev/null | grep badcrc`" != "x" ]
 then
     printf "$iface\t\tRTL8187\t\tr8187"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=rt8180,$iface,Realtek" >>$KISMET
         if [ $CH -lt 1000 ]
         then
             iwconfig $iface mode Monitor channel $CH
         else
             iwconfig $iface mode Monitor freq "$CH"000000
         fi
         if [ x"`iwpriv $iface 2>/dev/null | grep rawtx`" != "x" ]
         then
             iwpriv $iface rawtx 1 >/dev/null 2>&1
         fi
         ifconfig $iface up
         printf " (monitor mode enabled)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xzd1211rw" ] || [ x"`iwpriv $iface 2>/dev/null | grep get_regdomain`" != "x" ]
 then
     printf "$iface\t\tZyDAS 1211\tzd1211rw"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=zd1211,$iface,ZyDAS" >>$KISMET
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xzd1211" ] || [ x"`iwpriv $iface 2>/dev/null | grep dbg_flag`" != "x" ]
 then
     printf "$iface\t\tZyDAS 1211\tzd1211"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=zd1211,$iface,ZyDAS" >>$KISMET
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xacx" ] || [ x"`iwpriv $iface 2>/dev/null | grep GetAcx1`" != "x" ]
 then
     printf "$iface\t\tTI ACX1xx\tacx"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=acx100,$iface,TI" >>$KISMET
         iwpriv $iface monitor 2 $CH 2> /dev/null >/dev/null
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xbcm43xx" ] || [ x"`iwpriv $iface 2>/dev/null | grep write_sprom`" != "x" ]
 then
     printf "$iface\t\tBroadcom\tbcm43xx"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         cp $KISMET~ $KISMET 2>/dev/null &&
         echo "source=bcm43xx,$iface,broadcom" >>$KISMET
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
         ifconfig $iface up
     fi
     echo
     continue
 fi


 if [ x$DRIVER = "xislsm" ] || [ x"`iwpriv $iface 2>/dev/null | grep set_announcedpkt`" != "x" ]
 then
    printf "$iface\t\tPrismGT\t\tislsm"
    if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
    then
         startStdIface $iface $CH
    fi
    if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
     	stopStdIface $iface
    fi    
    echo
    continue

 fi


 if [ x$DRIVER = "xat76c503a" ] || [ x"`iwpriv $iface 2>/dev/null | grep set_announcedpkt`" != "x" ]
  then
     printf "$iface\t\tAtmel\t\tat76c503a"
     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
          startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
      then
      	 stopStdIface $iface
     fi     
     echo
     continue

 fi


 if [ x$DRIVER = "xndiswrapper" ] || [ x"`iwpriv $iface 2>/dev/null | grep ndis_reset`" != "x" ]
 then
     printf "$iface\t\tUnknown\t\tndiswrapper"
     if [ x$2 = x$iface ]
     then
         echo " (MONITOR MODE NOT SUPPORTED)"
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi


 if [ x$DRIVER != "x" ]
 then
     if [ x$CHIPSET = "x" ]
     then
         printf "$iface\t\tUNKNOWN\t\t$DRIVER"
     else
         printf "$iface\t\t$CHIPSET\t\t$DRIVER"
     fi

     if [ x$1 = "xstart" ] && [ x$2 = x$iface ]
     then
         startStdIface $iface $CH
     fi
     if [ x$1 = "xstop" ] && [ x$2 = x$iface ]
     then
         stopStdIface $iface
     fi
     echo
     continue
 fi

printf "$iface\t\tUnknown\t\tUnknown (MONITOR MODE NOT SUPPORTED)\n"

done

echo

if [ $UDEV_ISSUE != 0 ] ; then
	echo udev renamed the interface. Read the following for a solution:
	echo http://www.aircrack-ng.org/doku.php?id=airmon-ng#interface_athx_number_rising_ath0_ath1_ath2...._ath45
	echo 
fi

saludos

Desconectado

#21 18-01-2016 22:17:29

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

visto asi es como si bully llevara algo de code de wash, exactamente el que rechaza los aps sin wps activado pero en vez de ocultarlos te lo avisa,
curioso xD

Tiene su lógica : Reaver integra un escaneo especial para wps pero bully no lo hace.
Así que Brian pourcell pensó su tool para ser usado sin que se tenga la información que te da wash sobre el wps.
Sino de cierto modo bully "dependía" de reaver y esto no era la idea: Bully fue creado para ser una alternativa con un código liviano y con menos dependencias que reaver.
Pongo entre "" porque hay varias formas de conocer el contenido de los probes wps con lo que llevan en 99% de los casos nuestros SO linux, sin herramientas externas: iw dev scan, wpa_cli....
Ahora airodump-ng lo hace si añadimos el argumento -- wps - pero a este época... no lo hacía.

Desconectado

#22 23-01-2016 13:33:34

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Aanarchyy ha sacado una nueva revisión esta mañana
Ha corregido unos bugs que han ido saliendo y ha depurado el código en varios lugares.
Se ha focalizado en optimizar el código para mejorar el uso de la memoria y aumentar así la velocidad de la herramienta en modo "pixe dust" desatendido (opción -d ) con recuperación de la clave WPA
¡En buenas condiciones un ataque completo se hace ahora en menos de cuatro segundos! (se lanza reaver una primera vez - se genera el PIN con pixiewps - se vuelve a lanzar reaver con el PIN deducido - se obtiene la clave WPA. )
He echado un ojo a los cambios Added some memory management y podemos ver que por ejemplo ha reemplazado strcat por strncat (los dos hacen lo mismo pero funcionarán mejor quel otro según el contexto)
Unas micro-segundas ganadas por ahí, otras por allá...
...Aanarchyy sigue puliendo la joya y le damos las gracias para ello smile

Para actualizar vuestro bully solo hacéis lo mismo que en primer post : instaláis la ultima revisión en corso,
Esto sobrescribe en dos segundos la versión precedente.
 
Nota : Si lo hacéis en consola y que usáis git clone para descargar bully debéis primero borrar los binarios que habéis descargado antes.

rm -r ~/bully

Luego podéis descargar la rama github 
Supongo que hay un comando o una forma por hacer lo con los comandos "git" pero desconozco su uso.
de todo modo ¡rm al poder!  big_smile

git clone https://github.com/aanarchyy/bully.git && cd bully/src && make && sudo make install

Desconectado

#23 24-01-2016 01:17:07

d1k0w0ns
Expulsado

Registrado: 12-06-2015
Mensajes: 374

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

si lo haces asi lo dejas nikelao

git clone https://github.com/aanarchyy/bully.git && cd bully/src && make && strip --strip-all --strip-debug -v * && sudo make install

ademas de los referers tambien estas prohibiendo proxies??
cada vez esta mas dificil entrar aqui....

gracias por la info

saludos

Desconectado

#24 24-01-2016 18:27:44

kcdtv
Administrator

Registrado: 14-11-2014
Mensajes: 5,730

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

si lo haces asi lo dejas nikelao

No arregla el "problema", es decir que haya que borrar con rm o a mano la rama github que hemos bajado anteriormente (se trata de actualizar)

 git clone https://github.com/aanarchyy/bully.git && cd bully/src && make && strip --strip-all --strip-debug -v * && sudo make install
fatal: le chemin de destination 'bully' existe déjà et n'est pas un répertoire vide.

Lo que me preguntaba, porque seguro que existe, es el (los) argumento(s) a añadir en nuestra linea de ordenes "git clone" para descargar + sobrescribir los ficheros que ya existen.
Git Hub no me entra tongue... y además da igual.
Gracias por el consejo con el uso de strip que es siempre útil de todo modo y no solo para este caso smile

ademas de los referers tambien estas prohibiendo proxies??
cada vez esta mas dificil entrar aqui....

Yo no prohíbo nada, big_smile
Son los filtros de seguridad que se activan porque una de las proxies que usaste fue puesta en balcklist por haber sido empleada para atacar sitios.
Te puede ocurrir usando ToR o una proxy,
Si te pasa cambia de IP con ToR o de proxy.
Se siente por las molestias.

Desconectado

#25 24-01-2016 21:28:25

USUARIONUEVO
Usuario

Registrado: 07-07-2015
Mensajes: 312

Re: Bully WPS: La alternativa a Reaver renace con soporte Pixiewps

Respecto a la duda con git.

2 opciones

Siempre desde la ruta de bully

cd ~/bully

opcion 1 , poner tu git local "al dia"  ..  sincronizar con el original y descargar aquellos files nuevos / modificados , lo que viene a ser bajarse solo los cambios ya que el resto es el mismo.

git pull WEB

la opcion 2 es clonar de nuevo todo

git reset --hard origin/master

Recoradar , siempre dentro de la misma carpeta bully.

Lo que busca kcdtv es una especie de

git --force clone WEB ..pero no existe asi.

Desconectado

Temas similares

Tema Respuestas Vistas Ultimo mensaje
2 166 Hoy 15:25:52 por Patcher
Pegado:
521 339982 10-05-2023 18:24:28 por Betis-Jesus
Hospital clinic dump por wifiyeah  [ 1 2 ]
27 1242 09-05-2023 21:32:44 por kcdtv
Hacktivismo por CHARGER22
1 205 08-05-2023 19:53:26 por kcdtv
Pegado:
Pegado:: Script multiuso wifi para Kali y otras distros por v1s1t0r  [ 1 2 3 18 ]
447 66090 22-04-2023 15:31:13 por kcdtv

Pie de página

Información del usuario

Ultimo usuario registrado: klurosu
Usuarios registrados conectados: 0
Invitados conectados: 5

Estadisticas de los foros

Número total de usuarios registrados: 2,446
Número total de temas: 1,637
Número total de mensajes: 15,586

Máx. usuarios conectados: 373 el 30-09-2019 15:04:36