
CVE-2024-21762 Fortinet के FortiOS और FortiProxy उत्पादों में एक गंभीर भेद्यता है, जो उनके SSL VPN घटक में मौजूद है।
CVE-2024-21762 Fortinet के FortiOS और FortiProxy उत्पादों में SSL VPN घटक में मौजूद एक गंभीर भेद्यता है। यह भेद्यता बिना प्रमाणीकरण के दूरस्थ हमलावरों को विशेष रूप से तैयार HTTP अनुरोधों के माध्यम से लक्षित सिस्टम पर मनमाना कोड या कमांड निष्पादित करने की अनुमति देती है, जिससे सिस्टम का पूर्ण नियंत्रण हो सकता है।
खतरा: इस भेद्यता की उपस्थिति के कारण, हमलावर बिना किसी प्रमाणीकरण की आवश्यकता के दूरस्थ रूप से मनमाना कोड निष्पादित कर सकते हैं, और इस प्रकार प्रभावित डिवाइस का पूर्ण नियंत्रण प्राप्त कर सकते हैं। इससे संवेदनशील डेटा का रिसाव, सेवा में व्यवधान, और यहां तक कि आगे के नेटवर्क हमले भी हो सकते हैं।
हमले की विधि: हमलावर इस भेद्यता का शोषण करने का मुख्य तरीका विशेष रूप से तैयार HTTP अनुरोध भेजना है, जो SSL VPN घटक में आउट-ऑफ-बाउंड राइट भेद्यता को ट्रिगर करता है। विशेष रूप से, हमलावर सावधानीपूर्वक निर्मित अनुरोधों के माध्यम से मेमोरी में डेटा को नियंत्रित कर सकते हैं, अंततः दूरस्थ कोड निष्पादन प्राप्त कर सकते हैं।
सुरक्षा उपाय: इस भेद्यता के हमले से बचने के लिए, FortiOS और FortiProxy को तुरंत आधिकारिक रूप से प्रदान किए गए नवीनतम सुरक्षा संस्करण में अपग्रेड करने की अनुशंसा की जाती है। इसके अलावा, SSL VPN सुविधा को अक्षम करना भी एक अस्थायी सुरक्षा उपाय है।
CVE-2024-21762 Fortinet FortiOS SSL VPN में एक उच्च-जोखिम वाली भेद्यता है, जो एक अनधिकृत आउट-ऑफ-बाउंड राइट भेद्यता है। इस भेद्यता का उपयोग दूरस्थ कोड निष्पादन (RCE) के लिए किया जा सकता है, जो उद्यम नेटवर्क सुरक्षा के लिए खतरा पैदा करता है।
FortiGate ने फरवरी 2024 में कई मध्यम और उच्च जोखिम वाली भेद्यताओं को ठीक करने के लिए अपडेट जारी किया। इनमें से, यह लेख CVE-2024-21762 के शोषण प्रक्रिया का विश्लेषण करता है, जिसमें यह भी शामिल है कि इस भेद्यता का उपयोग करके दूरस्थ कोड निष्पादन कैसे प्राप्त किया जाए।
निम्नलिखित PoC कोड assetnote द्वारा प्रदान किया गया है, जो इस भेद्यता का शोषण करने के मूल चरणों को दर्शाता है।
# सरलीकृत शोषण कोड स्निपेट
ssl_do_handshake_ptr = b"%60%ce%42%00%00%00%00%00" # SSL हैंडशेक पॉइंटर
getcwd_ptr = b"%70%62%2c%04%00%00%00%00" # getcwd फ़ंक्शन पॉइंटर
pivot_1 = b"%52%f7%fd%00%00%00%00%00" # पिवट निर्देश सेट 1
pivot_2 = b"%ac%c9%ab%02%00%00%00%00" # पिवट निर्देश सेट 2
rop = b"" # ROP चेन
rop += b"%c6%e2%46%00%00%00%00%00"
rop += b"%19%6f%4d%01%00%00%00%00"
# ... शेष ROP चेन सामग्री छोड़ दी गई है
# नकली अनुरोध डेटा
body = (b"B"*1808 + b"=" + b"B"*1024 + b"&") * 20
data = b"POST /remote/hostcheck_validate HTTP/1.1\r\n"
data += b"Host: 192.168.1.229\r\n"
data += f"Content-Length: {len(body)}\r\n".encode("utf-8")
data += b"\r\n" + body
# नकली अनुरोध भेजें
ssock1 = make_sock(TARGET, PORT)
ssock1.sendall(data)
FortiOS 7.4.2 और 7.4.3 की बाइनरी फ़ाइलों की तुलना करके, मरम्मत किया गया कोड फ़ंक्शन sub_18F4980 में स्थित है। मरम्मत मुख्य रूप से निम्नलिखित दो बिंदुओं पर केंद्रित है:
chunk प्रारूप को पार्स करते समय, chunk लंबाई का सत्यापन जोड़ा गया। यदि डिकोड की गई लंबाई 16 से अधिक है, तो इसे अमान्य माना जाता है।chunk trailer की लेखन तर्क को ठीक किया गया, जिससे \r\n का आउट-ऑफ-बाउंड लेखन रोका जा सके।आउट-ऑफ-बाउंड राइट ट्रिगर करना:
chunk को पार्स करते समय, यदि लंबाई फ़ील्ड डिकोड होने के बाद 0 है, तो chunk trailer पढ़ना ट्रिगर होता है।chunk trailer लिखते समय, लंबाई फ़ील्ड के अनुसार स्टैक में \r\n लिखा जाता है।0 हैं, तो रिटर्न एड्रेस के पास \r\n का आउट-ऑफ-बाउंड लेखन ट्रिगर होगा।स्टैक ओवरफ्लो और हाईजैकिंग:
chunk डेटा के माध्यम से, स्टैक में रिटर्न एड्रेस को ओवरराइट किया जा सकता है, जिससे प्रोग्राम नियंत्रण प्रवाह को हाईजैक करने का लक्ष्य प्राप्त होता है।हालांकि ROP चेन के माध्यम से हाईजैकिंग संभव है, FortiGate मुख्य प्रोग्राम में /bin/sh में सीधे कमांड निष्पादित करने की क्षमता नहीं है, इसलिए अन्य उपयोगी फ़ंक्शन खोजने की आवश्यकता है। उदाहरण के लिए, नकली संरचना पॉइंटर बनाकर, आगे के हमले के लिए SSL_do_handshake का उपयोग किया जा सकता है।
यहां तक कि डिफ़ॉल्ट कॉन्फ़िगरेशन (वेब मोड बंद) में भी, इस भेद्यता का शोषण किया जा सकता है।

CVE-2024-21762 एक उच्च जटिलता वाली भेद्यता है, जिसकी शोषण प्रक्रिया के लिए FortiOS के कोड तर्क और मेमोरी लेआउट की गहरी समझ की आवश्यकता होती है। पारंपरिक CTF समस्याओं की तुलना में, वास्तविक भेद्यता के शोषण के लिए अधिक जटिल संदर्भ और संरचना विश्लेषण की आवश्यकता होती है।
लेखक ने अधिक विस्तृत चीनी विश्लेषण लेख प्रदान किया है, जिसे देखा जा सकता है: मूल पता