
CVE-2025-6218 WinRAR में एक डायरेक्टरी ट्रैवर्सल भेद्यता है, जो एक हमलावर को फ़ाइलों को इच्छित निष्कर्षण निर्देशिका के बाहर रखने की अनुमति देती है, जब कोई उपयोगकर्ता विशेष रूप से तैयार किए गए...
CVE-2025-6218, WinRAR में एक डायरेक्टरी ट्रैवर्सल भेद्यता है, जो किसी उपयोगकर्ता द्वारा विशेष रूप से तैयार की गई .rar आर्काइव को निकालने पर हमलावर को फ़ाइलों को इच्छित निष्कर्षण निर्देशिका के बाहर रखने की अनुमति देती है। इस दोष का शोषण करके, एक हमलावर संवेदनशील स्थानों पर दुर्भावनापूर्ण फ़ाइलें डाल सकता है, जिससे संभावित रूप से रिमोट कोड निष्पादन (RCE) हो सकता है यदि फ़ाइल को सिस्टम या उपयोगकर्ता द्वारा निष्पादित किया जाता है।
---
WinRAR.exe --version के माध्यम से)।डायरेक्टरी ट्रैवर्सल भेद्यताएं हमलावरों को अनपेक्षित स्थानों पर फ़ाइलें लिखने के लिए फ़ाइल पथों में हेरफेर करने की अनुमति देती हैं। WinRAR के संदर्भ में, इसका अर्थ है कि C:\Temp में निकाले जाने के लिए बनाई गई फ़ाइल को इसके बजाय विंडोज़ स्टार्टअप फ़ोल्डर (C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup) जैसी संवेदनशील निर्देशिका में रखा जा सकता है। यदि ऐसे स्थान पर कोई दुर्भावनापूर्ण निष्पादन योग्य फ़ाइल या स्क्रिप्ट रखी जाती है, तो यह स्वचालित रूप से चल सकती है, जिससे हमलावर को पीड़ित के सिस्टम पर नियंत्रण मिल जाता है।
एक हमलावर यह कर सकता है:
.bat फ़ाइल) डाल सकता है।C:\Windows\System32 जैसी निर्देशिकाओं में महत्वपूर्ण सिस्टम फ़ाइलों को अधिलेखित कर सकता है।यह भेद्यता WinRAR की .rar आर्काइव के भीतर संग्रहीत फ़ाइल पथों को ठीक से मान्य और सैनिटाइज़ करने में विफलता के कारण उत्पन्न होती है। फ़ाइलें निकालते समय, WinRAR आर्काइव में फ़ाइल पथ मेटाडेटा पर भरोसा करता है, बिना ..\ या ../../ जैसे पथ ट्रैवर्सल अनुक्रमों की पर्याप्त जांच किए। यह एक हमलावर को ऐसा आर्काइव तैयार करने की अनुमति देता है जिसमें फ़ाइल का पथ इच्छित निष्कर्षण निर्देशिका के बाहर इंगित करता है।
..\..\..\ अनुक्रम निष्कर्षण प्रक्रिया को कैसे धोखा देते हैं..\ अनुक्रम सिस्टम को एक निर्देशिका स्तर ऊपर जाने का निर्देश देता है। कई ..\ अनुक्रमों को जोड़कर (जैसे, ..\..\..\..\..), एक हमलावर निष्कर्षण निर्देशिका (जैसे, C:\Temp\Test) से ड्राइव के रूट (C:\) और फिर किसी भी वांछित स्थान, जैसे C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup तक नेविगेट कर सकता है।C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup में रखी गई फ़ाइलें उपयोगकर्ता के लॉग इन करने पर स्वचालित रूप से निष्पादित होती हैं। यहां एक दुर्भावनापूर्ण .bat या .exe फ़ाइल मनमाने कमांड चला सकती है।C:\Windows\System32 में फ़ाइलों को अधिलेखित या जोड़ना सिस्टम अखंडता से समझौता कर सकता है या विशेषाधिकार वृद्धि सक्षम कर सकता है।Intended Extraction (Safe):
- User extracts archive to: C:\Temp\Test
- Archive contains file: payload.bat
- Expected result: C:\Temp\Test\payload.bat
Actual Extraction (Exploited):
- User extracts archive to: C:\Temp\Test
- Archive contains file with path: ..\..\..\..\..\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
- Actual result: C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
यह खंड CVE-2025-6218 भेद्यता को बिना नेटवर्क कनेक्टिविटी वाले वर्चुअल मशीन (VM) का उपयोग करके एक सुरक्षित, पृथक प्रयोगशाला वातावरण में मैन्युअल रूप से पुनरुत्पादित करने के लिए चरण-दर-चरण निर्देश प्रदान करता है। लक्ष्य एक .rar आर्काइव बनाना है जो विंडोज़ स्टार्टअप फ़ोल्डर में एक हानिरहित .bat फ़ाइल रखता है, जो उपयोगकर्ता के लॉग इन करने पर कैलकुलेटर (calc.exe) लॉन्च करती है।
एक परीक्षण फ़ोल्डर तैयार करें:
exploit_test नामक एक फ़ोल्डर बनाएं (जैसे, C:\exploit_test)।एक सरल पेलोड बनाएं:
@echo off
start calc.exe
C:\exploit_test में payload.bat के रूप में सहेजें।पथ ट्रैवर्सल के लिए फ़ोल्डर संरचना बनाएं:
C:\exploit_test के अंदर, वांछित पथ को प्रतिबिंबित करने वाली एक फ़ोल्डर संरचना बनाएं:
C:\exploit_test\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
<username> को VM पर लक्षित उपयोगकर्ता के नाम से बदलें (जैसे, absholi7ly)।payload.bat को फ़ोल्डर में ले जाएं:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat देखें। यदि यह मौजूद है, तो डायरेक्टरी ट्रैवर्सल शोषण सफल हुआ।payload.bat को Notepad में खोलें:
@echo off
start calc.exe
payload.bat पर राइट-क्लिक करें और गुण चुनें।C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
C:\payload.bat या C:\Users\username\AppData\Roaming\... जैसी उपफ़ोल्डर), तो शोषण इच्छित रूप से काम नहीं किया।uasername के रूप में वापस लॉग इन करें।payload.bat पर मैन्युअल रूप से डबल-क्लिक करें कि यह काम करता है।StartupC:\exploit_test\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
WinRAR का उपयोग करके दुर्भावनापूर्ण RAR आर्काइव तैयार करें:
C:\exploit_test पर नेविगेट करें।Users फ़ोल्डर का चयन करें (जिसमें payload.bat का पूर्ण पथ है)।exploit.rar सेट करें (जैसे, C:\exploit_test\exploit.rar)।exploit.rar खोलकर आर्काइव की सामग्री सत्यापित करें। आपको देखना चाहिए:
Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
आर्काइव को VM में स्थानांतरित करें:
exploit.rar को VM द्वारा सुलभ साझा फ़ोल्डर या USB ड्राइव में कॉपी करें।exploit.rar को C:\ ड्राइव के रूट पर ले जाएं:
C:\exploit.rar
VM पर आर्काइव निकालें:
C:\ पर नेविगेट करें।exploit.rar पर राइट-क्लिक करें और यहां निकालें चुनें।payload.bat को यहां निकालने का प्रयास करना चाहिए:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\payload.bat
शोषण को सत्यापित करें:
C:\Users\username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
payload.bat इस फ़ोल्डर में मौजूद है।पेलोड निष्पादन का परीक्षण करें:
username के रूप में वापस लॉग इन करें।calc.exe) स्वचालित रूप से लॉन्च होना चाहिए।payload.bat पर डबल-क्लिक करें कि यह कैलकुलेटर खोलता है।