Buscar este blog

Mostrando las entradas con la etiqueta CMU. Mostrar todas las entradas
Mostrando las entradas con la etiqueta CMU. Mostrar todas las entradas

sábado, 24 de junio de 2017

Apagar luz diurna / de día a Mazda (DRL's off)


¿Le sigues moviendo al Mazda, Afro?


Apenas retomé mi research en cuanto a las modificaciones que puedo hacerle a un mazda 2014 iTouring. Sí, es un modelo viejo, pero no por ello su sistema funciona diferente; de hecho, ésta marca se caracteriza porque su sistema es muy simple y puedes encontrarlo instalado en: desde los autos más básicos hasta los modelos más caros. Vaya, mira que pagar casi más de medio millón de pesos (en el caso de la cx-9) por algo que también puedes disfrutar en un mazda 2, se me hace algo muy patético. 

Me refiero a que en 3 años, al menos en México, mazda solo ha actualizado sus versiones de CMU (v33) hasta la v55, y aún así sigue siendo igual de malo... ¡y hackeable, yeeii! Y gracias a ello es que muchos se han puesto a desarrollar scripts para modificar al menos, la interfáz del HMI y del Infotaiment System.

Anyway. Lo que mostraré aquí, es que la parte del FBCM (Front Body Control Module) puede que opere en la same way que las versiones actuales y con ello puedas desactivar la "luz de día / luz diurna" (DRL - Daytime Running Lights) aprovechando un procedimiento en el manual de servicio. 

Sigue el procedimiento para apagar o encender según necesites.

Condiciones iniciales:
- El freno de mano debe estar puesto (Parking Brake: ON)
- Enciende la computadora pero con el motor apagado. O sea, presiona dos veces el botón Start sin presionar el freno. (Computer ON, Engine: OFF)

Empieza el procedimiento:
1.- Presiona el freno (el pedal) durante todo el proceso.
*Nota: El punto 2 debes hacerlo después de 2 segundos de haber presioando el freno y hacer todo en menos de 23 segundos.
**Nota: Ten en cuenta qué modelo tienes. Si tu mazda viene sin el selector de luces automáticas, toma en cuenta la imagen de la izquierda; si sí, utiliza el de la derecha (en sí, debes iniciar en OFF y hacer el procedimiento hacia TNS (es el punto).

1.- En solo 5 segundos, enciende y apaga "los cuartos" (en México) /  luces de parking, 5 veces y al último deja el switch en apagado. Espera 2 segundos e inicia el paso #2.
2.- En solo 5 segundos, enciende y apaga las "intermitentes" 5 veces y al último dejalas en apagado. Espera 2 segundos e inicia el paso #3.
3.- En solo 5 segundos, enciende y apaga "los cuartos" (en México) / luces de parking, 5 veces y al último deja el switch en apagado. Espera 2 segundos e inicia el paso #4.
4.- Quita el freno de mano (Parking Brake: OFF) y verás que las luces DRL ya no encienden. Si siguen haciéndolo, repite el procedimiento hasta que te salga. Si estás en la última condición, puedes regresarlas siguiendo el mismo procedimiento. 

¿Y para que las quieres apagadas, chingadamadre?


Obvio no es porque drene la batería, o seaa... para ello está el alternador, tampoco es por el desgaste del foco en sí, y obvio tampoco sirven "para que los demás conductores te vean". La verdad es que simplemente no me gustan. 

Bites.

miércoles, 17 de mayo de 2017

Cambiar imagen de fondo a pantalla Mazda

Esto ya es viejo, ¿lo sabes, verdad Afro?

Lo sé. Pero en realidad no me fío de los tweeks; sí, esos que hay por todos fuckings lados en la interné, prometiendo una fácil modificación a las imágenes, sistema, tiempos de ejecución, interfaz, etc, del Infotainment del Mazda.

La verdad es que, al estar automatizados, éstos pueden tener scripts maliciosos. O sea, sí, se supone que queremos modificar las cosas del sistema ― la interfaz en sí ―, pero es lo de menos cuando sabes que algún maldoso podría aprovechar ésta oportunidad para insertar un backdoor o un RCE, y más cuando el Mazda ya puede conectarse a internet a través de la interfaz WI-Fi.

No creo que alguien quiera atacarte. ¡Eres un paranóico!

Digamos que hace unos días se esparció el ransomware que encriptó bastantes sistemas a nivel global. Y se supone que en Junio dumpearán más cosas, OMG! Por tanto, antes de que nos agarren con un 0day, prefiero que el jci del mazda esté lo más pulcro posible.

Ergo, prefiero usar el método tradicional, el misioneDIGO! coof, cof,... prefiero conectarme y editar directamente el archivo desde la ruta en la que se encuentra.

¡Qué hueva tu choro, ya mejor dinos cómo hacerlo!

Sure.

1.- Necesitas una imagen X ― sí, puede ser porno jaja ― de tamaño 800 x 480px en formato PNG. Yo la tengo en el Desktop desde donde SSHearé al mazda.

2.- SSHea tu mazda, y ve a la siguiente ruta:
 /jci/gui/common/images

3.- Hagamos que el directorio pueda ser modificado:
mount -o rw,remount /

4.- Realiza un backup de tu imagen original:
cp background.png background_back.png

5.- Abre otra terminal. Aquí cambiará dependiendo en qué ruta hayas puesto la imagen que te gustaría poner, aunque prácticamente, si estás en la ruta, la línea quedaría como sigue:
scp background.png root@host:/jci/gui/common/images/

Te pedirá password del root. En éste caso será jci ― es la del mazda por defecto ―

Cambia el host por la IP que asignó el dhcp al mazda. En mi caso, asignó la 192.168.1.23.

6.- Reinicia tu CMU. Puedes hacerlo con la combinación de teclas Mute+Nav+Back por 10 segundos o simplemente escribe en la consola con el SSH al mazda, lo siguiente:
reboot

7.- Tu CMU deberá tener de fondo la imagen que cargaste. Una vez hecho éste procedimiento, puedes modificar/jugar con las demás imágenes que hay en el directorio.

Oye...

¡Callate! Tu novia me agradecerá que la hayas puesto de fondo... y no en un simple celular como todo mundo. Será el fondo que verás mientras conduces a todos lados. Ok, no. jajaja

Te dejo como referencia lo siguiente:





Bites de chocolate.

domingo, 8 de noviembre de 2015

Editar script para Watchdog timer. Mazda CMU


Este procedimiento es para modificar la dirección IP con la que se ejcutará el script que desactiva el Watchdog timer de tu Mazda. El script lo probé en un CMU v33.

Cada DHCP asignará una IP diferente a un equipo cada vez que te conectes a él, tardando algunos segundos en asignarla; así que si el CMU entra en modo reboot loop, el DHCP no tendrá tiempo de asignarle una, por tanto no puedes accesar a través de SSH para corregir el error.

Lo que hace el script es desactivar el Watchdog timer, encargado de verificar errores en el sistema y el responsable de reiniciarlo una y otra vez. Debemos modificarlo para que trabaje con la IP que nuestro DHCP asignará, pero... ¿cómo saberla? Solo ve a la configuración de tu router y limita el rango de IP a por ejemplo, 2, una para la lap con la que entrarás y la otra para el CMU.

Por otro lado, debemos modificar el script con la IP que obtendrá el CMU.

Solo necesitas el script y Linux.
1.- Descarga el siguiente archivo y extraelo donde gustes
2.- Ve a la ruta y abrelo en tu editor preferido. Yo usé vi
3.- Modifica la IP en la línea de IPADDR
4.- Guarda cambios y ya tienes listo el script para operar en la IP de tu DHCP
5.- Ejecuta el script con el CMU conectado a tu router a través del adaptador USB/Ethernet y en estado de reboot loop.
6.- El Watchdog timer se desactivará solo una vez, pero podrás modificar, editar, borrar, etc aquello que creas que hizo caer en este estado al CMU.





Bites.

viernes, 5 de junio de 2015

Hack a Mazda 3 2015 / Activar WiFi


¿Otra vez con lo mismo, Afro?   

La ocasión anterior había mostrado cómo conectarse al CMU de Mazda. Resultó completamente sencillo cambiar los parámetros que impedían usar el touchscreen del infotainment o parear nuevos dispositivos Bluetooth sin la necesidad de conducir a menos de 5 km/h.


O sea sí, pero por algo está la restricción, ¡maldita sea, Afro!

Resulta irónico que los fabricantes pongan a bordo computadoras que hacen más seguro el viaje y al mismo tiempo nos briden una distracción inevitable. En cada persona debe existir la prudencia necesaria para operarlo, pero no en mí, ¡ja!

Por otro lado, hago esto con el simple hecho de mostrar a ustedes lo peligroso que puede llegar a ser este tipo de sistemas. A pesar de que solo modifico las aplicaciones, por así decirlo... superficiales en el CMU, se puede acceder a aquellas que dependen de lo que el ECU envíe, desde información del comportamiento de la máquina, hasta la manera en la que el motor opera (modificable). No lo digo yo, está comprobado allá en la interné, y lamentablemente los fabricantes se lavan las manos en vez de dedicarse a crear sistemas más seguros. Digo, no es que todos le estén metiendo mano a sus autos, pero existen personas que aprenden a hacer cosas malas de las buenas intenciones. 


Oshh… pues ya que no hay remedio, dime... ¿qué haremos esta noche?

Al parecer desde la actualización a la versión 31, Mazda retiró el dispositivo WiFi de sus autos. En realidad no lo quitó, solo lo ocultó. Es de esas cosas que vienen desactivadas de fábrica, pero que el hardware contiene totalmente funcional. Allá en la nube exhibían una manera de activarlo con solo ponerle que tu Mazda estaba en la región de "Norte América", pues los primeros en ser desactivados habían sido los japoneses, solo que ya ni siquiera dicha región puede tenerlo, ahora solo la "Europea", creo. De todos modos no importa, el truco fue que la App ignorara la línea de código que condicionaba dicha región.

¡Advertencia! No actives el WiFi del auto si no lo vas a usar, pues al usar un protocolo conocido, es vulnerable a ataques.

Pero o sea, entonces... ¿por qué rayos lo activas?

Para evitar conectarme al CMU con el adaptador USB/Ethernet, el cable de red y el router cuando quiera modificar algo o para poder ejecutar algo remotamente en modo wireless, n_n

En las imágenes se verá que modifico sobre Linux, y lo es. Tengo una copia exacta de todo lo que contiene el CMU, así puedo modificar y ver cómo funcionan las cosas antes de intentarlo en el del Mazda. Algo así como una VM, solo que sin ejecutarlo; es ver si los archivos son modificados con éxito. No por ello significa que no funcione, ¡eh!

Alguien que Sí sabe lo que hace, me explicó que la línea en el código podía ser puesta como comentario y que no afectaría a algo más. Sin embargo, si lo haces... ¡ten mucho cuidado al hacerlo en el CMU en vivo! pues he visto que si el código no está bien escrito, el CMU entra en un reboot en bucle, y es muy difícil (no imposible) regresarlo a su estado original. Quedas advertido.

Bien, pues la cosa está así:

1. Conéctate al CMU.
2. Ve a la siguiente ruta:

/jci/gui/apps/syssettings/js/
3. Haz que el sistema pueda ser de escritura:
mount -o rw,remount /
4. Editamos con "vi":
vi syssettingsApp.js 
5. Dependiendo el tamaño de tu terminal, estará la línea que buscamos. Una vez abierto el editor VIM, teclea:
/Wi-fi
Y pulsa enter Esto, te llevará a la línea que ajusta los parámetros para el Wi-Fi; verás la siguiente línea:
 if((region != (framework.localize.REGIONS['NorthAmerica']) && (region != (framework.localize.REGIONS['Japan']))))
            {// Wi-fi is not available in Japan and NorthAmerica region
                items.push({
                    appData : 'SelectNetworkManagement',
                    text1Id : 'NetworkManagement',
                    hasCaret : false,
                    itemStyle : 'style01'
                });                    
            }
Insertamos "//" (sin las comillas) al inicio. Con esto, haremos que la línea ahora sea un comentario. Debe quedarte algo así:
 //if((region != (framework.localize.REGIONS['NorthAmerica']) && (region != (framework.localize.REGIONS['Japan']))))
            {// Wi-fi is not available in Japan and NorthAmerica region
                items.push({
                    appData : 'SelectNetworkManagement',
                    text1Id : 'NetworkManagement',
                    hasCaret : false,
                    itemStyle : 'style01'
                });                    
            }
6. Guardamos el archivo y reiniciamos el CMU presionando Mute+Nav+Back por 10 segundos.
7. Debes ver la opción para el WiFi en el área de Dispositivos, justo debajo del Bluetooth.







  
Eso es todo, aunque... ya sé que no aplauden XD

miércoles, 18 de marzo de 2015

Hack a Mazda3 Sedan i Touring 2015


Mucho se habla de "tocar la máquina" en los automóviles, y está padre, pero es aún más interesante poder "tocar la CMU". A pesar de que sea lo peor que un auto puede tener, llama mucho la atención los sistemas de seguridad que fuerzan a la máquina del auto a responder ante diferentes factores, tales como: cinturones de seguridad, sensores de presión en los asientos, bloqueo de pantalla por velocidad, velocidad máxima, entre otras tantas. Todos estos sistemas son controlados a través de un CMU, al cual podemos acceder para ver cómo funciona la cosa y quizá modificar algunos parámetros que como usuario no tienes permitido ver.


Pero si todo funciona bien, ¿por qué rayos quieres "ver" cómo funciona 

Siempre me ha llamado la atención el cómo funcionan las cosas, aunque después terminen no sirviendo como deberían jaja. Es como una manera de que al menos si se descompone, saber qué pudo haber sucedido, no como aquellos que bajan de su auto, abren el cofre como pretendiendo que la cosa se intimide y deje de hacerse el descompuesto. Ya en serio, si algo pasa, solo le hablaré al seguro y diré que quizá la NSA instaló en la actualización del sistema, un backdoor que provocó el crasheo de la CMU, ¡A huevo! (dirían los turquesas).

Afro, es un auto, ¡entiéndelo de una maldita vez! 

O sea sí, suma a eso que ni siquiera es mío, pero afortunadamente tengo la oportunidad de jugar con algo más chingón que lo que tengo en mi biblioteca de Steam. Es obvio que todo el proceso que sigo no es investigación mía, solo aplico lo que las verdaderas mentes maestras ya investigaron; en la bibliografía pongo las url’s.

Ok… va, ¿qué haremos esta noche? 

Una de las restricciones que tiene el Mazda, es que no se puede tocar la pantalla de 7” cuando el auto sobrepasa los 5km/h, por seguridad solo tienes control a través del panel de navegación, resultando incómodo cambiar entre los menús. Así que, modificaremos esta pequeña restricción, será como cambiarle el fondo a tu teléfono celular. 

 

Oye, esto no es un celular o una computadora, que si echas a perder basta con reiniciar o entrar a modo recovery, es un proceso que si no haces bien, te cagarás porque toda la maldita cosa funciona a través de la computadora de viaje, así que quizá ni siquiera puedas encender tu coche para al menos llevarlo a la concesionaria más cercana y llorarle al técnico para que se apiade de ti. Si tocas algo que no debes, es bajo tu responsabilidad. Así que, las palabras mágicas: NO ME HAGO RESPONSABLE SI LLEVAS A CABO ESTE PROCESO; RECUERDA QUE SI LO HACES ES BAJO TU PROPIA CONCIENCIA, TENIENDO EN CUENTA DE ANTEMANO QUE PUEDE QUE DEJE DE FUNCIONAR TU AUTO SI MUEVES ALGO QUE NO DEBES. TODO LO QUE VEAS AQUÍ ES CON FINES EDUCATIVOS, ¡AY SI, AJÁA

Requisitos

Comenzaré por mostrar primero como conectarte al CMU del Sedan Mazda3 i Touring 2015, necesitamos:
1.- Celular o computadora que posea un SSH.
2.- Cable Ethernet cruzado.
3.- Router al cual puedas acceder como administrador.
4.- Convertidor/Adaptador USB a Ethernet1 2.
5.- No tener miedo y estar atento.

1 En el SO anterior a la versión 28, Mazda tenía desbloqueada su interfáz WiFi. Precisamente al notar que es algo muy vulnerable, decidieron desactivarla, por lo que ahora (en mi caso, versión 33) necesitamos que el CMU nos arroje una IP a través del puerto USB.
2 No cualquier adaptador funciona; yo compré éste que para lo que servirá, el precio es accesible.

Procedimiento: 

1.- Una vez conectado todo, primero nos cercioramos de que nuestra terminal SSH esté funcionando.


2.- Vamos al router como administradores y verificamos los dispositivos conectados a éste. El DHCP del mismo le asignó al Mazda la siguiente IP:


3.- SSHeamos. El usuario es: root y la contraseña es: jci.


4.- Escribimos en la consola las siguientes líneas: 
     /jci/scripts/set_lvds_speed_restriction_config.sh disable
     /jci/scripts/set_speed_restriction_config.sh disable


Si ambas líneas son correctas, se desactivarán las restricciones por velocidad.

5.- Solo como extra, muestro la versión del CMU


6.- Solo nos queda salir de la consola y reiniciar el auto.

Ahora ya podremos utilizar la pantalla cuando estemos en movimiento. Ten cuidado, trata de que la pantalla la controle tu copiloto y pon atención al camino. Recuerda: Seguridad primero.

Bibliografía

Bites.