WifiSlax y Rfcomm (introducir PIN)

Iniciado por PaTeDiT, 5 Abril 2007, 20:42 PM

0 Miembros y 4 Visitantes están viendo este tema.

PaTeDiT

Buenas!!!

Actualmente estoy usadno la livecd WifiSlax, la cual aconsejo a todo el mundo  ;D

Mi problema viene a la hora de emparejar el portátil con la terminal GSM. Supongamos que me conecto por el canal 4:

rfcomm connect 0 <bd_addr> 4

En la terminal aparece el mensaje de autorización, y tras insertar un código, intenta realizar la conexión.

Mi problema es que en el portátil no sale ninguna ventana para introducir el código, por lo que no se conectan nunca.

En ningún manual que haya leído hace referencia a esto... a ver si alguien me puede ayudar, porque no sé qué aplicación es la que lanza.

Para los que usen WifiSlax, tendrá algo que ver /pentest/bluetooth/bluepin ?

Gracias ;)
Noticias curiosas, imágenes curiosas, videos curiosos: Curiosea.com

Gospel

Es un problema conocido y que está por solucionar para la próxima release: el emparejamiento. No hemos conseguido implementar el bluepin y el gestor no salta cuando recibe la solicitud de confirmación del PIN durante un emparejamiento.

Existen otras vías en lugar de utilizar el script perl "bluepin", sólo hay que cambiar la ruta del gestor que queremos utilizar en hcid.conf. Podemos apuntar a un archivo que contenga "PIN:1234", por ejemplo, pero no lo he probado demasiado...

Es un tema que tengo pendiente, como digo, es un fallo conocido de Wifislax y tarde o temprano alguien iba a reportarlo. Si puedes ir echándole un ojo y testear varias configuraciones de hcid.conf... si tienes éxito, por favor, avisa y te lo agradeceré sinceramente. Es un tema que me trajo de cabeza toda una tarde y al final no lo conseguí sacar.

Puedes buscar sobre temas de emparejamiento Bluetooth en Linux en internet. Si modificas hcid.conf, no te olvides de reiniciar los servicios Bluetooth para que la nueva configuración tenga efecto.

Si quieres colaborar, ánimo y gracias. Si no tienes tiempo para ponerte, pues tendrás que esperar a la próxima release.

Saludos

PaTeDiT

Sinceramente, no tengo mucho tiempo ahora mismo, como casi todos imagino, pero obviamente seguiré probando cosillas.

Lo ideal sería que lanzara perfectamente el script y pudieras meter en cada caso el PIN que sea, y ya que está hecho el script, intentaré resolver por esa vía el problema.

Si no, ya probé sin demasiado éxito lo que tú dices de PIN:1234 viendo configuraciones por Internet y demás, pero seguiré probando, ahora sabiendo que el problema es generalizado.

Ya os comentaré si encuentro algo  ;)

Por cierto, ha sido un honor que me respondieras tú directamente. Muy buenos todos tus trabajos, que los sigo de cerca  :)
Noticias curiosas, imágenes curiosas, videos curiosos: Curiosea.com

PaTeDiT

#3
¡¡ Lo logré !!  :P

Después de mucho buscar, para nada sirvió...

Me di cuenta que lo que yo cambiara en hcid.conf no valía para nada, es como si no tuviera en cuenta ese archivo de configuración, aun reiniciando los servicios desde el menú o:

/etc/rc.d/rc.bluetooth start
/etc/rc.d/rc.bluetooth stop


Finalmente, he conseguido solucionarlo con

hcid -f /etc/bluetooth/hcid.conf
Después de cada cambio!

De este modo, el bluepin se lanza perfectamente.

Ahora mismo uso otro script, por si alguien lo quiere (reconozco que no me lo curré yo.. aunque bien fácil que hubiera sido  :rolleyes: )

#!/bin/sh
pin=`/opt/kde/bin/kdialog --password "Introduce el PIN de la terminal:"`
echo "PIN:$pin"


Lo guardo y en el hcid.conf en pin_helper le indico la ruta, no sin antes habiendole dado permisos de ejecución.

Si queréis, también podéis usar el kbluepin si antes habéis iniciado la aplicación kbluetoothd.

¿Reporto esto al foro de WifiSlax, Gospel?

