Musím mít IDA Pro, abych mohl používat nástroj BinDiff?

Snažím se naučit používat nástroj BinDiff , ale můžu “ Přišel na to, jak otevřít dva binární soubory pro provedení srovnání. Při procházení jejich manuálu se zdá, že k tomu potřebuji mít IDA Pro.

Mohu použít BinDiff bez IDA Pro (řekněme jen s IDA zdarma)?

Komentáře

Odpověď

Ano, u Ghidry je to nyní možné.

Nejnovější verze, BinDiff 6 , má experimentální podporu pro demontéra Ghidry. Dodává se s příponou, která umožňuje exportovat demontáž Ghidry do formátu .BinExport potřebného pro diffing.

Požadovaný software

Instalace rozšíření Ghidra

Po instalaci BinDiff vyhledejte „BinExport“ rozšíření ve vaší instalační složce.

Výchozí nastavení jsou

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

Pokud jste našli ghidra_BinExport.zip souboru, rozšíření lze nainstalovat jako jakékoli jiné rozšíření Ghidra:

  1. Spusťte Ghidru a poté vyberte File | Install Extensions....
  2. Kliknutím na tlačítko + přejděte na Add extension.
  3. V Select Extension dialog, přejděte do adresáře obsahujícího ghidra_BinExport.zip.

  4. Vyberte soubor .zip soubor a klikněte na OK

  5. Kliknutím na OK potvrďte a znovu zavřete zprávu o restartu. Poté restartujte Ghidru.

Použití

Tato verze exportéru založeného na Javě pro Ghidru má ve srovnání s nativní verzí C ++ pro IDA Pro následující funkce:

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

Ověření verze instalace

  1. V Ghidře vyberte File | Install Extensions....
  2. Ověřte, zda je BinExport uveden a má správný Install Path

Vyvolání

  1. V Ghidře otevřete projekt nebo vytvořte nový.
  2. Pokud to ještě není hotové, otevřete binární soubor, do kterého chcete exportovat nástroj Prohlížeč kódu a spusťte počáteční analýzu Ghidry. Možná budete chtít povolit možnost „agresivní vyhledávač instrukcí“, abyste získali lepší pokrytí exportu.
  3. V zobrazení projektu klepněte pravým tlačítkem na binární exportovat a vybrat Export...
  4. z rozevíracího seznamu vyberte Binary BinExport (v2) for BinDiff
  5. vybrat cesta k výstupnímu souboru. Může to být původní název souboru, protože .BinExport bude přidán.
  6. Klikněte na OK.

BinDiff Exportované soubory

Exportované soubory lze nyní diferencovat a výsledky zobrazit v jejich uživatelském rozhraní:

  1. Podle výše uvedených pokynů exportujte dva binární soubory. Následující kroky předpokládají primary.BinExport a secondary.BinExport.
  2. Z příkazového řádku spusťte stroj BinDiff s

    bindiff primary.BinExport secondary.BinExport 

    Tím se vytvoří soubor primary_vs_secondary.BinDiff v aktuálním adresáři. Příkaz bindiff by měl být ve vaší systémové cestě.

  3. Spusťte uživatelské rozhraní BinDiff buď pomocí bindiff --ui nebo pomocí spouštěče pro váš operační systém.

  4. Vytvořte nový pracovní prostor nebo otevřete existující.

  5. Vyberte Diffs | Add Existing Diff....

  6. Pod Choose Diff, vyberte primary_vs_secondary.BinDiff vytvořený v kroku 2.

  7. Klikněte na OK, následovaný Add. Rozdíl je nyní zobrazen ve stromovém zobrazení vlevo a lze jej otevřít poklepáním.

  8. K zobrazení grafu volání nebo vývojových grafů spárovaných funkcí běžně použijte BinDiff. .

Open Source

Nakonec je rozšíření BinExport (a také plugin IDA Pro) otevřeným zdrojem a je k dispozici na GitHubu . Značka v11 odpovídá BinDiff 6.

Komentáře

  • Děkuji. ' Rád bych se zbavil závislosti na IDA Pro!

Odpovědět

Bindiff může být plugin v IDA nebo samostatný, ale k porovnání binárních souborů stále potřebujete databázi IDA.

zde zadejte popis obrázku

Komentáře

  • Pochybuji, že bude schopen otevřít soubor .idb bez nainstalovaného IDA
  • @ismael_akez: Mohu vygenerovat databázový soubor bez IDA?

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *