
Buildpack que proporciona una solución alternativa para CVE-2021-44228 (Log4j RCE exploit)
Este proyecto muestra cómo crear un buildpack CNCF como solución alternativa para CVE-2021-44228, un exploit de Log4j que resulta en ejecución remota de código.
Al usar este buildpack, puedes aplicar una solución alternativa para este exploit en todas las aplicaciones Java. La solución alternativa simplemente deshabilita el formato de registros mediante la propiedad del sistema JVM log4j2.formatMsgNoLookups con el valor establecido en true.
Como solución a largo plazo, deberías actualizar tus aplicaciones con Log4j 2.15.0+.
Por favor, no uses este proyecto en cargas de trabajo de producción: ¡es solo con fines educativos!
Incluye este buildpack al construir tu aplicación Java:
pack build myrepo/myapp -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Este repositorio incluye una aplicación Java simple que utiliza Log4j (incluyendo el exploit RCE). Construye esta aplicación con el buildpack:
pack build myrepo/myapp -p app -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Ahora puedes ejecutar esta aplicación:
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
Cuando uses kpack para construir imágenes de contenedores dentro de tu clúster de Kubernetes, debes aplicar los siguientes pasos:
ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack a tu ClusterStoreClusterBuilder o BuilderCuando uses VMware Tanzu Build Service, puedes usar estos comandos para agregar el buildpack a tu ClusterStore:
kp clusterstore add default -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack
Luego agrega el buildpack a tu builder con Tanzu Build Service:
kp clusterbuilder patch mybuilder -b tanzu-buildpacks/java -b alexandreroman/cve-2021-44228-workaround-buildpack
Todas las imágenes de contenedores que hagan referencia a tu builder serán reconstruidas, incluyendo la solución alternativa para el exploit RCE de Log4j.
¡Disfrútalo!
¡Las contribuciones siempre son bienvenidas!
No dudes en abrir issues y enviar PR.
Copyright © 2021 VMware, Inc. o sus afiliados.
Este proyecto está licenciado bajo la Licencia de Software Apache versión 2.0.