
CVE-2024-23113 Linux Kernel में पाया गया एक भेद्यता है, जो एक मनमाना कोड निष्पादन भेद्यता है, जो bpf (Berkeley Packet Filter) सबसिस्टम को प्रभावित करती है। विशेष रूप से, यह भेद्यता bpf प्रोग्राम के bpf_prog प्रकार की वस्तुओं को प्रभावित करती है, और यह हमलावर को दुर्भावनापूर्ण BPF प्रोग्राम बनाकर कर्नेल स्पेस में दुर्भावनापूर्ण कोड निष्पादित करने की अनुमति दे सकती है।
CVE-2024-23113 Linux Kernel में पाया गया एक आर्बिट्ररी कोड एक्ज़ीक्यूशन (Arbitrary Code Execution) वल्नरेबिलिटी है, जो bpf (Berkeley Packet Filter) सबसिस्टम को प्रभावित करती है। विशेष रूप से, यह वल्नरेबिलिटी bpf प्रोग्राम के bpf_prog प्रकार के ऑब्जेक्ट्स को प्रभावित करती है, और यह अटैकर को दुर्भावनापूर्ण BPF प्रोग्राम बनाकर कर्नेल स्पेस में मैलिशियस कोड निष्पादित करने की अनुमति दे सकती है।
BPF (Berkeley Packet Filter) Linux कर्नेल में पैकेट कैप्चर और नेटवर्क ट्रैफिक विश्लेषण के लिए उपयोग किया जाने वाला एक फ्रेमवर्क है। यह यूज़र प्रोग्राम्स को BPF प्रोग्राम लोड करके सीधे कर्नेल के साथ इंटरैक्ट करने की अनुमति देता है; ये प्रोग्राम आमतौर पर नेटवर्किंग, ट्रेसिंग, परफॉर्मेंस एनालिसिस आदि क्षेत्रों में उपयोग किए जाते हैं।
यह वल्नरेबिलिटी मूल रूप से BPF Type Format (BTF) में एक डेटा स्ट्रक्चर प्रोसेसिंग के दौरान होती है। अटैकर दुर्भावनापूर्ण BTF डेटा स्ट्रक्चर पास करके कर्नेल कोड में मौजूद पॉइंटर ऑफसेट समस्या को ट्रिगर कर सकता है, जिससे कर्नेल मेमोरी लीक या आर्बिट्ररी कोड एक्ज़ीक्यूशन हो सकता है।
सावधानीपूर्वक तैयार किए गए इनपुट के माध्यम से, अटैकर प्रोग्राम एक्ज़ीक्यूशन फ्लो को नियंत्रित कर सकता है, और यहां तक कि कर्नेल में कुछ सुरक्षा तंत्रों को बायपास करके आर्बिट्ररी कोड निष्पादित कर सकता है, जिससे root विशेषाधिकार प्राप्त हो सकते हैं।
अटैक की शर्तें: अटैकर को सिस्टम में दुर्भावनापूर्ण BPF प्रोग्राम इंजेक्ट करने या मौजूदा BPF प्रोग्राम को संशोधित करने में सक्षम होना चाहिए। आमतौर पर, इसके लिए अटैकर के पास कुछ विशेषाधिकार होने चाहिए, जैसे कस्टम BPF प्रोग्राम लोड करने की क्षमता, या सिस्टम के नेटवर्क स्टैक को प्रभावित करने की क्षमता।
शोषण का तरीका: अटैकर दुर्भावनापूर्ण BPF प्रोग्राम बनाकर उसे सिस्टम में लोड करता है, जिससे BPF सबसिस्टम की वल्नरेबिलिटी ट्रिगर होती है और कर्नेल पर नियंत्रण प्राप्त होता है। शोषण के दौरान, अटैकर कर्नेल में पॉइंटर ऑपरेशन त्रुटियों, मेमोरी लीक आदि को ट्रिगर कर सकता है, जिससे अंततः आर्बिट्ररी कोड निष्पादित होता है।
लक्ष्य: एक बार वल्नरेबिलिटी का सफलतापूर्वक शोषण हो जाने पर, अटैकर आर्बिट्ररी कोड निष्पादित करने की क्षमता प्राप्त कर सकता है, जिसमें root यूज़र में एस्केलेशन, आर्बिट्ररी सिस्टम कमांड निष्पादित करना आदि शामिल है।
कर्नेल अपडेट करें: सबसे सीधा बचाव उपाय उस कर्नेल संस्करण को अपडेट करना है जिसमें यह वल्नरेबिलिटी ठीक की गई है। Linux कर्नेल डेवलपमेंट टीम ने CVE-2024-23113 को ठीक करने के लिए पैच जारी किए हैं।
BPF प्रोग्राम लोडिंग को प्रतिबंधित करें: कुछ Linux डिस्ट्रीब्यूशन उपयोगकर्ताओं को यह नियंत्रित करने की अनुमति देते हैं कि कौन से प्रोग्राम BPF प्रोग्राम लोड कर सकते हैं। अनावश्यक BPF प्रोग्राम लोडिंग अनुमतियों को कम करने से अटैक सतह को कम करने में मदद मिल सकती है।
कर्नेल सुरक्षा सेटिंग्स को बढ़ाएं: kernel hardening विकल्पों को सक्षम करके, जैसे CONFIG_BPF_SYSCALL कॉन्फ़िगरेशन, BPF सबसिस्टम की सुरक्षा को और बढ़ाया जा सकता है।
SELinux/AppArmor जैसे सुरक्षा मॉड्यूल का उपयोग करें: सिस्टम के एक्सेस कंट्रोल को मजबूत करें, और उन प्रोग्रामों और प्रोसेसों की अनुमतियों को सीमित करें जिनका अटैकर शोषण कर सकता है।
CVE-2024-23113 की गंभीरता बहुत अधिक है, और यह रिमोट कोड एक्ज़ीक्यूशन (RCE) का कारण बन सकती है, जिससे सिस्टम पर पूर्ण नियंत्रण प्राप्त हो सकता है। चूंकि यह वल्नरेबिलिटी कर्नेल में मौजूद है, शोषण के दौरान यूज़र स्पेस की सुरक्षा को पूरी तरह से बायपास किया जा सकता है।
प्रभावित कर्नेल संस्करण: यह वल्नरेबिलिटी जिन विशिष्ट संस्करणों को प्रभावित करती है, वे कर्नेल के अपडेट इतिहास पर निर्भर करते हैं; आमतौर पर नए कर्नेल संस्करणों में पुराने पैच शामिल नहीं हो सकते हैं। इसलिए, उपयोगकर्ताओं को अपने वर्तमान कर्नेल संस्करण की जांच करनी चाहिए और समय पर फिक्स्ड संस्करण में अपडेट करना चाहिए।
CVE-2024-23113 Linux कर्नेल को प्रभावित करने वाली एक उच्च जोखिम वाली वल्नरेबिलिटी है, जिसमें दुर्भावनापूर्ण रूप से तैयार किए गए BPF प्रोग्राम का उपयोग करके आर्बिट्ररी कोड एक्ज़ीक्यूशन हो सकता है। इस वल्नरेबिलिटी को ठीक करने का सबसे अच्छा तरीका कर्नेल को समय पर अपडेट करना और सिस्टम के एक्सपोज़र जोखिम को कम करने के लिए उचित सुरक्षा उपाय अपनाना है।