Qualcuno sa come ottenere lo pseudocodice per x86-64 in IDA Pro? Ho già provato il plug-in Hex-Rays per ottenere lo pseudocodice, ma quando lo provo, viene visualizzato il seguente errore: “è supportato solo il codice a 32 bit”.

Commenti

  • beh, che tipo di binario hai? x86, x86_64, ARM …?

Risposta

Le altre due risposte qui sono obsolete.

Dal sito web hex-rays, nella pagina relativa al decompilatore hex-ray:

Attualmente il decompilatore supporta il codice generato dal compilatore per i processori x86, x64, ARM32, ARM64 e PowerPC. Abbiamo in programma di portarlo su altre piattaforme e aggiungere unAPI programmatica. Ciò consentirà ai nostri clienti di implementare i propri metodi di analisi. Ricerca di vulnerabilità, convalida del software, analisi della copertura sono le direzioni che vengono subito in mente.

Il 04/06/2014, con il rilascio di IDA 6.6 hex -rays ha ufficialmente rilasciato il decompilatore x86 a 64 bit e da allora è stato costantemente migliorato. La versione ufficiale può essere vista sulla pagina di IDA 6.6 come la prima nuova funzionalità, nonché sul loro changelog .

Si tratta di un prodotto separato e venduto separatamente dal loro decompilatore x86 a 32 bit, ed è attualmente quotato allo stesso prezzo degli altri decompilatori (vedere le quotazioni dei prezzi pagina per le licenze denominate).

Più di due anni dopo il primo rilascio, il decompilatore è completo ed è considerato di alta qualità.

Due immagini di utilizzare il disassemblaggio e la decompilazione di IDA “64 bit x86 (dalla pagina IDA 6.6 di hex-ray”):

IDA 6.6 esempio di disassemblaggio
(fonte: hex-rays.com )

IDA 6.6 esempio di decompilazione

Altre soluzioni

Esistono, tuttavia, altre soluzioni che forniscono un plugin IDA per la decompilazione. Sebbene non siano esattamente quello che stavi cercando, questi forniscono un altro possibile modo per raggiungere lobiettivo desiderato:

  1. Snowman , un completo -blown decompilatore con un plug-in IDA
  2. un plug-in per AVG “s decompilatore retargetabile online decompilatore ( Menzionato da @ws)
  3. Un plug-in per il decompilatore IDA solo python chiamato ida-decompiler ( Menzionato da @ 0xea)

Commenti

  • Cè anche un plug-in da retdec.com/idaplugin . Supporta Intel x86, ARM, ARM + Thumb, MIPS, PIC32, PowerPC in ELF, PE , COFF, AR (archivio) e Intel HEX. Tieni presente che il processo di decompilazione avviene sul loro server, non localmente.

Risposta

Per quanto ne so, il plug-in Hex-ray IDA supporta solo la decompilazione x86 e ARM (se hai un licenza per ARM). Non funziona su x86_64.

Tuttavia, se hai bisogno di qualcosa che funzioni su x86_64 dai unocchiata a ida-decompiler :

Un plugin IDA che tenta di decompilare una funzione. Scritto in Python. Per provarlo in IDA, posiziona il cursore su una funzione ed esegui il plugin . La funzione decompilata apparirà nella finestra di output.

Ovviamente, non è così avanzata come Hex-Rays, ma “è un buon passo verso un buon decompilatore aperto.

Commenti

  • Questo era corretto al momento della scrittura originale ma non lo è più. Per favore dai unocchiata alla mia risposta .

Risposta

Se vuoi assolutamente uno pseudo-codice e sei sfortunato con IDA Pro, potresti voglio provare la versione demo di hopper : può generare pseudo-codice per x86, x86-64 e ARM.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *