claranet.log4shell
Rola Ansible - log4shell
:star: Daj nam gwiazdkę na GitHubie — bardzo nas motywuje!
Znajdź Log4Shell CVE-2021-44228 w swoim systemie
Ta rola próbuje znaleźć pliki JAR i WAR w systemie plików oraz w otwartych plikach (lsof).
:warning: Twój system może działać wolniej podczas skanowania z powodu polecenia find
na /
oraz procesu dekompresji w celu przeszukania plików JAR/WAR.
Ta rola popularyzuje zmienną log4shell_analyze_versions
ze słownikiem w następującym formacie:
{
"/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
}
}
Kluczem jest ścieżka, gdzie rola znalazła bibliotekę log4j.
Wartość to słownik zawierający wersję log4j w version
, typ pliku w type
(war/jar) oraz klucz jndilookup
, który informuje, czy plik org/apache/logging/log4j/core/lookup/JndiLookup.class
jest obecny w jarze.
JAR bez JndiLookup.class nie jest podatny według https://www.kb.cert.org/vuls/id/930724.
:warning: Wymagania
Ansible >= 4
:zap: Instalacja
ansible-galaxy install claranet.log4shell
:gear: Zmienne roli
Zmienna | Wartość domyślna | Opis |
---|---|---|
log4shell_scan_path | / | Ścieżka do skanowania w systemie plików |
:arrows_counterclockwise: Zależności
Brak
:pencil2: Przykład Playbooka
---
- hosts: all
roles:
- role: claranet.log4shell
log4shell_scan_path: /opt
:closed_lock_with_key: Zabezpieczenia
:heart_eyes_cat: Wkład w projekt
:copyright: Licencja
Finding Log4Shell CVE-2021-44228 on your system
ansible-galaxy install claranet.log4shell