Chrome: individuazione delle vulnerabilità tramite AddressSanitizer

2

Sto leggendo su AddressSanitizer , uno strumento che può essere utilizzato per trovare bug di memoria per Chrome (e altri software C / C ++). Sono un po 'curioso su quale sia il processo di utilizzo dello strumento:

1) È solo questione di eseguire Chrome compilato con AddressSanitizer, giocare con Chrome e sperare che AddressSanitizer contrassegni un avvertimento?

2) Se la risposta a 1) è "sì", posso usare strumenti come Selenium per automatizzare il processo?

3) Se la risposta a 1) è "no", dovrei invece esaminare scrupolosamente il codice sorgente di Chrome e quindi AddressSanitizer usando per confermare / sfruttare l'errore? O dovrei usare AddressSanitizer in qualche altro modo?

    
posta Randomblue 01.08.2012 - 22:40
fonte

1 risposta

1
  1. Questo è un modo per usare AddressSanitizer, ma non è l'unico modo. AddressSanitizer è solo uno strumento. Spetta a te come vuoi utilizzarlo.

    AddressSanitizer è molto simile a Valgrind, se hai familiarità con esso. (Se non si ha familiarità con Valgrind, si potrebbe pensare a AddressSanitizer come approssimativamente simile a Purify, se si ha familiarità con quello.) È uno strumento di runtime che monitora l'esecuzione del programma e segnala un avvertimento se succede per vedere qualcosa che sembra un bug relativo alla memoria.

    Se vuoi utilizzare AddressSanitizer per trovare nuovi bug, spetterà a te capire come esercitare la maggior parte dell'applicazione che desideri e come ottenere una buona copertura. Si può fare qualsiasi cosa, da "esegui una volta" a "fuzzing completo più in esecuzione su una suite di test di regressione dettagliata".

  2. Sì, se vuoi. Sta a te decidere come generare test.

Ti suggerisco di leggere sul test di fuzz. Ci sono molte risorse. Vedi, ad esempio, i mazzi di slide di Charlie Miller e le domande contrassegnate con su questo sito. Potresti anche controllare questo sforzo da parte di Google e miei esperimenti su come i flag di compilazione hanno interessato i test di fuzz .

    
risposta data 01.08.2012 - 23:09
fonte

Leggi altre domande sui tag