Skip to content

Running bindiff export does not result in .BinExport file being created #52

Open
@ddelnano

Description

@ddelnano

Describe the bug
I'm trying to diff an envoy file containing debug symbols against an optimized release image. I initially tried to diff them against each other through the IDA plugin window and received the "Exporting the secondary database failed." error.

After looking into the source a bit, I tried to run the /opt/bindiff/bin/bindiff directly to isolate what the problem is. It appears that the .BinExport files aren't being created by IDA. Please see my reproduction steps below and let me know if I can provide any more helpful context!

To Reproduce

  1. Download envoy v1.31.1
docker pull envoyproxy/envoy:v1.31-latest
container_sha=$(docker create envoyproxy/envoy:v1.31-latest)
docker cp ${container_sha}:/usr/local/bin/envoy ./
  1. Open binary in IDA and wait for initial analysis to complete
  2. Save IDA database file and close IDA
  3. Run bindiff export from the command line -- /opt/bindiff/bin/bindiff --export directory/containing/envoy-binary/
  4. See that no .BinExport file is created

Expected behavior
That a .BinExport file is created and I'm able to diff a file with debug symbols and the optimized release.

Environment (please complete the following information):

  • OS and version: Ubuntu 22 VM
  • Locale: US English
  • Disassembler and version: IDA Free 8.4
  • Bindiff v8 -- installed .deb from release page

Additional context

I noticed that bindiff is running the following ida64 command. I tried running that directly on my machine and used opensnoop to track what files ida64 is writing. Attached below are the commands I ran and the output from opensnoop. The ~/.bindiff/logs/bindiff_idapro.log file also doesn't contain much information.

Screen Shot 2024-08-12 at 3 05 21 PM

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions