A methodology for determining the image base of ARM-based industrial control system firmware

Ruijin Zhu, Baofeng Zhang, Junjie Mao, Quanxin Zhang, Yu an Tan*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

34 Citations (Scopus)

Abstract

A common way to evaluate the security of an industrial control system is to reverse engineer its firmware; this is typically performed when the source code of the device is not available and the firmware is not trusted. However, many industrial control systems are based on the ARM architecture for which the firmware format is always unknown. Therefore, it is difficult to obtain the image base of firmware directly, which significantly complicates reverse engineering efforts. This paper describes a methodology for automatically determining the image base of firmware of ARM-based industrial control systems. Two algorithms, FIND-String and FIND-LDR, are presented that obtain the offsets of strings in firmware and the string addresses loaded by LDR instructions, respectively. Additionally, the DBMSSL algorithm is presented that uses the outputs of the FIND-String and FIND-LDR algorithms to determine the image base of firmware. Experiments are performed with 10 samples of industrial control system firmware collected from the Internet. The experimental results demonstrate that the proposed methodology is effective at determining the image bases of the majority of the firmware samples.

Original languageEnglish
Pages (from-to)26-35
Number of pages10
JournalInternational Journal of Critical Infrastructure Protection
Volume16
DOIs
Publication statusPublished - 1 Mar 2017

Keywords

  • ARM Architecture
  • Firmware
  • Image Base
  • Industrial Control Systems
  • Reverse Engineering

Fingerprint

Dive into the research topics of 'A methodology for determining the image base of ARM-based industrial control system firmware'. Together they form a unique fingerprint.

Cite this