Quando controllo EIP, come faccio a scoprire quali sono i prossimi passaggi?

1

Diciamo che posso controllare il registro della CPU EIP e voglio passare a una funzione specifica di cui conosco l'indirizzo di memoria corretto. Questo indirizzo è all'interno della stessa pagina di memoria. Non abbiamo mitigazioni di exploit abilitate. Posso quindi semplicemente passare l'indirizzo di memoria della funzione a jmp e caricarlo in EIP?

    
posta Dirk 15.05.2014 - 20:50
fonte

1 risposta

2

Sì, ma attenzione:

  • Tutte le funzioni acquisiscono i propri parametri nello stack, o talvolta nei registri. Probabilmente non lo sai, quali param e dove arriverà. Forse avrai bisogno di un po 'di gioco se non lo farai e presto si bloccherai all'inizio.
  • Il ritorno di una funzione è in pila, ma a volte si trovano nei registri. È molto sicuro che il processo morirà dopo il codice agganciato.

Se stai lavorando su un hook, assicurati che ESP e i registri vengano ripristinati dopo il tuo hook.

Forse potresti avere problemi se esiste una funzione di randomizzazione dello spazio di indirizzi, che rende problematico l'indirizzo della funzione da trovare.

    
risposta data 16.05.2014 - 19:28
fonte

Leggi altre domande sui tag