Determining image base of firmware for ARM devices by matching literal pools

Ruijin Zhu, Yu An Tan, Quanxin Zhang, Yuanzhang Li, Jun Zheng*

*此作品的通讯作者

科研成果: 期刊稿件文章同行评审

28 引用 (Scopus)

摘要

In the field of reverse engineering, the correct image base of firmware has very important significance for the reverse engineers to understand the firmware by building accurate cross references. Furthermore, patching firmware needs to insert some instructions that references absolute addresses depending on the correct image base. However, for a large number of embedded system firmwares, the format is nonstandard and the image base is unknown. In this paper, we present a two-step method to determine the image base of firmwares for ARM-based devices. First, based on the storage characteristic of string in the firmware files and the encoding feature of literal pools that contain string addresses, we propose an algorithm called FIND-LP to recognize all possible literal pools in firmware. Second, we propose an algorithm called Determining image Base by Matching Literal Pools (DBMLP) to determine the image base. DBMLP can obtain the relationship between absolute addresses of strings and their corresponding offsets in a firmware file, thereby a candidate list for image base value is obtained. If the number of matched literal pools corresponding to a certain candidate image base is far greater than the others, this candidate is considered as the correct image base of the firmware. The experimental result indicates that the proposed method can effectively determine image base for a lot of firmwares that use the literal pools to store the string addresses.

源语言英语
页(从-至)19-28
页数10
期刊Digital Investigation
16
DOI
出版状态已出版 - 1 3月 2016

指纹

探究 'Determining image base of firmware for ARM devices by matching literal pools' 的科研主题。它们共同构成独一无二的指纹。

引用此