Megpróbálom megtanulni, hogyan kell használni a BinDiff eszközt, de tudom ” t találja ki, hogyan lehet két bináris fájlt megnyitni az összehasonlításhoz. Miközben átnézem a kézikönyvet, úgy tűnik, ehhez IDA Pro-ra van szükségem.
Használhatom a BinDiff-et IDA Pro nélkül (mondjuk csak ingyenes IDA-val)?
Hozzászólások
- kapcsolódó: A BinDiff alternatívái reverseengineering.stackexchange.com/q/26196/3934 ?
Válasz
Igen, ez most Ghidrával lehetséges.
A legújabb verzió, a BinDiff 6 kísérleti támogatást nyújt a Ghidra szétszerelőhöz. Egy olyan kiterjesztéssel érkezik, amely lehetővé teszi a Ghidra szétszerelésének a diffikáláshoz szükséges .BinExport formátumba történő exportálását. >
zynamics webhely
A Ghidra kiterjesztés telepítése
A BinDiff telepítése után keresse meg a “BinExport” kiterjesztés a telepítési mappában.
Az alapértelmezett értékek:
- Windows:
C:\Program Files\BinDiff\extra\ghidra - Linux:
/opt/bindiff/extra/ghidra - macOS:
/Applications/BinDiff/Extra/Ghidra
Ha megtalálta a ghidra_BinExport.zip fájl, a kiterjesztés ugyanúgy telepíthető, mint bármely más Ghidra kiterjesztés:
- Indítsa el a Ghidra alkalmazást, majd válassza a
Filelehetőséget. |Install Extensions.... - Kattintson a
+gombra aAdd extensioneléréséhez. -
A
Select Extensionpárbeszédpanelen lépjen aghidra_BinExport.zipkönyvtárba. -
Válassza ki a .zip fájlt, és kattintson a
OK - Kattintson a
OKgombra a megerősítéshez, majd az újbóli elvetés elvetéséhez. Ezután indítsa újra a Ghidrát.
Használat
A Ghidra Java-alapú exportőrének ez a verziója az IDA Pro natív C ++ verziójához képest a következő tulajdonságokkal rendelkezik:
| | Ghidra | IDA | | --------------------------------------- | ------ | --- | | Protocol Buffer based full export | ✓¹ | ✓ | | Statistics text file | - | ✓ | | Text format for debugging | - | ✓ | | BinNavi export into PostgreSQL database | - | ✓ | ¹ No operand trees
A telepítési verzió ellenőrzése
- A Ghidrában válassza a
File|Install Extensions.... - Ellenőrizze, hogy az
BinExportszerepel-e a listában, és megfelelő-e aInstall Path
Meghívás
- Ghidrában nyisson meg egy projektet, vagy hozzon létre egy újat.
- Ha még nem tette meg, nyissa meg az exportálandó bináris fájlt a Code Browser eszközt, és futtassa a Ghidra kezdeti elemzését. Engedélyezheti az “agresszív utasításkereső” opciót az export jobb lefedettségének érdekében.
- A projektnézetben kattintson a jobb gombbal a bináris fájlra exportálás és válassza a
Export... - legördülő listából válassza a
Binary BinExport (v2) for BinDiff - kijelölést a kimeneti fájl elérési útja. Ez lehet az eredeti fájlnév, mivel a
.BinExportmellékletet kapja. - Kattintson a
OKgombra.
BinDiff Exportált fájlok
Az exportált fájlok mostantól eltérhetnek, és az eredmények megjelenhetnek a kezelőfelületén:
- Két bináris fájl exportálása a fenti utasítások betartásával. A következő lépések feltételezik
primary.BinExportéssecondary.BinExportfeltételezését. -
A parancssorból futtassa a BinDiff motort a következővel:
bindiff primary.BinExport secondary.BinExportEz létrehoz egy fájlt
primary_vs_secondary.BinDiffaz aktuális könyvtárban. Abindiffparancsnak a rendszer elérési útjában kell lennie. -
Indítsa el a BinDiff kezelőfelületet, akár a
bindiff --uivagy az indítót használja az operációs rendszeréhez. -
Hozzon létre új munkaterületet, vagy nyisson meg egy meglévőet.
-
Válassza a
Diffs|Add Existing Diff...lehetőséget. -
, válassza ki a 2. lépésben létrehozott
primary_vs_secondary.BinDiffelemet. -
Kattintson a
OK, majdAdd. A diff most a bal oldali fa nézetben jelenik meg, és duplán kattintva megnyitható. -
A BinDiff használatával általában megadhatja az összehangolt függvények hívási grafikonját vagy folyamatábráit. .
Nyílt forráskód
Végül a BinExport kiterjesztés (és az IDA Pro bővítmény is) nyílt forráskódú és elérhető a GitHubon . A v11 címke a BinDiff 6-nak felel meg.
Megjegyzések
- Köszönöm. <
nagyon örülnék, ha megszabadulnék az IDA Pro függésétől!