LFI2RCE Via temp file uploads

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

इस तकनीक का पूरा विवरण देखें https://gynvael.coldwind.pl/download.php?f=PHP_LFI_rfc1867_temporary_files.pdf

PHP फ़ाइल अपलोड

जब एक PHP इंजन एक POST अनुरोध प्राप्त करता है जिसमें RFC 1867 के अनुसार स्वरूपित फ़ाइलें होती हैं, तो यह अपलोड किए गए डेटा को स्टोर करने के लिए अस्थायी फ़ाइलें उत्पन्न करता है। ये फ़ाइलें PHP स्क्रिप्ट में फ़ाइल अपलोड हैंडलिंग के लिए महत्वपूर्ण होती हैं। यदि स्क्रिप्ट के निष्पादन के बाद स्थायी स्टोरेज की आवश्यकता होती है, तो इन अस्थायी फ़ाइलों को एक वांछित स्थान पर स्थानांतरित करने के लिए move_uploaded_file फ़ंक्शन का उपयोग किया जाना चाहिए। पोस्ट-निष्पादन, PHP स्वचालित रूप से किसी भी शेष अस्थायी फ़ाइल को हटा देता है।

सुरक्षा चेतावनी: हमलावर, अस्थायी फ़ाइलों के स्थान के बारे में जागरूक होकर लोकल फ़ाइल समावेशन वंशावली का शिकार हो सकते हैं और अपलोड के दौरान फ़ाइल तक पहुंचकर कोड निष्पादित कर सकते हैं।

अनधिकृत पहुंच के लिए चुनौती अस्थायी फ़ाइल के नाम का पूर्वानुमान लगाने में है, जो इच्छित रूप से यादृच्छिक है।

विंडोज सिस्टम पर शोषण

विंडोज पर, PHP GetTempFileName फ़ंक्शन का उपयोग करके अस्थायी फ़ाइलों के नाम उत्पन्न करता है, जिससे एक पैटर्न जैसा होता है <पथ>\<प्री><यूयूयूयू>.TMP। विशेष रूप से:

  • डिफ़ॉल्ट पथ सामान्यत: C:\Windows\Temp होता है।

  • प्रीफ़िक्स आम तौर पर "php" होता है।

  • <यूयूयूयू> एक अद्वितीय हेक्साडेसिमल मान को प्रस्तुत करता है। महत्वपूर्ण रूप से, फ़ंक्शन की सीमा के कारण, केवल निचले 16 बिट का उपयोग होता है, जिससे निरंतर पथ और प्रीफ़िक्स के साथ 65,535 अद्वितीय नामों की अधिकतम संभावना होती है, जिससे ब्रूट फ़ोर्स संभावित होता है।

इसके अतिरिक्त, विंडोज सिस्टम पर शोषण प्रक्रिया सरल हो जाती है। FindFirstFile फ़ंक्शन में एक विशेषता अस्थायी फ़ाइल समावेशन (LFI) पथ में वाइल्डकार्ड का उपयोग करने की अनुमति देती है। इससे अस्थायी फ़ाइल को ढूंढने के लिए निम्नलिखित जैसा एक समावेश पथ बनाया जा सकता है:

http://site/vuln.php?inc=c:\windows\temp\php<<

गनु/लिनक्स सिस्टम पर शोध

गनु/लिनक्स सिस्टम के लिए, अस्थायी फ़ाइलों के नामकरण में यादृच्छिकता मजबूत है, जिससे नाम सुनिश्चित नहीं होते और न किसी ब्रूट फ़ोर्स हमलों के लिए संवेदनशील होते हैं। अधिक विवरण संदर्भित दस्तावेज़ में उपलब्ध हैं।

Last updated