Che tipo di processi o alays statici useresti per catturare bug di buffer improprio come quello che ha causato problemi di cuore? [chiuso]

1

Quale tipo di processo o analisi statica potrebbe attirare l'errore di cuore oltre alle revisioni del codice umano che già sappiamo fallire. Correzione di correzione è qui.

    
posta Usman Ismail 11.04.2014 - 19:11
fonte

1 risposta

1

Una soluzione comune è usare le lingue gestite. Lingue come Java hanno il controllo dei limiti e la cancellazione della memoria su un incarico che eviterebbe il problema. La Java VM sta diventando molto veloce dopo anni e anni di lavoro e talvolta persino batte il codice C al giorno d'oggi, quindi il successo in termini di prestazioni non è eccezionale come ci si aspetterebbe. E comunque non sono richieste prestazioni elevate per tutti i progetti di codifica.

Un'altra soluzione comune discussa è non reimplementare le funzioni della libreria di base nel proprio codice. Il malloc integrato su Linux e altri sistemi moderni ha opzioni di configurazione per cancellare la memoria per impedire l'accesso a elementi sensibili, come pure le pagine di protezione per evitare di leggere troppo. OpenSSL ha la propria allocazione di memoria, tuttavia, quindi non è stato in grado di sfruttare il supporto C comune e gli strumenti per mitigare i problemi: link

L'uso delle funzioni principali avrebbe aiutato gli strumenti di analisi come Valgrind a prendere il problema.

    
risposta data 11.04.2014 - 19:34
fonte

Leggi altre domande sui tag