Veranstaltung/Reverse Engineering Atmel AVRs
Wie findet man heraus, was diese kleinen Prozessoren wirklich tun? Dank der geringen Codegroesse ist es ueberschaubar, diese komplett zu disassemblen.
Abstract
Atmel AVRs sind 8 oder 16 Bit Mikroprozessoren, die recht guenstig sind und daher recht weit verbreitet sind. Es wird anhand eines AT90S8535 demonstriert, wie eine Firmware dieses Geraetes (8KB Flash, 512 Byte EEPROM) disassembliert wurde. Wegen ihrer geringen Speicherkapazitaet werden die oft manuell in Assembler programmiert, und nicht in hoeheren Programmiersprachen. Dabei wurde sowohl ein Schaltbild der Platine angefertigt, um festzustellen, an welchem Output was passiert, als auch die Firmware mit einigen Tools analysiert. Nach einigen Wochen Arbeit waren grosse Teile des Programmcodes verstanden und konnten erfolgreich veraendert werden.