Comments (4)
Actually, it seems that there is already an existing analyzer that is supposed to do this automatically, but if the .plt
section isn't already disassembled it will fail because the SymbolicPropogator won't be able to fetch instructions.
from ghidra-switch-loader.
Hello,
I'm reviving this issue as it is causing a few issues for me at present.
Normally, an AARCH64 ELF would have its .plt
and .got
sections disassembled at import time, which is a prerequisite for Ghidra's built-in AARCH64 ELF PLT Thunks
analyzer to work. The Switch loader does not seem to apply this behavior to NROs, which means no function in the .plt
section is marked as a thunk. For large binaries, fixing this by hand is slightly prohibitive.
It also somewhat breaks the BSim workflow introduced in Ghidra 11, making function comparisons between Switch and PC versions of games more difficult.
Could this be looked into? I don't mind giving it a go myself if you can point me in the right direction.
from ghidra-switch-loader.
Normally, an AARCH64 ELF would have its .plt and .got sections disassembled at import time, which is a prerequisite for Ghidra's built-in AARCH64 ELF PLT Thunks analyzer to work.
Oh I see, I didn't know about this.
I don't mind giving it a go myself if you can point me in the right direction.
I'm currently short on time, so I won't be looking into this for a bit.
plt sections are dealt with here:
If you need to get a pointer for something specific, let me know.
from ghidra-switch-loader.
I've found a way around this. Clearing the entire .plt
section, including functions, then disassembling, then re-running AARCH64 ELF PLT Thunks
properly marks them as thunks.
It's a good enough workaround for my needs.
from ghidra-switch-loader.
Related Issues (20)
- Upgrade for 9.2.2 HOT 1
- error: cannot find symbol getMsgCount() on ghidra 9.2.2 HOT 2
- New release for Ghidra 9.2.2? HOT 6
- Throws error when importing BOTW or Celeste HOT 5
- latest update's naming scheme not compatible with AUR
- New version of Ghidra is incompatible with extension
- "Unexpected Loader exception from Nintendo Switch Binary" when importing a specific binary HOT 5
- How to recognize NXO file? HOT 6
- Error When Installing HOT 2
- Switch Loader 1.5.0 for Ghidra 10.1.5
- NSO header missing from tree/listing HOT 2
- Issue when installing HOT 4
- Gradle error when trying to build
- NSO Loader: Index 0 out of bounds for length 0 HOT 3
- Is there a prebuilt release for 10.3.2? HOT 1
- Ghidra 10.4 prebuilt release
- Base Addresses HOT 2
- Unable to load Mariko 16.1.0 kernel (secure_monitor.bin) HOT 1
- Update to Ghidra 11.0 HOT 5
- Analysis Task: Shared Return Calls - Index 0 out of bounds for lenght 0 HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ghidra-switch-loader.