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
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 →
há 9h 56mAinda 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:

    root@kitploit:~
    codeql pack install
    

    Criar um banco de dados para os testes pequenos

    Exemplo em Linux/WSL:

    root@kitploit:~
    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:

    root@kitploit:~
    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.

    root@kitploit:~
    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