Reverse engineering DMA peripherals
Avatar2 provides a basic interface for DMA peripherals, such as in the case of reverse engineering part of the booting code for Samsung Baseband, for example.
With this information, we load modem.bin
in Ghidra to check the code:
Figure 6.3: The boot_RESET exception
The code of the BOOT
section is responsible for setting up the exceptions vector to handle errors and interrupts, as well as initializing registers, stack pointers, variables, and calling the main application.
The public scripts from the previous Shannon baseband works, available at https://github.com/Comsecuris/shannonRE, are helpful for the reverse engineering process and can be loaded into Ghidra or IDA Pro. These scripts provide advantages and facilities such as annotating any Shannon modem image with legible function names and a deeper understanding of code and task identification. They also help collect and set up debug strings, which are vital...