hacktricks/pentesting-web/proxy-waf-protections-bypass.md

8.5 KiB

प्रॉक्सी / WAF सुरक्षा बायपास

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

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

Nginx ACL नियमों को बायपास करना

Nginx प्रतिबंध उदाहरण:

location = /admin {
deny all;
}

location = /admin/ {
deny all;
}

NodeJS

  • Nginx \xa0 वर्ण को पथनाम का हिस्सा मानता है, इसलिए /admin URI के लिए ACL नियम सक्रिय नहीं होगा। नतीजतन, Nginx HTTP संदेश को बैकएंड को अग्रेषित करेगा;
  • जब Node.js सर्वर को /admin\x0a URI प्राप्त होता है, तो \xa0 वर्ण हटा दिया जाएगा, जिससे /admin एंडपॉइंट की सफल प्राप्ति होगी।
Nginx संस्करण Node.js बायपास वर्ण
1.22.0 \xA0
1.21.6 \xA0
1.20.2 \xA0, \x09, \x0C
1.18.0 \xA0, \x09, \x0C
1.16.1 \xA0, \x09, \x0C

Flask

Flask URL पथ से \x85, \xA0, \x1F, \x1E, \x1D, \x1C, \x0C, \x0B, और \x09 वर्णों को हटा देता है, लेकिन NGINX नहीं करता।

Nginx संस्करण Flask बायपास वर्ण
1.22.0 \x85, \xA0
1.21.6 \x85, \xA0
1.20.2 \x85, \xA0, \x1F, \x1E, \x1D, \x1C, \x0C, \x0B
1.18.0 \x85, \xA0, \x1F, \x1E, \x1D, \x1C, \x0C, \x0B
1.16.1 \x85, \xA0, \x1F, \x1E, \x1D, \x1C, \x0C, \x0B

Spring Boot

नीचे, आप देखेंगे कि कैसे ACL सुरक्षा को पथनाम के अंत में \x09 या वर्ण जोड़कर दरकिनार किया जा सकता है:

Nginx संस्करण Spring Boot बायपास वर्ण
1.22.0 ;
1.21.6 ;
1.20.2 \x09, ;
1.18.0 \x09, ;
1.16.1 \x09, ;

PHP-FPM

निम्नलिखित Nginx FPM कॉन्फ़िगरेशन पर विचार करें:

location = /admin.php {
deny all;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}

इसे /admin.php/index.php तक पहुँचकर बायपास किया जा सकता है:

रोकथाम कैसे करें

इन समस्याओं को रोकने के लिए, आपको Nginx ACL नियमों में = अभिव्यक्ति के बजाय ~ अभिव्यक्ति का उपयोग करना चाहिए, उदाहरण के लिए:

COPYCOPY

location ~* ^/admin {
deny all;
}

AWS WAF ACL को Line Folding के साथ बायपास करना

HTTP हेडर में AWS WAF सुरक्षा को निम्नलिखित सिंटैक्स का उपयोग करके बायपास करना संभव है जहां AWS WAF समझ नहीं पाएगा कि X-Query हेडर में sql इंजेक्शन पेलोड होता है जबकि पीछे का नोड सर्वर समझेगा:

GET / HTTP/1.1\r\n
Host: target.com\r\n
X-Query: Value\r\n
\t' or '1'='1' -- \r\n
Connection: close\r\n
\r\n

संदर्भ

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

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