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
Log4j-CVE-Detect — Détections pour CVE-2021-44228 dans des binaires imbriqués | Kitploit
Outils/GitHubGitHub/darkarnium/log4j-cve-detect
Analyse StatiqueScanners de VulnérabilitésSécurité des ConteneursAnalyse des VulnérabilitésDevSecOpsAnalyse de BinairesSécurité de la Chaîne Logistique
GitHubdarkarnium/log4j-cve-detect

Log4j-CVE-Detect

Détections pour CVE-2021-44228 dans des binaires imbriqués

Voir le dépôt
3574il y a 4 ansVérifié par Kitploit

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 →
Partager

Log4J-CVE-Detect

Ce dépôt contient un ensemble de règles YARA pour détecter les versions de log4j vulnérables à CVE-2021-44228, CVE-2021-45046 et/ou CVE-2021-45105 en recherchant un certain nombre de fonctionnalités présentes dans les versions affectées.

Cet outil fonctionne de manière récursive sur les fichiers binaires tels que les images Docker, les paquets système, les images de système de fichiers et même les supports d'installation. Voir la section « Comment ça marche ? » pour une liste complète des formats de fichiers pris en charge.

  • CVE-2021-44228
    • Recherche la signature d'un constructeur JndiManager (< 2.15.0).
  • CVE-2021-45046
    • Recherche les classes Interpolator qui n'importent pas JndiManager (< 2.16.0).
  • CVE-2021-45105
    • Recherche les classes AbstractConfiguration qui n'importent pas ConfigurationStrSubstitutor (< 2.17.0).

Bien qu'il existe un certain nombre de ressources pour détecter une utilisation non sécurisée de log4j avec CodeQL ou Semgrep, aucune ressource n'a encore été mise à disposition pour la détection de versions potentiellement vulnérables de log4j dans des artefacts binaires.

Cela représente un défi pour les organisations qui exécutent des applications d'entreprise qui n'ont pas été développées en interne, ou dont le code source n'est pas immédiatement disponible pour les équipes effectuant le tri initial.

Comme cette vulnérabilité est susceptible d'apparaître dans divers endroits « inattendus », cet outil vise à aider à détecter les versions vulnérables de log4j dans les artefacts compilés, qui peuvent ensuite être examinées manuellement pour déterminer leur exploitabilité.

Caveats

Le code obscurci entraînera des faux négatifs, où un widget potentiellement vulnérable ne peut pas être détecté en raison de l'utilisation d'obscurcissement.

Running it

Pour exécuter cet outil, clonez ce dépôt et suivez les étapes suivantes. Cela suppose que Docker et jq sont installés.

  1. Ajoutez les binaires à vérifier dans le dossier artifacts/
  2. Exécutez quickstart.sh (./quickstart.sh)

Sinon, l'exécution peut être personnalisée avec la commande suivante :

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/vulnerability.json" \
      "/mnt/stacs/input"

If you only wish to look for CVE-2021-44228, the following command can be used:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-44228.json" \
      "/mnt/stacs/input"

If you only wish to look for CVE-2021-45046, the following command can be used:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-45046.json" \
      "/mnt/stacs/input"

If you only wish to look for CVE-2021-45105, the following command can be used:

root@kitploit:~
docker run \
    --rm \
    --mount type=bind,source=$(pwd)/artifacts,target=/mnt/stacs/input \
    --mount type=bind,source=$(pwd)/rules,target=/mnt/stacs/rules \
    stacscan/stacs:latest \
      --rule-pack "/mnt/stacs/rules/CVE-2021-45105.json" \
      "/mnt/stacs/input"

Cet outil peut également être exécuté sans Docker. Veuillez consulter les instructions d'installation de STACS pour savoir comment installer STACS sans Docker.

What about Docker?

Pour analyser une image Docker, elle doit d'abord être exportée vers le répertoire artifacts pour être scannée. Cela peut être fait avec la commande suivante :

root@kitploit:~
IMAGE="alpine:latest"
NAME="alpine_latest"

docker export $(docker create ${IMAGE}) -o artifacts/${NAME}.tar

Sinon, un conteneur en cours d'exécution peut être exporté en utilisant simplement :

root@kitploit:~
# Replace CONTAINER_ID with the correct container identifier.
CONTAINER_ID="c29209118f9a"
NAME="widget_example"

docker export ${CONTAINER_ID} -o artifacts/${NAME}.tar

I got a finding! What do I do?

Vous devrez enquêter sur l'utilisation de log4j dans l'application pour comprendre si le produit est vulnérable. Si cela n'est pas possible, en raison d'un manque d'accès au code source ou autre, vous devriez vérifier si le fournisseur a publié des avis à ce sujet.

Il n'y a aucune garantie que l'inclusion d'une version vulnérable de log4j signifie que le produit est vulnérable !

Si vous ne trouvez aucun avis, vous devriez contacter le fournisseur pour lui demander l'impact de cette vulnérabilité sur le produit.

Consultez également les atténuations publiées par le projet log4j. Sinon, et de préférence, mettez à niveau vers une version non affectée de log4j.

How does it work?

Bien qu'il n'ait pas été conçu à cet effet, cet outil utilise le moteur STACS pour la décomposition et l'analyse en masse de fichiers binaires.

STACS est un scanner statique de credentials alimenté par YARA qui prend en charge les formats de fichiers binaires, l'analyse d'archives imbriquées, des ensembles de règles et listes d'ignorance composables, et le rapport SARIF.

Par exemple, cet outil peut analyser une archive tar qui contient une image Docker exportée, qui contient un fichier JAR quelque part dans le système de fichiers qui est affecté par cette vulnérabilité.

Il peut également analyser des archives imbriquées tar, jar, war, ear, zip, apk, bz2, tgz, xz, rpm, iso, etc.

I found a false positive / negative

Veuillez ouvrir un ticket Github décrivant le problème et en liant l'artefact binaire affecté - si possible.

Les pull requests pour ajuster les ensembles de règles seraient également grandement appréciées !

Validation

Voir le répertoire validation/ pour un ensemble de fichiers journaux issus de la validation de cet ensemble de règles.

Télécharger l’outil