Come posso ottenere IDA Pro di “vedere” i riferimenti esterni in una stringa?

StackOverflow https://stackoverflow.com/questions/1932129

  •  20-09-2019
  •  | 
  •  

Domanda

Al momento, mi sto smontare un file eseguibile Mach-O in IDA Pro. Ho passato attraverso e ho trovato la corda che mi interessa, ma quando cerco di trovare riferimenti esterni ad esso, nessuno può essere trovato. Sono sicuro che le corde si fa riferimento nel codice originale, ma IDA Pro non sembra essere in grado di scoprire il modo in cui viene fatto riferimento.

Ci sono trucchi che possono essere eseguite per arrivare IDA Pro per vedere i riferimenti esterni?

È stato utile?

Soluzione

Avete dato abbastanza tempo per poter avere analizzato l'intero programma? Se v'è un riferimento, potrebbe essere un po 'di tempo prima che si trova in un ampio programma.

E 'anche possibile che esso fa riferimento istruzioni per i quali IDA non riesce a trovare un percorso di flusso. Questo può accadere con tabelle di salto dove IDA non è in grado di indovinare la dimensione della tabella. La ragione per la I in IDA è che si guardano le istruzioni che necessitano di giudizio e l'interpretazione corretta e metterli al tipo appropriato in modo da IDA può fare la maggior parte del lavoro.

Altri suggerimenti

E 'possibile che la stringa appartiene ad un array di stringhe e il primo elemento della stringa è da riferimento IDA Pro.

Esempio:

str_table dd offset str1 ; ^xrefs: display_message(int idx)
dd offset str2
dd offset 0x1234 (if you press ctrl+o it may resolve to mystr)

mystr db "Hello world"

Quindi, cercare di trovare riferimento alle stringhe da vicino la vostra stringa, e vedere se appartengono a un tavolo, creare un array, etc ...

funzione di script IDC add_dref() sarebbe quello che si sta cercando.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top