Fuzzing guiado por cobertura
O que é Fuzzing guiado por cobertura?
Fuzzing guiado por coberturaTécnica de fuzzing que instrumenta o alvo para medir cobertura de código e evolui entradas que exploram caminhos novos, aumentando muito a eficácia.
Fuzzers guiados por cobertura instrumentam o alvo em tempo de compilação ou via tradução binária dinâmica e executam candidatos coletando cobertura por arestas ou blocos básicos. Entradas que geram nova cobertura são mantidas e mutadas por um algoritmo evolutivo, fazendo o corpus migrar para código mais difícil de alcançar. Esse loop, popularizado pelo AFL e refinado por AFL++, libFuzzer e Honggfuzz, é ordens de magnitude mais eficaz que o fuzzing aleatório cego. É a base de projetos como o OSS-Fuzz do Google, que descobriu dezenas de milhares de bugs em código open source.
● Exemplos
- 01
Compilar um parser em C com instrumentação do AFL++ e usar afl-fuzz para crescer um corpus guiado por cobertura.
- 02
libFuzzer usando SanitizerCoverage para evoluir entradas em um crate Rust.
● Perguntas frequentes
O que é Fuzzing guiado por cobertura?
Técnica de fuzzing que instrumenta o alvo para medir cobertura de código e evolui entradas que exploram caminhos novos, aumentando muito a eficácia. Pertence à categoria Segurança de aplicações da cibersegurança.
O que significa Fuzzing guiado por cobertura?
Técnica de fuzzing que instrumenta o alvo para medir cobertura de código e evolui entradas que exploram caminhos novos, aumentando muito a eficácia.
Como se defender contra Fuzzing guiado por cobertura?
As defesas contra Fuzzing guiado por cobertura costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.
Quais são outros nomes para Fuzzing guiado por cobertura?
Nomes alternativos comuns: Fuzzing greybox, Fuzzing baseado em feedback.