Carwhisperer
30 f , 2006En alguna ocasión anterior ya he hablado sobre el proyecto carwhisperer.
Bueno pues por fin he conseguido poner a punto el programa en mi ordenador aunque por desgracia aun no lo he podido probar como dios manda por falta de “victimas” y es que este mismo sabado por la noche me fui a un aparcamiento publico, donde aproximadamente cada hora pasan entre 70-100 coches… pero por desgracia habia caido una nevada terrible y la gente decidió dejar el coche en casa, asi que la confirmación oficial de que funciona aun no puedo darla.
Por otro lado con algunos de los cambios realizados he liberado el parche _ES0.1 en el que aparte del manual traducido se incluyen algunas mejoras y archivos de sonido listos para inyectar (El mejor es el de KITT ;)) ).
Por si aun no sabeis que es el carwhispering (a partir de ahora cw) os lo cuento a grandes rasgos.
Objetivos.
El objetivo final del proyecto es concienciar a los fabricantes de bluetooth (a partir de ahora bt) sobre los riesgos de usar passwords por defecto para sus dispositivos sin teclado (manos libres).
¿Que hace el programa cw?
Inyecta un archivo de audio haciendose pasar por una llamada en el manos libres de un coche y graba lo que se dice en el vehiculo desde ese momento.
¿Como lo hace?
El programa cw consta de varios scripts y un binario (cuyo codigo fuente se inclute en el paquete).
El script para lanzar el programa es el cw_scanner. Este script, que usa el driver bluez para linux, escanea en busca de un dispositivo BT,una vez que lo encuentra comprueba su clase (para saber si es un telefono, un manos libres, un modem, un ordenador…) y si detecta que se trata de un manos libres mediante bluez se asocia con él, usando un archivo de gestion de PIN propio: cw_pin.pl
cw_pin.pl genera una clave en funcion del fabricante del dispositivo. Todos los manos libres nokia tienen una clave, los siemens otra, etc… este script averigua el fabricante basandose en el SSID del manos libres, genera la clave correspondiente para ese fabricante y se la devuelve al driver para la asociacion.
cw_scanner se asocia con el manos libres y lanza el binario carwhisperer:
carwhisperer envia al manos libres del coche comandos AT haciendose pasar por una llamada, sube el volumen y la ganancia del altavoz al maximo, inyecta un archivo de audio .raw y recoge todo lo que proviene del altavoz del coche y lo guarda en un archivo .raw que podemos convertir en .wav o escuchar directamente con los drivers adecuados.
Consejos
1. Fabrica una antena de alta direccionalidad: En un post ya comente como hacerlo. Teniendo en cuenta el alcance del BT es muy recomendable.
2. Muy pocos coches tienen un manos libres (aunque cada vez hay mas) asi que buscate un sitio donde pasen muchos coches y a poder ser que vayan despacio (para poder no perder la señal durante el proceso de escaneo e inyeccion), los mejores sitios son: Semaforo concurrido que tarda en ponerse en verde o aparcamiento con alto trafico.
3. Si usas debian puedes instalarte directamente el driver bluez con apt-get pero para compilar carwishperer necesitas las librerias bluez-libs (que yo en mi caso tuve que compilar a mano).
4. Si vas a usar el de la gente de trifinite comprueba el Makefile y el path usado en el script cw_scanner.
5. Ten cuidado con esto porque si bien es una broma muy divertida puedes estar violando la intimidad de las personas que viajan dentro del coche y mucho mas si no les adviertes de tu presencia (enviando un archivo de audio vacio, por ejemplo).
Aspectos a mejorar
1. Mas passwords por defecto para mas marcas
2. Conseguir oir lo que se dice dentro del coche “in vivo” (esto no debe ser muy dificil, tengo que echarle un ojo)
Credito.
Toda la informacion y archivos proceden de
Project Carwhisperer (http://trifinite.org/trifinite_stuff_carwhisperer.html) yo solo me he limitado a publicar las mejoras que hice para mi uso personal, a investigar el funcionamiento, a traducir el manual y a escribir este post porque me parece algo muy divertido para una tarde de sabado ;))))






