EIP sballato

di il
3 risposte

EIP sballato

Come controlla un OS che ho alterato l'EIP e sto cominciando a puntare o a del codice malevolo o all'interno del kernel?

3 Risposte

  • Re: EIP sballato

    Ripeti in italiano con maggiori dettagli
  • Re: EIP sballato

    In qualsiasi architettura, durante l'esecuzione di un processo, abbiamo un registro che punta alla successiva istruzione da elaborare. Potendo alterare questo registro, ad esempio durante una chiamata a funzione o procedura che deve saltare completamente ad un altro indirizzo, come l'OS capisce che stiamo saltando all'interno di un frammento eseguibile e non ad esempio all'interno di un altro processo o in qualche parte del kernel che non sia una syscall?

    Lo so che la domanda implica lo studio di una vasta argomentazione sugli OS sia Unix che Windows.
  • Re: EIP sballato

    Tale controllo non è direttamente a carico dell'OS. Sulle comuni architetture wintel mainstream, a partire dal 386, i bit SMAP e SMEP entro il registro speciale CR4 (rispettivamente il ventunesimo e il ventesimo) controllano le funzionalità Supervisor Mode Access Protection per i dati e Supervisor Mode Execution Protection per il codice. In combinazione con i livelli di privilegio hardware, che in casa Intel sono denominati ring0...3, si ottengono i noti schemi di protezione e partizione dinamica per ogni dato segmento di memoria.

    La questione è trattata abbondantemente in tutti i testi di architettura dei calcolatori e SO.
Devi accedere o registrarti per scrivere nel forum
3 risposte