Code to exploit and research the Exynos Bootrom
Go to file
2024-09-04 14:16:26 +02:00
.vscode Added .vscode 2024-01-02 13:29:15 +01:00
documentation Small docs update 2024-09-03 19:31:41 +02:00
dump Loads and executes BL31, then returns debugger, then continues bootflow and enters recovery 2024-08-29 21:06:15 +02:00
reven update 2024-08-17 20:35:52 +02:00
source Add descriptions to commit and cleanup 2024-09-04 14:16:26 +02:00
.gitignore update gitignore 2024-08-20 15:23:50 +02:00
.gitlab-ci.yml Update .gitlab-ci.yml file 2024-08-23 08:27:08 +00:00
README.md Updating readme and adding some necessary binaries to run the exploit 2024-08-20 16:31:49 +02:00
requirements.txt Unable to get firmware loader to return to debugger (yet) 2024-08-22 19:50:46 +02:00

Samsung_S7

Code to exploit and research the Exynos Bootrom.

Setting up

Python module

Create a venv, and intall ghidra_assistant.

python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txts

Building the debugger

The debugger needs to be built using gupje. Move the contents of source/gupje_device to Gupje/devices/samsung_s7. Then proceed to build the debugger.

mv source/gupje_device/* {your-gupje-root}/devices/samsung_s7
cd {your-gupje-root}
make -f devices/samsung_s7/Makefile

Then proceed to move the debugger to dump/debugger.bin. To get to work, run source/exploit/exploit.py. The launch.json's are located in source/exploit, so its recommended to open this folder in your VSCode/favourite IDE.

Viewing/building documentation

To view documentation, ensure you have sphinx installed. If not, run sudo apt install python3-sphinx. Then proceed to build the documentation by running make livehtml in documentation.