claranet.log4shell
Rôle Ansible - log4shell
:star: Donnez-nous une étoile sur GitHub — cela nous motive beaucoup !
Trouvez la vulnérabilité Log4Shell CVE-2021-44228 sur votre système
Ce rôle cherche à trouver les fichiers JAR et WAR dans le système de fichiers et parmi les fichiers ouverts (lsof).
:warning: Votre système peut ralentir pendant l'analyse en raison d'une find
sur /
et du processus de décompression pour rechercher à l'intérieur des JAR/WAR.
Ce rôle remplit la variable log4shell_analyze_versions
avec un dictionnaire comme celui-ci :
{
"/tmp/rundeck.war": {
"version": "2.13.2",
"type": "war",
"jndilookup": false
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": true
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1-tests.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": false
}
}
La clé est le chemin où le rôle a trouvé la bibliothèque log4j.
La valeur est un dictionnaire contenant la version de log4j dans version
, le type de fichier dans type
(war/jar) et la clé jndilookup
qui indique si le fichier org/apache/logging/log4j/core/lookup/JndiLookup.class
est présent dans un jar.
Un JAR sans JndiLookup.class n'est pas vulnérable selon https://www.kb.cert.org/vuls/id/930724.
:warning: Exigences
Ansible >= 4
:zap: Installation
ansible-galaxy install claranet.log4shell
:gear: Variables du rôle
Variable | Valeur par défaut | Description |
---|---|---|
log4shell_scan_path | / | Chemin du système de fichiers à analyser |
:arrows_counterclockwise: Dépendances
N/A
:pencil2: Exemple de Playbook
---
- hosts: all
roles:
- role: claranet.log4shell
log4shell_scan_path: /opt
:closed_lock_with_key: Renforcement
:heart_eyes_cat: Contribuer
:copyright: Licence
Finding Log4Shell CVE-2021-44228 on your system
ansible-galaxy install claranet.log4shell