Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2022-2869-detector — CodeQL detector para a causa raiz da CVE-2022-2869 (CWE-191 underflow sem sinal) usando análise de fluxo de controle/intervalo para identificar padrões vulneráveis sem codificar funções específicas. | Kitploit
Ferramentas/GitHubGitHub/halahajyahia/cve-2022-2869-detector
Análise EstáticaAnálise de VulnerabilidadesAnálise de CódigoAnálise de Binários
GitHubhalahajyahia/cve-2022-2869-detector

CVE-2022-2869-detector

CodeQL detector para a causa raiz da CVE-2022-2869 (CWE-191 underflow sem sinal) usando análise de fluxo de controle/intervalo para identificar padrões vulneráveis sem codificar funções específicas.

Ver Repositório

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 →
25há 1 mêsAinda não revisado
Compartilhar

Detector CodeQL para CVE-2022-2869

Este projeto implementa um detector CodeQL genérico para a fraqueza raiz por trás da CVE-2022-2869: uma subtração sem sinal que pode sofrer underflow porque o programa não estabeleceu uma proteção suficiente de limite inferior/ordem antes da operação aritmética.

Por que esta versão é diferente da consulta anterior

O detector relata deliberadamente a causa raiz (CWE-191) em vez de codificar diretamente tiffcrop.c, nomes de funções ou nomes de variáveis. Ele usa a biblioteca padrão Overflow do CodeQL, cujo raciocínio de proteção é baseado em análise de fluxo de controle/intervalo. Ele não usa a ordenação por número de linha do código-fonte como substituto para a dominância de fluxo de controle.

Arquivos

  • UnsignedUnderflow.ql — detector principal a ser submetido.
  • report.md — explicação da vulnerabilidade e da consulta.
  • test/mini_tiffcrop_like.c — casos inseguros semelhantes à CVE, além de controles seguros.
  • test/mini_tiffcrop_variant.c — uma variação estruturalmente diferente, além de controle seguro.
  • test/EXPECTED_RESULTS.md — comportamento positivo/negativo pretendido.
  • original/ORIGINAL_VALIDATION.md — o que deve ser demonstrado no LibTIFF vulnerável.

Instalar dependências do query-pack

A partir deste diretório:

codeql pack install

Criar um banco de dados para os testes pequenos

Exemplo em Linux/WSL:

codeql database create db-tests \
  --language=cpp \
  --command="gcc -std=c11 -O0 -g test/mini_tiffcrop_like.c -o /tmp/test1 && gcc -std=c11 -O0 -g test/mini_tiffcrop_variant.c -o /tmp/test2"

Executar a consulta:

codeql query run UnsignedUnderflow.ql --database=db-tests

Demonstração em tempo de execução com AddressSanitizer

A consulta CodeQL é análise estática. ASan é uma evidência opcional que mostra a consequência das variações personalizadas.

gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_like.c -o mini1
./mini1                 # seguro
./mini1 unsafe-x2       # erro de memória esperado

gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_variant.c -o mini2
./mini2                 # seguro
./mini2 unsafe          # erro de memória esperado

Validação original do LibTIFF

Construa um banco de dados CodeQL a partir de uma revisão vulnerável do LibTIFF (por exemplo, 4.3.0) e, em seguida, execute exatamente a mesma consulta UnsignedUnderflow.ql contra esse banco de dados. Capture o resultado em tools/tiffcrop.c, especialmente em computeInputPixelOffsets.

O detector não deve ser alterado para mencionar tiffcrop, computeInputPixelOffsets, x2 ou crop_width; caso contrário, ele ficaria superajustado a uma única instância da CVE e falharia no requisito de variação da tarefa.

Baixar ferramenta