Vector35 / Vector35/binaryninja-api

Ghidra plugin import still shows comments and user types from an unanalyzed Ghidra file

Open
#8,432 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
1.3k
Forks
298
Avg merge
5d 5h
Merged PRs (30d)
19

Description

Version and Platform (required):

  • Binary Ninja Version: 6.0.10474-dev Ultimate (c9ea4d90) (also present since 5.3.9757 stable)
  • Edition: Ultimate
  • OS: Windows 11 Pro
  • OS Version: 10.0.26200 (Build 26200)
  • CPU Architecture: x64 (AMD64 Family 25 Model 97, running under QEMU/Proxmox virtualization)

Bug Description:
When opening a file in Ghidra and declining analysis (selecting "No" on the analysis prompt shown on import), then adding comments and user types to the unanalyzed file, importing that same file into Binary Ninja via the Ghidra plugin still shows the added comments and user types. Since the file was never analyzed in Ghidra, these comments and user types should not be present/importable.

This issue also reproduce on stable version 5.3.9757

Steps To Reproduce:

  1. Open a binary in Ghidra
  2. When prompted to analyze the file, select "No"
  3. On the unanalyzed file, add one or more comments and one or more user types
  4. In Binary Ninja, use the Ghidra plugin to import the same file
  5. Observe that the comments added in Ghidra are visible in the Binary View
  6. Observe that the user types added in Ghidra are visible in the Types panel

Expected Behavior:
Since the file was not analyzed in Ghidra, the comments and user types added to it should not be imported/visible in Binary Ninja after using the Ghidra plugin import.

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

Reproduce the import using an unanalyzed Ghidra file, declining analysis before adding comments and user types. Start by locating the Ghidra plugin import path; no source file or test is named in the issue. Done means comments and user types from the unanalyzed file are absent after import, while the reproduction remains covered by a test or documented verification.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
reverse-engineering, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.