सर्वर कैसे निकालें: अपाचे के साथ HTTP प्रतिक्रिया से हेडर?


20

मैं लाइन हटाना चाहूंगा:

Server: Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.6 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g

मेरे सर्वर के HTTP प्रतिक्रियाओं से, लेकिन मुझे include/ap_release.hखुद को अपाचे को संशोधित करने और संकलित करने के अलावा कुछ नहीं मिला । मैं सोच रहा था कि क्या कोई ऐसा तरीका है जिसके बारे में मुझे पता नहीं है?

जवाबों:


16

आप ModSecurity ओपन सोर्स वेब एप्लिकेशन फ़ायरवॉल का उपयोग करके Http-Header से सर्वर की पहचान को हटा या मास्क कर सकते हैं ।

सर्वर पहचान मास्किंग

एक तकनीक जो अक्सर धीमा करने और हमलावरों को भ्रमित करने में मदद करती है वह है वेब सर्वर पहचान परिवर्तन। वेब सर्वर आमतौर पर सर्वर हेडर में प्रत्येक HTTP प्रतिक्रिया के साथ अपनी पहचान भेजते हैं। यहां अपाचे विशेष रूप से सहायक है, न केवल अपना नाम और पूर्ण संस्करण डिफ़ॉल्ट रूप से भेज रहा है, बल्कि यह सर्वर मॉड्यूल को अपने संस्करणों को भी जोड़ने की अनुमति देता है।

अपाचे वेब सर्वर की पहचान बदलने के लिए आपको स्रोत कोड में जाना होगा, जहां "अपाचे" नाम को हार्ड-कोडित किया गया है, उसे बदलें और सर्वर को फिर से खोलें। उसी प्रभाव का उपयोग करके प्राप्त किया जा सकता है

सेकसरवरशिप निर्देश:

SecServerSignature "Microsoft-IIS/5.0"

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

यदि आप अपाचे हस्ताक्षर बदलते हैं लेकिन आप त्रुटि लॉग में अजीब संदेश से नाराज हैं (कुछ मॉड्यूल अभी भी दिखाई दे रहे हैं - यह केवल त्रुटि लॉग को प्रभावित करता है, बाहर से यह अभी भी उम्मीद के मुताबिक काम करता है):

[Fri Jun 11 04:02:28 2004] [notice] Microsoft-IIS/5.0 mod_ssl/2.8.12 OpenSSL/0.9.6b \ configured -- resuming normal operations

तब आपको मॉड्यूल लोडिंग ऑर्डर को फिर से व्यवस्थित करना चाहिए ताकि mod_security को अंतिम रूप से चलाने की अनुमति दी जा सके, जैसा कि चेरोटिंग के लिए समझाया गया है।

ध्यान दें

काम करने के लिए इस निर्देश के लिए आपको सर्वर-पूर्ण को छोड़ना / सेट करना होगा।

जब सार्वजनिक सर्वर हस्ताक्षर को बदलने के लिए SecServerSignature निर्देश का उपयोग किया जाता है, तो ModSecurity आपको त्रुटि लॉग में वास्तविक हस्ताक्षर लिखना शुरू कर देगा, जिससे आप वेब सर्वर और उपयोग किए गए मॉड्यूल की पहचान कर सकेंगे।

स्रोत: मोडसिक्योरिटी रेफरेंस मैनुअल


यह अभी चल रहा है, लेकिन मुझे लगता है कि यह किसी अन्य मौजूदा सर्वरनाम का उपयोग करने के लिए स्मार्ट नहीं है क्योंकि आप हमले की कार्रवाई को ट्रिगर कर सकते हैं।
कोडबीट

27

यदि आप ServerTokens" Prod" पर सेट हैं , तो आप हेडर को " Server: Apache" कम कर सकते हैं । विकल्पों की पूरी सूची के लिए प्रलेखन देखें:

अपाचे 2.2 के लिए प्रलेखन

अपाचे 2.4 के लिए प्रलेखन

नोट: सेटिंग्स दोनों संस्करणों में समान हैं लेकिन 2.4 प्रलेखन इस नोट को जोड़ता है:

ServerTokens को कम से कम सेट करने की अनुशंसा नहीं की जाती है क्योंकि यह इंटरऑपरेशनल समस्याओं को डीबग करना अधिक कठिन बनाता है। यह भी ध्यान दें कि सर्वर को अक्षम करना: हेडर आपके सर्वर को अधिक सुरक्षित बनाने के लिए कुछ भी नहीं करता है। "अस्पष्टता के माध्यम से सुरक्षा" का विचार एक मिथक है और सुरक्षा की झूठी भावना की ओर जाता है।

यदि आप "अपाचे" शब्द को पूरी तरह से हटाना चाहते हैं, तो आपको स्रोत को संशोधित करना होगा।


उत्तर के लिए +1 tnx, मैं उस प्रश्न का उल्लेख करना भूल गया जिसके बारे में मुझे पता था लेकिन मैं इसे Microsoft IIS या कुछ और कहना चाहता हूं। मुझे यह स्पष्ट करना चाहिए था।
नव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.