Binary Ninja — Plateforme d'analyse binaire
★★★★★
Présentation
Binary Ninja (Vector35) est un désassembleur/décompilateur commercial réputé pour son API Python native et ses représentations intermédiaires multi-niveaux (BNIL), alternative plus accessible à IDA Pro.
BNIL — niveaux d'abstraction
LLIL : Low Level IL (proche assembleur)
MLIL : Medium Level IL (variables, paramètres, SSA)
HLIL : High Level IL (proche pseudo-C)
# Écrire des analyses indépendantes de l architecture API Python
import binaryninja as bn
bv = bn.load('binaire')
for f in bv.functions:
print(hex(f.start), f.name)
for instr in f.hlil.instructions:
print(instr)
bv.write(addr, b'\x90\x90') # patch Raccourcis
G : aller à une adresse | N : renommer
X : références croisées | Espace : Graph/Linear view