Saludos !
Noticias curiosas, imágenes curiosas, videos curiosos: Curiosea.com

Gospel

En efecto, wifislax se debe estar pasando hcid.conf por el forro, ese es el problema.

El script bluepin está ahi, se puede ejecutar e incluso invocarle pasándole como argumento un PIN válido pero la salida stdout la imprime en la shell, no en el pipe de rfcomm!!

Parece que cuando bluez recibe la petición de confirmación de pin pasa de la linea en hcid.conf sobre pin_helper, porque si no llamaría al script y aparecería la ventana en pantalla, cosa que me funciona perfectamente en fedora.

Habría que ver si cuando bluez recibe la petición de confirmación del PIN ejecuta lo que haya en la linea pin_helper en hcid.conf. Con que apunte a un simple script que haga algo tonto ya se debería ver. Si cuando se intenta emparejar el PC no se ejecuta el script, es problema de bluez. Es posible que los servicios no estén correctamente levantandos o que haya conflicto con algún firewall, lo cual desconozco.

Yo sé que esto también me trajo de cabeza en fedora hace tiempo y me tiré una tarde hasta que logré hacerlo funcionar. Viendo las soluciones en internet me desesperaba más porque la gente hacía ver que era sencillo y a mi no me funcionaba. Al final hice algo y logré que funcionara, el problema es que no me acuerdo... arg! Tengo la intuición de que tenía que ver con el firewall de fedora, habilitar el interfaz bluetooth..., pero en Wifislax no tengo ni idea de donde tocar...

PaTeDiT

Edité mi post antes de que postearas tú xDDDD
Noticias curiosas, imágenes curiosas, videos curiosos: Curiosea.com

Gospel

#6
Joer... que sincronización! Esto sí que es colaborar, aportar la solución minutos antes de postear yo!

¿Sabes si la cosa funciona con el script python bluepin? A lo mejor no tenía permisos de ejecución o no se levantaban los servicios correctamente con la configuración de hcid.conf sin hacer ese -f (buen descubrimiento)

Pruébalo con bluepin si puedes y reporta la solución aquí y en el foro de "integrando bluetooth en wifislax".

Mil gracias!

No veas la me quitas de encima. Perdí una tarde con esto sin tener éxito y últimamente no saco tiempo para ponerme.

Tenía que terminar temas pendientes. Tengo un paper calentito para ser publicado en breve, estate atento que te va a gustar ;)

PaTeDiT

#7
Jajajaja

Pues sí, asómbrate porque el bluepin funciona a la perfección si se escribe esa línea justo después de montar el dispositivo...

Como ya te dije (dejo aquí también constancia de ello por si a alguien le interesa), en el WifiSlax, cuadno se reinicien los servicios habría que añadir esa línea en el script que lanza para no tener que meterla a mano tol tiempo :P

Yo por ahora me quedo con mi pequeño script, antes que con el bluepin.. que bastante asco le he cogio esta noche !!  :P

Voy a reportarlo a WifiSlax :P
Noticias curiosas, imágenes curiosas, videos curiosos: Curiosea.com

Gospel

#8
Genial!

Pues entonces sólo hay que añadir la linea "hcid -f /etc/bluetooth/hcid.conf" tanto en el arranque de wifislax como en el lanzador de "reiniciar servicios bluetooth", por si alguien quiere cambiar el pin_helper en hcid.conf y cargar la nueva configuración.

Más info en el foro de wifislax: http://www.seguridadwireless.net/foro/index.php/topic,2734.0.html

De forma no oficial, podemos decir que wifislax es la distro de hacking Bluetooth definitiva!

Gracias por todo!

Hwagm

Entonces no creo que sea oprtuno crear una nueva version para añadir esta linea en el arranque verdad.

Prefiero esperar a acabar al proyecto de linux desde cero, y cuando lo acabe si puedo meterme de nuevo con wifislax, donde recompilaria el kernel le pondria el nuevo, el 2.6.20.4 (4 por los parches que salieron) y recompilar uno por uno todos los drivers de las wireless, es una gran matada hacer eso, asi que prefiero esperar y maxime con lo del bluetooth se puede solucionar

mediante

hcid -f /etc/bluetooth/hcid.conf

y reiniciando los servicios.