Conversation
Let us first respect the 128 bytes red zone. Reference: page 23 of https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf
|
@VisionR1, please test the latest CI build on emulators https://github.com/JingMatrix/TEESimulator/actions/runs/21362939585 and upload your logs. |
|
From Nox A12. MuMu A12. |
|
Are you flashing the release builds? |
I didn't notice flash the release, my mistake. |
|
Please test latest CI debug build. |
|
Yeah, seems to working. I test in the MuMu A12. Also, the tee_status.txt say tee_broken=false |
The link doesn't work. |
Maybe this: |
- Strictly adhere to the System V AMD64 ABI by skipping the 128-byte "Red Zone" before modifying the stack, see page 23 of https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build for details. - Added `inject_via_staging` as a fallback strategy: 1. Copies the payload to `/data/local/tmp`. 2. Sets permissions/context (`u:object_r:system_file:s0`). 3. Loads via standard `dlopen`. 4. Immediately unlinks the file for stealth. - Introduced `RegisterRestorer` RAII class to guarantee original registers are restored even if the injection logic returns early due to error.


Let us first respect the 128 bytes red zone.
Reference: page 23 of https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build