बस यहां सोच को समझना चाहते हैं और इस मुद्दे के लिए एक सही और स्वीकार्य दृष्टिकोण पर पहुंचना चाहते हैं। संदर्भ के लिए यह एक वेब वातावरण में है और हम डेटाबेस में इनपुट से बचने के बारे में बात कर रहे हैं।डेटाबेस में दुर्भावनापूर्ण कोड संग्रहीत करना - हमेशा से सही दृष्टिकोण से बचने पर आउटपुट है?
उपयोगकर्ता इनपुट लेने और इसे डेटाबेस में संग्रहीत करते समय इनपुट पर भागने के पीछे कई कारणों को समझते हैं। आप उस इनपुट का विभिन्न तरीकों से उपयोग करना चाहेंगे (जेएसओएन, एसएमएस के रूप में आदि) और आप उस इनपुट को उपयोगकर्ता को अपने मूल रूप में दिखाना भी चाहेंगे।
डेटाबेस में कुछ भी डालने से पहले हम सुनिश्चित करते हैं कि डेटाबेस की सुरक्षा के लिए कोई एसक्यूएल इंजेक्शन हमले नहीं हैं।
हालांकि following the principals set out here और here, वे उपयोगकर्ता इनपुट को सहेजने के दृष्टिकोण का सुझाव देते हैं। यह उपयोगकर्ता इनपुट SQL इंजेक्शन हमला नहीं हो सकता है, लेकिन यह अन्य दुर्भावनापूर्ण कोड हो सकता है। इन मामलों में जावास्क्रिप्ट आधारित एक्सएसएस हमलों को डेटाबेस में स्टोर करना ठीक है?
मैं सिर्फ यह जानना चाहता हूं कि मेरी धारणाएं सही हैं या नहीं, क्या हम डेटाबेस में दुर्भावनापूर्ण कोड संग्रहीत करने के साथ ठीक हैं, जब तक कि दुर्भावनापूर्ण कोड डेटाबेस को सीधे प्रभावित नहीं करता है? क्या यह डेटाबेस की समस्या नहीं होने का मामला है, यह दुर्भावनापूर्ण कोड के नुकसान से बचने के लिए इस दुर्भावनापूर्ण कोड और आउटपुट डिवाइस तक हो सकता है?
या क्या हमें इन प्रिंसिपल द्वारा सुझाए गए इनपुट से अधिक भागना चाहिए - क्या सुरक्षा चिंताएं आउटपुट से बचने के विचार से पहले आती हैं? क्या हमें इस दृष्टिकोण को लेना चाहिए कि डेटाबेस में कोई दुर्भावनापूर्ण कोड प्रवेश नहीं करता है? हम दुर्भावनापूर्ण कोड को फिर भी क्यों स्टोर करना चाहते हैं?
किसी वेब क्लाइंट/सर्वर वातावरण के संदर्भ में किसी डेटाबेस में दुर्भावनापूर्ण कोड सहेजने का सही तरीका क्या है?
[इस के प्रयोजनों के मैं किसी भी साइटों है कि विशेष रूप से कोड उन पर साझा करने की अनुमति अनदेखी कर रहा हूँ के लिए, मैं इस तरह के नाम, टिप्पणी और विवरण फ़ील्ड के रूप में "सामान्य" आदानों में सोच रहा हूँ।]