
# ftrace का उपयोग करके AF_ALG/AEAD अनुरोधों को ब्लॉक करने वाला कर्नेल मॉड्यूल, जो LSM BPF की आवश्यकता के बिना CVE-2026-31431 को कम करता है। Oracle Linux UEK के लिए लॉगिंग और आसान संकलन प्रदान करता है।
cve-2026-31431 को कम करने के लिए उपलब्ध ebpf समाधानों को बूट समय पर lsm=bpf की आवश्यकता होती है,
जो आमतौर पर डिफ़ॉल्ट रूप से सेट नहीं होता है। OracleLinux के लिए यह डिफ़ॉल्ट रूप से सक्षम था
UEKr7u3 और UEKr8u1 में दिसंबर 2025 के बाद।
यह जाँचने के लिए कि क्या आप copyfail को कम करने के लिए ebpf-lsm का उपयोग कर सकते हैं, देखें
/sys/kernel/security/lsm में bpf के लिए।
चूँकि हमारी कुछ मशीनें थोड़ा पुराना कर्नेल चला रही हैं ($reasons के कारण)
मैंने इस सुरक्षा समस्या को कम करने के अन्य तरीकों की तलाश की, या तो AF_ALG/AEAD को ब्लॉक करके
या एक साथ AF_ALG को।
मैंने एक कर्नेल मॉड्यूल के बारे में सोचा जो __sock_create को इंटरसेप्ट करता है और AF_ALG को ब्लॉक करता है या
aead_bind को इंटरसेप्ट करता है और सभी अनुरोधों को ब्लॉक करता है।
विचार यह था कि इसे ftrace के साथ किया जाए।
मॉड्यूल संकलित करने के लिए, निम्नलिखित प्रयास करें:
git clone this_repository
cd this_repository
make
UEK के साथ Oracle Linux के लिए make चलाने से पहले सही पैकेज स्थापित और उपयोग करना सुनिश्चित करें:
. /etc/os-release
releasever=${VERSION/.*}
uek=7 # या 8, जो भी आप उपयोग करते हैं
dnf -y --enablerepo=ol${releasever}_UEKR${uek} install kernel-uek-devel make gcc kernel-headers
# आपको निम्नलिखित में से एक की आवश्यकता हो सकती है:
# oel9/uekr8 के लिए
. /opt/rh/gcc-toolset-14/enable
# oel8/uekr7 के लिए
. /opt/rh/gcc-toolset-11/enable
फिर मॉड्यूल लोड करें:
# AF_ALG को एक साथ ब्लॉक करें
insmod /path/to/af_alg_block.ko
# या केवल AF_ALG/AEAD को ब्लॉक करें
insmod /path/to/af_alg_aead_block.ko
अब AF_ALG या सभी AEAD-बाइंडिंग्स (इस पर निर्भर करता है कि आपने कौन सा मॉड्यूल लोड किया है) के सभी अनुरोध ब्लॉक हो जाने चाहिए, सभी प्रयास लॉग हो जाने चाहिए।
मैं कर्नेल डेवलपर नहीं हूँ। मैंने ftrace दस्तावेज़ीकरण का अध्ययन किया और इस मॉड्यूल को परीक्षण और त्रुटि के माध्यम से बनाया
जब तक कि सभी AF_ALG अनुरोध ब्लॉक नहीं हो गए, बिना अन्य एड्रेस फैमिली को प्रभावित किए।
मैंने इसे कुछ मशीनों पर परीक्षण किया और मेरे लिए यह स्थिर दिखता है। मैं कोई गारंटी नहीं देता कि यह आपके लिए काम करेगा, अन्य हमले के वेक्टर इस मॉड्यूल को बायपास कर सकते हैं, या मॉड्यूल आपकी मशीन को अस्थिर नहीं बनाता है।
हालाँकि, यह मशीनों को अंततः रीबूट किए जाने तक समय भरने के लिए एक त्वरित समाधान है।