IDA Elf section header parsing fails.
- Dominant language
- Python
- Stars
- 6.2k
- Forks
- 726
- Avg merge
- 11d 11h
- Merged PRs (30d)
- 7
Description
Using the latest capa
1. I have an ELF binary with an e_shoff that is in a region not mapped into IDA. Even with a manual load this data is not present

2. When capa attempts to parse the elf header

it correctly recovers the e_shoff value but the read to the shimmed idb file object fails as IDA doesn't have this data present in the IDB. I have no idea why they'd do this, however I have reservations about shimming the IDB as a readable file and doing raw parsing like this after this issue as well as the previous issue https://github.com/mandiant/capa/issues/1393.
This issue is distinct from https://github.com/mandiant/capa/issues/1393 in that the region being referenced is not loaded _at all_
Contributor guide
Research direction
Start by reproducing the ELF section-header parsing failure with an e_shoff region that is not loaded into IDA, then inspect the ELF parsing entry point and the shimmed IDB file read described in the report. Compare the behavior with issue #1393 and define completion as handling unmapped section-header data without an unexplained read failure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- reverse-engineering
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100