Skip to content

Interactive dependency map

Michael Messner edited this page Mar 31, 2026 · 13 revisions

The S130_binary_map_builder.sh module in the EMBA firmware analyzer generates an interactive dependency map to visualize relationships between binary files. It analyzes dependencies using ldd, objdump, and string searches, integrating emulation data to visualize system architecture and critical paths in the final report.

image

This module is automatically enabled in the default scanning profile. To control this module the profile parameter EMBA_MAP_GENERATOR=1 can be used to enable/disable this feature.

image

This module has multiple mechanisms for the identification of dependencies integrated:

  • ldd
  • objdump
  • str with "/" characters
  • fuzzy strings
  • user-mode emulation
  • system mode emulation

With a helper function it is also possible to run it standalone after the firmware analysis with EMBA is finished:

└─$ ./helpers/firmware_map_builder.sh -e <EMBA log directory>  

Additionally, it is also possible to run it without an EMBA scan on an extracted firmware image directory:

└─$ ./helpers/firmware_map_builder.sh -f <firmware directory> -l <log directory>

Clone this wiki locally