कैसे एक अपाचे वेब सर्वर के खिलाफ "slowloris" DOS हमले के खिलाफ सबसे अच्छा बचाव करने के लिए?


32

हाल ही में "स्लोडोरिस" नामक एक स्क्रिप्ट ने ध्यान आकर्षित किया है। धीमी गति से काम करने की मूल अवधारणा एक नया हमला नहीं है, लेकिन हाल ही में ध्यान दिया गया है कि मैंने हमारी कुछ अपाचे वेबसाइटों के खिलाफ हमलों में एक छोटी वृद्धि देखी है।

फिलहाल इसके खिलाफ कोई 100% रक्षा नहीं दिखाई देती है।

हमने (अभी तक) जो सबसे अच्छा समाधान निर्धारित किया है, वह मैक्सक्लिअर्स को बढ़ाने के लिए है।

यह निश्चित रूप से हमलावर के कंप्यूटर के लिए आवश्यकताओं को बढ़ाने से ज्यादा कुछ नहीं करता है और वास्तव में 100% सर्वर की रक्षा नहीं करता है।

एक अन्य रिपोर्ट बताती है कि अपाचे सर्वर के सामने एक रिवर्स प्रॉक्सी (जैसे पेरबल) का उपयोग करके हमले को रोकने में मदद मिल सकती है।

एक होस्ट से कनेक्शन की संख्या को सीमित करने के लिए mod_evasive का उपयोग करना और mod_security का उपयोग उन अनुरोधों को अस्वीकार करने के लिए करना जो इस तरह दिखते हैं जैसे कि वे धीरे-धीरे जारी किए गए थे जो अब तक का सबसे अच्छा बचाव है।

ServerFault पर किसी को भी इस तरह के हमलों का सामना कर रहा है? यदि हां, तो आपने इसे रोकने / रोकने के लिए कौन से उपाय लागू किए?

नोट: यह प्रश्न अपाचे सर्वरों के लिए है क्योंकि यह मेरी समझ है कि Windows IIS सर्वर प्रभावित नहीं होते हैं।

जवाबों:


22

मैंने इस तरह के हमले का अनुभव किया ... मिडसमर (23 जून) के मध्य में, जहां आप ग्रामीण इलाकों में रहने वाले हैं और बीयर पीते हैं:>

मैंने अपनी अपाचे को वार्निश के पीछे रख दिया , जो न केवल स्लोअरलिस से सुरक्षित था, बल्कि वेब अनुरोधों को भी थोड़ा बढ़ा दिया।

इसके अलावा, iptablesमेरी मदद की:

iptables -I INPUT -p tcp --dport 80 \
         -m connlimit --connlimit-above 20 --connlimit-mask 40 -j DROP

यह नियम एक मेजबान को 20 कनेक्शनों को 80 पोर्ट तक सीमित करता है, जो गैर-दुर्भावनापूर्ण उपयोगकर्ता को प्रभावित नहीं करना चाहिए, लेकिन एक मेजबान के लिए धीमी गति से अनुपयोगी प्रस्तुत करेगा।


4
Iptables नियम के लिए +1।
टिम

1
बिलकुल चौकन्ना। "बॉक्स से बाहर", अगर कुकीज़ प्राप्त हुआ तो वार्निश पृष्ठों को कैश नहीं करता है। इसके आसपास जाने के लिए आपको कुछ कस्टम कॉन्फ़िगरेशन करने की आवश्यकता है। उदाहरण उनकी साइट पर उपलब्ध हैं और उन्हें लागू करना आसान है।
डेविड

वार्निश काफी प्रोग्राम योग्य है, इसलिए आप यह देखने के लिए इसे कॉन्फ़िगर करने में सक्षम हो सकते हैं कि क्या हो रहा है और इससे निपटें। हालाँकि, मुझे लगता है कि अपाचे के सामने एक प्रॉक्सी लगाकर, आपकी समस्या वेब सर्वर से प्रॉक्सी पर जा रही है। समस्या अभी भी है, बस एक अलग जगह पर। कनेक्शन / पोर्ट अभी भी उपयोग किए जाएंगे। मैं सूचीबद्ध iptables नियम (या आपके फ़ायरवॉल के समतुल्य) के साथ शुरू करूँगा, फिर एक प्रॉक्सी देखिए।
डेविड

1
स्लाइसिस अटैक के साथ समस्या अपाचे के मल्टी थ्रेडिंग मॉडल (और कई अन्य वेबसर्वर्स जो एक समान मॉडल का उपयोग करते हैं) तक सीमित है। वार्निश को जीवित रहना चाहिए।
सियान जूल


3

यदि आपके सभी अपाचे मॉड्यूल थ्रेड सुरक्षित हैं, तो ईवेंट या वर्कर MPM पर स्विच करके धीरे-धीरे पराजित किया जा सकता है। रेफरी: यहाँ


0

अभी ऐसा लगता है कि सर्वर पर प्रति आईपी अधिकतम समवर्ती संबंधों को सीमित करने के लिए और कुछ नहीं करना है।


0

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


0

iptable आधारित फ़ायरवॉल आपको 1 आईपी से कई कनेक्शनों से बचाता है।


0

यदि यह किसी और की मदद करता है, तो आप कभी-कभी अपाचे 2.2.15 या इससे अधिक के साथ इस समस्या को दूर कर सकते हैं:

LoadModule reqtimeout_module modules/mod_reqtimeout.so
RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500

अधिक जानकारी यहाँ: https://httpd.apache.org/docs/2.2/mod/mod_reqtimeout.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.