2017-04-23 30 views
11

में अपाचे स्वीकृति एलएफ बनाम सीएफएलएफ है मेरे पास एक विरासत उत्पाद है जो मैं अपाचे सर्वर पर समर्थन करने की कोशिश कर रहा हूं और हाल ही के अपडेट के बाद सर्वर ने अनुरोध शीर्षकों को अस्वीकार करना शुरू कर दिया है जो केवल न्यूलाइन के लिए एलएफ का उपयोग करते हैं और यह लंबा है कोड बेस कितना पुराना है इसके कारण इसे पुनर्निर्माण करने का आदेश। क्या वहां कोई सेटिंग है जिसका इस्तेमाल किया जा सकता है या एक mod_rewrite कमांड जिसे लीडरेज किया जा सकता है, अनुरोध करने वाले हेडर जो सीआरएलएफ के बजाय एलएफ का उपयोग करते हैं या एलएफ को सीडीआरएफ के अनुरोध हेडर में फिर से लिखेंगे? app सेअनुरोध हेडर

उदाहरण हैडर:

Host: www.ourhostname.com:80\n 
Accept-language: en\n 
user_agent: Our Old Application\n 
\n 

अगर मैं \n को \r\n बदलने के लिए फाइल को संपादित हेक्स, यह काम करता है, लेकिन हेक्स संपादन एक अद्यतन के रूप में जारी करने के लिए एक फ़ाइल वांछित नहीं है और मैं कर रहा हूँ Apache को स्वयं द्वारा एलएफ पर चकमा देने के लिए कुछ सर्वर-साइड ढूंढने का प्रयास कर रहा है। इस समस्या पर किसी भी मदद के लिए अग्रिम धन्यवाद!

उत्तर

7

हम एक ही समस्या थी और अपाचे के तय भेद्यता पाया:

महत्वपूर्ण: अपाचे HTTP अनुरोध पार्स व्हाइटस्पेस दोष CVE-2016-8743 https://httpd.apache.org/security/vulnerabilities_24.html

इन दोषों अपाचे HTTP के रिलीज के साथ संबोधित कर रहे हैं सर्वर 2.4.25 और एक नए निर्देश द्वारा समन्वित;

HttpProtocolOptions Strict 

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

तो, HttpProtocolOptions Unsafe निर्देश आपका समाधान हो सकता है। हमने इसका इस्तेमाल न करने का फैसला किया।

+0

यह हमारी समस्या को हल करता है। दुर्भाग्य से निर्देश का उपयोग करके फ़ाइल को बाकी साइट को सुरक्षित रखने के लिए इसे निर्दिष्ट नहीं कर सकता है, लेकिन यह vhost स्तर पर काम करता है। जानकारी के लिए धन्यवाद! – Nuvious

3

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

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