C'è qualche disassemblatore (non solo un live debugger) secondo a IDA per capacità? IDA è meraviglioso, e in qualche modo sorprendente per quanto è robusto e utile per l'inversione. Tuttavia, è piuttosto costoso per ottenere una licenza adeguata. C'è qualsiasi alternativa valida, o IDA detiene il monopolio di questo mercato?
Non mi aspetto che un'alternativa sia buona come IDA, sto solo cercando altre opzioni che possano essere più accessibili e abbastanza utili.
EDIT: Preferibilmente, il supporto multipiattaforma dovrebbe esistere, anche se questo è opzionale. MIPS, ARM, x86 e x86-64 sarebbe bello, ma un disassemblatore che gestisce uno qualsiasi di questi è una buona opzione da conoscere.
Se stavi cercando un concorrente, credo che ImmunityDebugger e OllyDbg possano competere in parte per [tag:dynamic-analysis] e Hopper in parte per [tag:static-analysis].
Detto questo, c'è un grande divario tra le capacità che si ottengono con i suddetti software e IDA.
IDA Pro è piuttosto unico con le sue capacità e se si aggiunge il plugin Hex-Rays Decompiler nell'equazione, le cose sembrano tristi per gli aspiranti contendenti. Tuttavia, per il disassemblaggio casuale e anche per qualche decompilazione Hopper sembra una buona scelta per chiunque non voglia sborsare centinaia di dollari per IDA Pro. Se volete un giro gratis, radare2 è probabilmente il prossimo in linea, ma ci vuole un po' per abituarsi.
Avendo ottenuto la mia prima licenza IDA Pro Standard come studente, devo ammettere che il prezzo è alto, ma vale ogni centesimo. Quando ho iniziato a lavorare professionalmente con cose legate a RCE ho fatto l'upgrade alla licenza "normale" prima e più tardi sono passato a IDA Pro Advanced per ottenere il supporto x64.
Tieni anche presente che c'è una versione freeware di IDA con restrizioni di licenza (ma adatta per hobbisti o studenti) e restrizioni delle capacità.
Ho usato Hopper di recente, e mentre non è al livello di IDA, è davvero sorprendentemente sofisticato, in particolare considerando quello che costa. La sua piattaforma principale è OS X, ma ci sono versioni disponibili anche per Linux e Windows. La versione per OS X ha anche una certa integrazione con gdb, in modo da poterlo usare come debugger.
Il primo strumento che mi viene in mente è Hopper, che non è più legato a OSX. Ha un certo supporto per il debug (almeno su OSX), ma si concentra sull'analisi statica, che sembra quello che stai cercando.
Ha la capacità di rompere i blocchi di base in un grafico di flusso di controllo, un supporto rudimentale per la decompilazione, e si possono rinominare le funzioni man mano che si dà loro un senso. Forse qualcuno che lo usa al posto di IDA interverrà con un confronto migliore, io ho giocato solo brevemente.
Inoltre, la versione gratuita di IDA è piuttosto capace e vale la pena dare un'occhiata se non l'avete provato.