作者: Lucian Cojocar , Jonas Zaddach , Roel Verdult , Herbert Bos , Aurélien Francillon
关键词:
摘要: Embedded systems are responsible for the security and safety of modern societies, controlling correct operation cars airplanes, satellites medical equipment, military units all critical infrastructures. Being integrated in large complex environments, embedded need to support several communication protocols interact with other devices or their users. Interestingly, software often implements that deviate from original specifications. Some extended additional features, while others completely undocumented. Furthermore, parsers consist C code which is optimized improve performance reduce size. However, this rarely designed mind, lacks proper input validation, making those vulnerable memory corruption attacks. most designs closed source third party evaluations only possible by looking at binary firmware. In paper we propose a methodology identify processing logic present without access documentation. Specifically establish evaluate heuristic detecting type means static analysis. Afterwards demonstrate utility firmware components treating input, perform reverse engineering extract protocols, discover analyze bugs on four widely used devices: GPS receiver, power meter, hard disk drive (HDD) Programmable Logic Controller (PLC).