Heb ik IDA Pro nodig om de BinDiff-tool te gebruiken?

Ik “probeer te leren hoe ik BinDiff -tool moet gebruiken, maar ik kan” t erachter komen hoe je twee binaire bestanden opent om de vergelijking te doen. Terwijl ik door hun handleiding blader, lijkt het alsof ik daarvoor IDA Pro nodig heb.

Kan ik BinDiff gebruiken zonder IDA Pro (zeg maar met IDA gratis)?

Opmerkingen

Antwoord

Ja, dit is nu mogelijk met Ghidra.

De laatste versie, BinDiff 6 , heeft experimentele ondersteuning voor de Ghidra-demonteermachine. Het wordt geleverd met een extensie die het mogelijk maakt om Ghidra-disassembly te exporteren naar het .BinExport-formaat dat nodig is voor differen.

Vereiste software

De Ghidra-extensie installeren

Zoek na het installeren van BinDiff de “BinExport” extensie in uw installatiemap.

De standaardinstellingen zijn

  • Windows: C:\Program Files\BinDiff\extra\ghidra
  • Linux: /opt/bindiff/extra/ghidra
  • macOS: /Applications/BinDiff/Extra/Ghidra

Als u de ghidra_BinExport.zip bestand, de extensie kan worden geïnstalleerd zoals elke andere Ghidra-extensie:

  1. Start Ghidra en selecteer vervolgens File | Install Extensions....
  2. Klik op de + knop voor Add extension.
  3. In het Select Extension dialoogvenster, navigeer naar de directory met ghidra_BinExport.zip.

  4. Selecteer de .zip bestand en klik op OK

  5. Klik op OK om te bevestigen en nogmaals om het herstartbericht te sluiten. Start Ghidra vervolgens opnieuw.

Gebruik

Deze versie van de op Java gebaseerde exporteur voor Ghidra heeft de volgende kenmerken vergeleken met de native C ++ -versie voor IDA Pro:

| | Ghidra | IDA | | --------------------------------------- | ------ | --- | | Protocol Buffer based full export | ✓¹ | ✓ | | Statistics text file | - | ✓ | | Text format for debugging | - | ✓ | | BinNavi export into PostgreSQL database | - | ✓ | ¹ No operand trees 

De installatieversie verifiëren

  1. Selecteer in Ghidra File | Install Extensions....
  2. Controleer of BinExport wordt vermeld en de juiste Install Path

Aanroep

  1. Open in Ghidra een project of maak een nieuw project.
  2. Als je dit nog niet hebt gedaan, open je het binaire bestand om te exporteren in de Code Browser-tool en voer de eerste analyse van Ghidra uit. Misschien wil je de optie “agressieve instructiezoeker” inschakelen om een betere dekking bij de export te krijgen.
  3. Klik in de projectweergave met de rechtermuisknop op het binaire bestand exporteer en selecteer Export...
  4. Selecteer in de vervolgkeuzelijst Binary BinExport (v2) for BinDiff
  5. Selecteer een pad voor het uitvoerbestand. Dit kan de originele bestandsnaam zijn, als .BinExport wordt toegevoegd.
  6. Klik op OK.

BinDiff Geëxporteerde bestanden

Geëxporteerde bestanden kunnen nu worden gedifferentieerd en de resultaten kunnen worden weergegeven in de gebruikersinterface:

  1. Exporteer twee binaire bestanden volgens de bovenstaande instructies. De volgende stappen gaan uit van primary.BinExport en secondary.BinExport.
  2. Start de BinDiff-engine vanaf de opdrachtregel with

    bindiff primary.BinExport secondary.BinExport 

    Dit zal een bestand primary_vs_secondary.BinDiff aanmaken in de huidige directory. Het bindiff commando zou in je systeempad moeten staan.

  3. Start de BinDiff UI, ofwel via bindiff --ui of gebruik het opstartprogramma voor uw besturingssysteem.

  4. Maak een nieuwe werkruimte of open een bestaande.

  5. Selecteer Diffs | Add Existing Diff....

  6. Onder Choose Diff, selecteer de primary_vs_secondary.BinDiff gemaakt in stap 2.

  7. Klik op OK, gevolgd door Add. Het verschil wordt nu weergegeven in de boomstructuur aan de linkerkant en kan worden geopend door erop te dubbelklikken.

  8. Gebruik BinDiff normaal om de oproepgrafiek of stroomdiagrammen van overeenkomende functies weer te geven. .

Open Source

Ten slotte is de BinExport-extensie (en ook de IDA Pro-plug-in) open source en beschikbaar op GitHub . De v11 tag komt overeen met BinDiff 6.

Opmerkingen

  • Bedankt. Ik ' zou zo blij zijn dat ik niet meer afhankelijk ben van IDA Pro!

Antwoord

Bindiff kan een plug-in in IDA of een standalone zijn, maar je hebt nog steeds de IDA-database nodig om binaire bestanden te vergelijken.

voer de beschrijving van de afbeelding hier in

Opmerkingen

  • Ik betwijfel of het in staat zal zijn om een .idb te openen zonder IDA geïnstalleerd
  • @ismael_akez: kan ik een databasebestand genereren zonder IDA?

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *