2017-05-18 19 views
8

मैं वर्तमान में साइट भेद्यता को ठीक करने की कोशिश करने की प्रक्रिया पर हूं, मूल रूप से यह "अनुचित इनपुट हैंडलिंग" हमले का एक प्रकार है।अयोग्य-इनपुट-हैंडलिंग हमले को रोकने के लिए टोमकैट वर्चुअल होस्ट

मान लीजिए कि मेरी वेबसाइट www.mywebsite.com है चलो और वहाँ हैकर की वेबसाइट है www.hacker.com

जब भी एक अनुरोध संशोधित साथ www.mywebsite.com को भेज नहीं है " Host "हेडर पॉइंट www.hacker.com, मेरी साइट www.mywebsite.com पर रीडायरेक्ट करेगी, जो भी यूआरएल था। उदा।

सामान्य:

Host: www.mywebsite.com 
GET www.mywebsite.com/get/some/resources/ 
Reponse 200 ok 

हैक:

Host: www.hacker.com (#been manually modified) 
GET www.mywebsite.com/get/some/resources/ 
Response 302 
Send another Redirect to www.hacker.com/get/some/resources 

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

<Engine name="Catalina" defaultHost="defaultlocalhost" jvmRoute="jvm1"> 
<Host name="www.mywebsite.com" appBase="webapps" 
     unpackWARs="true" autoDeploy="false" deployOnStartup="true"> 

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
      prefix="localhost_access_log." suffix=".txt" 
      pattern="%h %l %u %t &quot;%r&quot; %s %b" /> 
    </Host> 

    <Host name="defaultlocalhost" > 

    </Host> 

तो, मेरे सवाल है, मैं हमले के इस प्रकार को रोकने के लिए सही रास्ते पर हूं:

यहाँ संलग्न मेरी server.xml मेजबान कॉन्फ़िगर है? यदि हां, मैंने क्या गलत किया जो अभी भी काम नहीं कर रहा है? (अंतिम लक्ष्य यह है कि यदि यह वैध होस्ट नहीं है, तो अनुरोध को रद्द कर दिया जाना चाहिए/अनदेखा/404 लौटाया जाना चाहिए, लेकिन 302 के साथ रीडायरेक्ट नहीं किया जाना चाहिए)

अग्रिम धन्यवाद।

अधिक हमले के बारे में यहाँ संदर्भ: http://www.skeletonscribe.net/2013/05/practical-http-host-header-attacks.html

http://projects.webappsec.org/w/page/13246933/Improper%20Input%20Handling

उत्तर

0

ओह अच्छा, अंत तक अपने ही सवाल का जवाब।

टॉमकैट उपयोगकर्ता मेलिंग सूची में शामिल होने के बाद (ईमेल पता सदस्यता लें: [email protected])। मूल रूप से क्या मैं गलत मेरी defaultlocalhost

<Host name="defaultlocalhost" appbase="whatever" > 

    </Host> 

ऊपर कॉन्फ़िगर में appBase याद आ रही है किया

सफलतापूर्वक 404 स्थिति लौटे जब भी कोई अवैध अनुरोध भेज दिया गया था: मुझे इस का समाधान मिल में मदद की पुरुष आंद्रे नामित नहीं है। कारण यह है कि जब भी आप appbase सेट नहीं करते हैं तो यह हमेशा webapps पर डिफ़ॉल्ट होता है, इसलिए यह अनिवार्य रूप से मेरे मूल कॉन्फ़िगरेशन के साथ कुछ भी नहीं करता है।

आशा है कि यह किसी भी व्यक्ति को समान समस्या रखने में मदद कर सकता है।

संबंधित मुद्दे