Vector35 / Vector35/binaryninja-api

Optionally use physical address for mapping in ELF segments

Open
#6,058 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Component: BinaryViewType Effort: Trivial File Format: ELF Impact: Low
Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

Right now we only select physical address for mapping in ELF segments if the signatures is "CGC" however this behavior might apply to more than just those so we should have a setting in "Open with options" to map in the ELF segments with their paddr for users to override. The default should of course should still be vaddr.

https://github.com/Vector35/binaryninja-api/blob/dev/view/elf/elfview.cpp#L180-L186

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in view/elf/elfview.cpp around lines 180-186, where ELF segment mapping currently selects paddr for CGC signatures. Trace how "Open with options" settings are defined and consumed, then add an option whose default preserves vaddr mapping and whose override selects paddr. Done means users can choose the physical-address mapping behavior when opening an ELF file.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.