Back to results

University of Illinois at Urbana-Champaign

Machine code database for matching embedded libraries

Abstract

dc:description

Securing embedded systems relies on knowing and understanding the programs running on the system. Programs of modern scale import third-party libraries, which may evolve over time as they introduce and patch out vulnerabilities. Identifying component libraries and their version in a program binary is a valuable ability to harness. However, in the absence of well-kept documentation about included libraries, reference samples are needed to determine binary contents. A code matching tool developed by Professor Levchenko, called Morgoth, makes it possible to check for the inclusion of library code in an executable. With all the different embedded architectures and compilation options, an organized system is needed to track and compare these library 'variants.' We create a prototype with a small set of libraries, compilers, and architectures. We find that by examining machine code, one can differentiate library version and compiler used.

Degree

thesis:*
Name thesis:degree_name
M.S.
Level thesis:degree_level
Thesis
Discipline thesis:degree_discipline
Electrical & Computer Engr
Grantor
University of Illinois at Urbana-Champaign
Year dc:date
2023

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Silberg, Hamilton
Contributors dc:contributor
  • Levchenko, Kiril

Subjects

dc:subject × 6

Rights

dc:rights
Statement dc:rights
  • Copyright 2023 Hamilton Silberg
Language dc:language
en, eng

Identifiers

dc:identifier.*
Handle dc:identifier
https://hdl.handle.net/2142/121551

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Silberg, Hamilton. Machine code database for matching embedded libraries. Thesis thesis, University of Illinois at Urbana-Champaign, 2023. https://hdl.handle.net/2142/121551