3 puntos por GN⁺ 2025-01-06 | Aún no hay comentarios. | Compartir por WhatsApp

Inicio

  • Poseía durante mucho tiempo un sintetizador Yamaha PSR-E433 y, por curiosidad sobre su estructura interna, lo desarmé.
  • Encontré el chip "YAMAHA SWL01U" en la placa principal, pero no pude encontrar información al respecto en línea.
  • Meses después encontré el manual de servicio de un sintetizador similar y confirmé la descripción de los pines del chip.
  • Intenté obtener información del chip mediante el punto de prueba JTAG y la interfaz UART.

Volcado de firmware

  • Probé leer el IDCODE del chip a través de la interfaz JTAG, pero apareció un IDCODE inesperado.
  • Supuse que era un núcleo ARM7TDMI y traté de comunicarme con el chip usando OpenOCD.
  • Confirmé que la comunicación con el núcleo ARM7TDMI era correcta observando cambios en la corriente.
  • Hice un volcado del firmware y comencé el análisis.

Ingeniería inversa del firmware

  • Comencé a hacer ingeniería inversa del firmware con Ghidra.
  • Traté de entender la estructura del sistema analizando las cadenas del firmware.
  • Encontré una lista de comandos de shell y, con eso, comprendí el funcionamiento del sistema.

Shellcode

  • Descubrí una forma de acceder a la memoria del sintetizador a través de mensajes MIDI.
  • Confirmé que podía inyectar y ejecutar código en RAM usando un comando de escritura de memoria.
  • Escribí y ejecuté un sencillo código ensamblador que imprime la cadena "HeloWrld" en la pantalla LCD.

Bad Apple

  • Realicé un proyecto para mostrar el video "Bad Apple" en la pantalla LCD del sintetizador a través de MIDI.
  • Accedí a la memoria interna del sintetizador mediante mensajes MIDI y, de ese modo, mostré el video.

Enlace

  • Se compartieron enlaces sobre todo el proceso relacionado con el proyecto.

Este proyecto demuestra que, a través de mensajes MIDI, es posible acceder a la memoria interna del sintetizador y así implementar funciones variadas. Esto sugiere la posibilidad de aprovechar al máximo su potencial.

Aún no hay comentarios.

Aún no hay comentarios.