Title | ||
---|---|---|
Stringer: Measuring The Importance Of Static Data Comparisons To Detect Backdoors And Undocumented Functionality |
Abstract | ||
---|---|---|
Finding undocumented functionality in commercial off-the-shelf (COTS) device firmware is an important and challenging task. This paper proposes a new static analysis method that measures the influence individual pieces of static data (such as strings) have upon the control flow of binaries in firmware. Our method automatically identifies static data comparison functions within binaries, then labels each function's basic blocks with the set of sequences of static data that must be matched against to reach them. Then using these sets, it assigns a score to each function, which measures the extent to which the function's branching is influenced by static data. Special keywords triggering backdoor functionality will have a large impact on the program flow. This allows us to identify three authentication backdoors - two of which previously undocumented. Moreover, we show our method is effective in aiding the recovery of both previously known and proprietary text-based protocols. We have developed a tool, Stringer which implements our technique; we demonstrate the effectiveness of our approach as well as its applicability to lightweight analysis by running it on a data set of 2,451,532 binaries from 30 different COTS device vendors. |
Year | DOI | Venue |
---|---|---|
2017 | 10.1007/978-3-319-66399-9_28 | COMPUTER SECURITY - ESORICS 2017, PT II |
Field | DocType | Volume |
Data mining,Authentication,Static data,Computer science,Static analysis,Control flow,Backdoor,Computer engineering,Firmware,Branching (version control),Distributed computing,Stringer | Conference | 10493 |
ISSN | Citations | PageRank |
0302-9743 | 0 | 0.34 |
References | Authors | |
16 | 3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Sam L. Thomas | 1 | 2 | 1.38 |
Tom Chothia | 2 | 441 | 29.82 |
Flavio D. Garcia | 3 | 438 | 33.08 |