tags: ida analisi_malware analisi disassembler analisi_malware_statica
IDA esplora programmi binari, per i quali il codice sorgente potrebbe non essere disponibile, per creare mappe della loro esecuzione. Lo scopo principale di un disassemblatore è visualizzare le istruzioni effettivamente eseguite dal processore in una rappresentazione simbolica chiamata “linguaggio assembly”. Tuttavia, nella vita reale, le cose non sono sempre semplici. Il codice ostile di solito non collabora con l’analista. Virus, worm e trojan sono spesso blindati e offuscati; come tali, sono richiesti strumenti più potenti. Il debugger in IDA integra le capacità di analisi statica del disassemblatore. Consentendo a un analista di procedere passo passo nel codice in fase di analisi, il debugger spesso aggira l’offuscamento. Aiuta a ottenere dati che il disassemblatore statico più potente sarà in grado di elaborare in modo approfondito.
Utilizzo
Per prima cosa carichiamo il file con il pulsante New:

Nella seguente finestra clicca ok:

Poi accettiamo i termini di servizio e le cose varie, una volta dentro possiamo vedere diverse cose, come il testo nella sezione Text View oppure le subroutine sotto alla voce Function name nella parte sinistra:

Un grafico del programma in View-->Graphs-->Flow Chart:

Le chiamate alle funzioni View-->Graphs-->Function Calls:

Il valori esadecimali:

E molto altro.