nccgroup / depthcharge

A U-Boot hacking toolkit for security researchers and tinkerers
https://depthcharge.readthedocs.io
BSD 3-Clause "New" or "Revised" License
257 stars 14 forks source link

-R Flag fails when running "MdCrashRegisterReader" #77

Closed youssefms closed 3 years ago

youssefms commented 3 years ago

Encountered the following error while running command "inspect depthcharge-inspect --arch arm -A -R -c test.cfg -m term":

Error: No data abort content found in the following text: 00000001: 80ea0000 ....

The last part in the term output is the following:

Early malloc usage: 464 / 2000 fdt_blob = 0x3af69fb0 U-Boot> md.l 1 1 00000001: 80ea0000 .... U-Boot> 03 U-Boot>

Depthcharge Version

Depthcharge Release 0.2.0 (main branch)

Target System

Device: Raspberry Pi 4 Model B SOC: bcm283x U-Boot: 2020.01 (Jan 06 2020 - 20:56:31 +0000)

Logs

See console log attached console.log

jynik commented 3 years ago

Thanks. I was able to reproduce this on an AARCH64 target as well.

On my particular target, I was able to induce a crash via md.l 0xffffffff 4, but we confirmed out-of-band that this wasn't working for you.

Where did you see "SetexprCrashRegisterReader" by the way? The failure we've been discussing has been using md.l -- I'm curious if there's a second bug here.

jynik commented 3 years ago

This issue results from using -R on an AARCH64 target while using Depthcharge in ARM 32-bit mode.

As such, I'm going to close this issue and a comment to #3 accordingly, as the AARCH64 implementation will need to invoke a data abort by some other means.

jynik commented 3 years ago

Further notes regarding this issue are being collected in #3.