Lee cadenas de ATmega o Arduino

1

Descubrí que uno puede desarmar un ATmega con objdump o avrdude. Y si los bits LB1 y LB2 se configuran bajos, sería mucho más difícil. Por lo tanto, si estos bits se establecen en alto o solo se permite leer el flash, es posible extraer las cadenas que puede contener el programa.

Por ejemplo, las cadenas contenidas en un programa de compilación C que se ejecuta, p. ej. bajo Linux se puede encontrar ejecutando "strings a.out".

¿Es posible leer las cadenas de un ATmega similar al ejemplo de "cadenas a.out"?

    
pregunta Con

1 respuesta

2

Si lees en voz alta el programa binario de ATmega y lo guardas en un archivo, las cadenas funcionarán.

A menudo se usa C para programar ATmega, y almacenará cadenas exactamente de la misma manera que las cadenas se almacenan en C en Linux. Son secuencias de bytes terminadas en 'strings' , generalmente ASCII. Es un formato de cadena tan útil, que la gente suele hacer lo mismo con el ensamblador.

Hace muchos años desde que miré los detalles, pero el programa '%code%' solía funcionar al buscar %code% caracteres, luego leer hacia atrás sobre caracteres ASCII plausibles.

    
respondido por el gbulmer

Lea otras preguntas en las etiquetas