
Buildpack, предоставляющий обходной путь для CVE-2021-44228 (Log4j RCE exploit)
Этот проект показывает, как создать buildpack CNCF в качестве обходного решения для CVE-2021-44228, эксплойта Log4j, приводящего к удаленному выполнению кода.
Используя этот buildpack, вы можете применить обходной способ для этого эксплойта для всех Java-приложений. Обходной способ просто отключает форматирование логов через системное свойство JVM log4j2.formatMsgNoLookups со значением true.
В качестве долгосрочного исправления вам следует обновить ваши приложения до Log4j 2.15.0+.
Пожалуйста, не используйте этот проект в производственных нагрузках: это только для образовательных целей!
Включите этот buildpack при сборке вашего Java-приложения:
pack build myrepo/myapp -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Этот репозиторий включает простое Java-приложение, использующее Log4j (включая эксплойт RCE). Соберите это приложение с помощью buildpack:
pack build myrepo/myapp -p app -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
Теперь вы можете запустить это приложение:
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
При использовании kpack для создания образов контейнеров внутри вашего кластера Kubernetes, вам нужно выполнить следующие шаги:
ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack в ваш ClusterStoreClusterBuilder или BuilderПри использовании VMware Tanzu Build Service вы можете использовать эти команды для добавления buildpack в ваш ClusterStore:
kp clusterstore add default -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack
Затем добавьте buildpack в ваш builder с помощью Tanzu Build Service:
kp clusterbuilder patch mybuilder -b tanzu-buildpacks/java -b alexandreroman/cve-2021-44228-workaround-buildpack
Все образы контейнеров, ссылающиеся на ваш builder, будут затем перестроены, включая обходной способ для эксплойта Log4j RCE.
Наслаждайтесь!
Вклад всегда приветствуется!
Не стесняйтесь открывать issues и отправлять PR.
Copyright © 2021 VMware, Inc. или ее аффилированные лица.
Этот проект лицензирован в соответствии с лицензией Apache Software License версии 2.0.