
Buildpack fournissant une solution de contournement pour CVE-2021-44228 (exploit RCE Log4j)
Ce projet montre comment créer un buildpack CNCF comme contournement pour CVE-2021-44228, un exploit Log4j qui permet l'exécution de code à distance.
En utilisant ce buildpack, vous pouvez appliquer un contournement pour cet exploit pour toutes les applications Java. Le contournement désactive simplement le formatage des logs via la propriété système JVM log4j2.formatMsgNoLookups avec la valeur true.
En tant que correctif à long terme, vous devriez mettre à jour vos applications avec Log4j 2.15.0+.
N'utilisez pas ce projet pour des charges de production : il est uniquement à des fins éducatives !
Incluez ce buildpack lors de la construction de votre application Java :
pack build myrepo/myapp -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Ce dépôt inclut une application Java simple utilisant Log4j (incluant l'exploit RCE). Construisez cette application avec le buildpack :
pack build myrepo/myapp -p app -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Vous pouvez maintenant exécuter cette application :
docker run --rm -p 8080:8080 myrepo/myapp
...
2021-12-10 18:58:03.234 INFO 77965 --- [ main] f.a.c.Application : Is Log4j2 workaround for CVE-2021-44228 enabled? true
Lorsque vous utilisez kpack pour construire des images conteneur dans votre cluster Kubernetes, vous devez appliquer les étapes suivantes :
ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack à votre ClusterStoreClusterBuilder ou BuilderLorsque vous utilisez VMware Tanzu Build Service, vous pouvez utiliser ces commandes pour ajouter le buildpack à votre ClusterStore :
kp clusterstore add default -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack
Ajoutez ensuite le buildpack à votre builder avec Tanzu Build Service :
kp clusterbuilder patch mybuilder -b tanzu-buildpacks/java -b alexandreroman/cve-2021-44228-workaround-buildpack
Toutes les images conteneur référençant votre builder seront alors reconstruites, incluant le contournement pour l'exploit RCE Log4j.
Profitez-en !
Les contributions sont toujours les bienvenues !
N'hésitez pas à ouvrir des issues et à envoyer des PR.
Copyright © 2021 VMware, Inc. ou ses filiales.
Ce projet est sous licence Apache Software License version 2.0.