Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
LibPNG_OSS-Fuzz — Projeto de pesquisa em segurança sobre fuzzing do libpng com OSS-Fuzz. Inclui análise do corpus de sementes, fuzzers personalizados de leitura/escrita e um exploit de prova de conceito para CVE-2014-9495. | Kitploit
Ferramentas/GitHubGitHub/enessar/libpng_oss-fuzz
Análise de VulnerabilidadesAnálise de CódigoExploraçãoFuzzingAnálise de BináriosAprendizado e Educação
GitHubenessar/libpng_oss-fuzz

LibPNG_OSS-Fuzz

Projeto de pesquisa em segurança sobre fuzzing do libpng com OSS-Fuzz. Inclui análise do corpus de sementes, fuzzers personalizados de leitura/escrita e um exploit de prova de conceito para CVE-2014-9495.

Ver Repositório
1há 9 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Fuzzing e Análise de Vulnerabilidades do libpng

Projeto de Pesquisa em Segurança em Grupo

Sobre Fuzzing: Fuzzing é uma técnica automatizada de teste de software que fornece dados inválidos, inesperados ou aleatórios como entradas para um programa, a fim de descobrir bugs e vulnerabilidades. O fuzzing guiado por cobertura usa feedback de cobertura de código para explorar inteligentemente diferentes caminhos de execução.

Sobre OSS-Fuzz: OSS-Fuzz é o serviço contínuo de fuzzing do Google para software de código aberto. Ele usa o LibFuzzer e outros motores de fuzzing para testar automaticamente projetos críticos de código aberto e relatar vulnerabilidades.

Este projeto demonstra fuzzing guiado por cobertura, análise de cobertura de código e exploração de vulnerabilidades usando a estrutura OSS-Fuzz do Google na biblioteca libpng.

Alvo: libpng v1.6.48 (fuzzing), v1.5.20 (exploração)

Para metodologia detalhada e relatório completo: Veja report.pdf
Para instruções completas: Veja Instructions.md


Resumo dos Resultados

Parte 1: Análise de Impacto do Corpus de Sementes

comparação de cobertura

Parte 3: Melhorias Personalizadas do Fuzzer

Melhoria 1 - Fuzzer de Leitura Aprimorado (submit_improve1)

  • Cobertura de Linha: 33.02% → 34.08% (+1.06%)
  • Adicionadas chamadas de API de transformação PNG e testes de casos extremos
  • +74 linhas em pngread.c, +73 linhas em pngtrans.c

Melhoria 2 - Fuzzer de Escrita (submit_improve2)

  • Criado novo fuzzer para codificação PNG (operações de escrita)
  • Funções de escrita: 0% → 30-50% de cobertura
  • +1.270 linhas de código anteriormente não testado cobertas

comparação de cobertura 2

Parte 4: Exploração da CVE-2014-9495

Exploração bem-sucedida de estouro de buffer heap no libpng v1.5.20:

  • Estouro de inteiro no processamento de PNG entrelaçado Adam7
  • PoC aciona a detecção do AddressSanitizer
  • Script: part4/run.poc.sh

Conquistas

  • Impacto do corpus de sementes: +17% de melhoria na cobertura
  • Fuzzers personalizados: 2 novas variantes (fuzzer de leitura aprimorado + fuzzer de escrita)
  • Nova cobertura: +1.270 linhas de código anteriormente não testado
  • Exploração de CVE: PoC bem-sucedido para CVE-2014-9495

Estrutura do Projeto

root@kitploit:~
├── part1/               # Seed corpus impact analysis
│   ├── run.w_corpus.sh         # Run with seed corpus
│   ├── run.w_o_corpus.sh       # Run without seed corpus
│   └── report/                 # Coverage reports
├── part3/               # Custom fuzzer improvements
│   ├── improve1/               # Enhanced read fuzzer
│   └── improve2/               # New write fuzzer
└── part4/               # CVE-2014-9495 exploitation
    ├── run.poc.sh              # Run exploit
    └── write_exploit.c         # PoC code

Início Rápido

root@kitploit:~
# Part 1: Fuzzing experiments (4 hours each)
cd part1
./run.w_corpus.sh    # or ./run.w_o_corpus.sh

# Part 3: Test improvements (4 hours each)
cd part3/improve1 && ./run.improve1.sh
cd part3/improve2 && ./run.improve2.sh

# Part 4: Exploit CVE
cd part4 && ./run.poc.sh

Visualizar relatórios de cobertura:

root@kitploit:~
firefox part1/report/w_corpus/linux/index.html

Membros do Grupo

Este projeto de pesquisa em segurança foi concluído em colaboração por:

  • Mahdi Atallah
  • Rassene M'Sadaa
  • Yannik Krone
  • Yonathan Lanzmann
Baixar ferramenta
MétricaCOM CorpusSEM CorpusMelhoria
Cobertura de Linha41.83%24.76%+17.07%
Cobertura de Ramo35.49%21.03%+14.46%
Cobertura de Função50.75%34.75%+16.00%