
Buildpack जो CVE-2021-44228 (Log4j RCE exploit) के लिए वर्कअराउंड प्रदान करता है
यह प्रोजेक्ट दिखाता है कि कैसे CNCF buildpack को CVE-2021-44228 के लिए वर्कअराउंड के रूप में बनाया जाए, जो एक Log4j शोषण है जिसके परिणामस्वरूप रिमोट कोड निष्पादन होता है।
इस बिल्डपैक का उपयोग करके, आप हर Java ऐप के लिए इस शोषण के लिए वर्कअराउंड लागू कर सकते हैं। वर्कअराउंड बस JVM सिस्टम प्रॉपर्टी log4j2.formatMsgNoLookups को true पर सेट करके लॉग फ़ॉर्मेटिंग को अक्षम कर देगा।
दीर्घकालिक समाधान के रूप में, आपको अपने ऐप्स को Log4j 2.15.0+ के साथ अपडेट करना चाहिए।
कृपया इस प्रोजेक्ट का उपयोग प्रोडक्शन वर्कलोड के लिए न करें: यह केवल शैक्षिक उद्देश्यों के लिए है!
अपना Java ऐप बनाते समय इस बिल्डपैक को शामिल करें:
pack build myrepo/myapp -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack -b paketo-buildpacks/java
यह रिपॉजिटरी Log4j (RCE शोषण सहित) का लाभ उठाने वाला एक सरल Java ऐप शामिल करता है। बिल्डपैक के साथ इस ऐप को बनाएं:
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
जब अपने Kubernetes क्लस्टर के अंदर कंटेनर इमेज बनाने के लिए kpack का उपयोग कर रहे हों, तो आपको निम्नलिखित चरण लागू करने होंगे:
ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack को अपने ClusterStore में जोड़ेंClusterBuilder या Builder में करेंजब VMware Tanzu Build Service का उपयोग कर रहे हों, तो आप बिल्डपैक को अपने ClusterStore में जोड़ने के लिए इन कमांड का उपयोग कर सकते हैं:
kp clusterstore add default -b ghcr.io/alexandreroman/cve-2021-44228-workaround-buildpack
फिर Tanzu Build Service के साथ अपने बिल्डर में बिल्डपैक जोड़ें:
kp clusterbuilder patch mybuilder -b tanzu-buildpacks/java -b alexandreroman/cve-2021-44228-workaround-buildpack
आपके बिल्डर को संदर्भित करने वाली सभी कंटेनर इमेज को फिर से बनाया जाएगा, जिसमें Log4j RCE शोषण के लिए वर्कअराउंड शामिल है।
आनंद लें!
योगदान का हमेशा स्वागत है!
बेझिझक issues खोलें और PR भेजें।
कॉपीराइट © 2021 VMware, Inc. या इसके सहयोगी।
यह प्रोजेक्ट Apache Software License version 2.0 के तहत लाइसेंस प्राप्त है।