Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2022-2869-detector — CodeQL detector pour la cause racine de CVE-2022-2869 (CWE-191 sous-dépassement non signé) utilisant une analyse de flux de contrôle/plages pour identifier les schémas vulnérables sans coder en dur des fonctions spécifiques. | Kitploit
Outils/GitHubGitHub/halahajyahia/cve-2022-2869-detector
Analyse StatiqueAnalyse des VulnérabilitésAnalyse de CodeAnalyse de Binaires
GitHubhalahajyahia/cve-2022-2869-detector

CVE-2022-2869-detector

CodeQL detector pour la cause racine de CVE-2022-2869 (CWE-191 sous-dépassement non signé) utilisant une analyse de flux de contrôle/plages pour identifier les schémas vulnérables sans coder en dur des fonctions spécifiques.

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
il y a 9h 56mPas encore vérifié
Partager

Détecteur CodeQL CVE-2022-2869

Ce projet implémente un détecteur CodeQL général pour la faiblesse racine derrière CVE-2022-2869 : une soustraction non signée qui peut provoquer un dépassement inférieur (underflow) car le programme n'a pas établi de garde suffisante de borne inférieure/ordre avant l'opération arithmétique.

Pourquoi cette version diffère de la requête précédente

Le détecteur signale délibérément la cause racine (CWE-191) plutôt que de coder en dur tiffcrop.c, des noms de fonctions ou des noms de variables. Il utilise la bibliothèque standard Overflow de CodeQL, dont le raisonnement de garde repose sur l'analyse de flux de contrôle/plages. Il n'utilise pas l'ordre des numéros de lignes du code source comme substitut à la dominance du flux de contrôle.

Fichiers

  • UnsignedUnderflow.ql — détecteur principal à soumettre.
  • report.md — explication de la vulnérabilité et de la requête.
  • test/mini_tiffcrop_like.c — cas non sûrs de type CVE plus contrôles sûrs.
  • test/mini_tiffcrop_variant.c — une variation structurellement différente plus contrôle sûr.
  • test/EXPECTED_RESULTS.md — comportement positif/négatif attendu.
  • original/ORIGINAL_VALIDATION.md — ce qui doit être démontré sur LibTIFF vulnérable.
  • Installer les dépendances du pack de requêtes

    Depuis ce répertoire :

    root@kitploit:~
    codeql pack install
    

    Créer une base de données pour les petits tests

    Exemple sous 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"
    

    Exécuter la requête :

    root@kitploit:~
    codeql query run UnsignedUnderflow.ql --database=db-tests
    

    Démonstration à l'exécution avec AddressSanitizer

    La requête CodeQL est une analyse statique. ASan est une preuve facultative montrant la conséquence des variations personnalisées.

    root@kitploit:~
    gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_like.c -o mini1
    ./mini1                 # sûr
    ./mini1 unsafe-x2       # erreur mémoire attendue
    
    gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_variant.c -o mini2
    ./mini2                 # sûr
    ./mini2 unsafe          # erreur mémoire attendue
    

    Validation originale LibTIFF

    Construisez une base de données CodeQL à partir d'une révision LibTIFF vulnérable (par exemple 4.3.0), puis exécutez exactement la même requête UnsignedUnderflow.ql contre cette base de données. Capturez le résultat dans tools/tiffcrop.c, en particulier computeInputPixelOffsets.

    Le détecteur ne doit pas être modifié pour mentionner tiffcrop, computeInputPixelOffsets, x2 ou crop_width ; sinon il serait surajusté à une seule instance de CVE et échouerait à l'exigence de variation de l'exercice.

    Télécharger l’outil