Final Exam Study Questions
Part of
the homework for 22C:169, Spring 2006
|
These study questions are not going to appear on the final exam, however, these questions are intended to inspire thinking about subjects that will be on the exam.
It uses flash memory for the firmware so that firmware upgrades can be done. Consider the following model for upgrades:
The firmware pre-loaded in the machine at the time of manufacture includes logic to examine the compact flash card whenever it finds such a card being inserted in the compact flash socket. This card is expected to contain a standard DOS-format directory on it. If it finds such a directory, it searches this directory for a file named "upgrade-n". If such a file exists, it flash erases the contents of block n of the internal flash EEPROM and loads the contents of that file into that block of flash EEPROM.
a) You are concerned about the integrity of the system. You think someone may have had an opportunity to insert an unknown compact flash card into the machine, and as a result, unknown software may have been loaded. Short of physical disassembly, Can you possibly prove to yourself that the contents of the flash EEPROM are OK or can you possibly force the system into a known state that is provably free of unknown code?
b) How should the system be modified to prevent uncertified code from being inserted?
c) A technical question that would be more in the spirit of an assembly language course than a security course: How do you go about replacing the block of flash EEPROM containing the loader? Also, how do you get the initial contents of the flash EEPROM into place in order to allow loading new versions?
The exam will be open-notes, open-book