Toutes les tentatives ici pour aborder les vulnérabilités dans log4j sont insuffisantes. Vous ne pouvez pas vous fier à la commande locate
car elle ne recherche que dans un ensemble de chemins configurés (/etc/updatedb.conf
sur Debian).
Les logiciels peuvent s'installer dans des emplacements non configurés dans updatedb.conf
et être complètement manqués par la tâche cron qui met à jour la base de données locate.
De plus, on découvre que des fournisseurs de logiciels (comme Elastic) ont reconditionné le fichier JndiLookup.class vulnérable (par ex : elasticsearch-sql-cli-7.16.1.jar
) dans des endroits qui n'étaient pas connus auparavant, laissant ainsi les solutions incomplètes qui sont basées sur des empreintes de fichiers, des noms ou des chemins connus.
@shodanshok est sur la bonne voie ici, mais au lieu de rechercher explicitement log4j, il faut examiner tous les '.jar' sur le système.
Ceci est plus complet, nécessite le package zip. et une extension de la réponse de shodanshok. Cela montrera simplement les emplacements où le code JndiLookup.class
est trouvé. Une autre ligne pourrait être ajoutée pour supprimer ces vulnérabilités, mais je préfère laisser cela à la discrétion de l'administrateur. Le lien Elastic ci-dessus montre comment :
for jar in $(find / -name '*.jar'); do
unzip -l "$jar" | grep 'JndiLookup.class' &>/dev/null && echo "Vulnérabilité trouvée dans $jar"
done
Exemple :
# for jar in $(find / -name '*.jar'); do
> unzip -l "$jar" | grep 'JndiLookup.class' &>/dev/null && echo "Vulnérabilité trouvée dans $jar"
> done
Vulnérabilité trouvée dans /usr/lib/unifi/lib/log4j-core-2.13.3.jar
Vulnérabilité trouvée dans /home/minecraft/.m2/repository/org/spigotmc/minecraft-server/1.15.2-SNAPSHOT/minecraft-server-1.15.2-SNAPSHOT.jar
Vulnérabilité trouvée dans /home/minecraft/.m2/repository/org/spigotmc/minecraft-server/1.15.1-SNAPSHOT/minecraft-server-1.15.1-SNAPSHOT.jar
...
Soyez méfiant lorsque vous exécutez cela sur un système avec des systèmes de fichiers réseau montés car les performances peuvent être affectées. Dans ces cas, vous devez exécuter les commandes sur le serveur de fichiers lui-même.
8 votes
Notez que ceci est une bibliothèque Java, donc si vous n'exécutez aucune application Java (et par extension, si vous n'avez pas Java installé), vous êtes en sécurité.
15 votes
Pas vrai - les applications peuvent venir avec leur propre JRE, vous n'êtes pas obligé d'avoir installé Java sur votre système pour exécuter des applications Java.
0 votes
Tout d'abord ... vous devez être sur une version LTS actuelle d'Ubuntu. 18.x en 2021 (maintenant 2023) n'est tout simplement pas une bonne idée :)