"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्या SQL इंजेक्शन के खिलाफ एकल उद्धरण एक विश्वसनीय बचाव है?

क्या SQL इंजेक्शन के खिलाफ एकल उद्धरण एक विश्वसनीय बचाव है?

2025-03-23 ​​पर पोस्ट किया गया
ब्राउज़ करें:706

Is Escaping Single Quotes a Reliable Defense Against SQL Injection?

]

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

] ] ] ] इसलिए, कोई भी अन्य चरित्र, जैसे कि अर्धविराम या एक प्रतिशत चिन्ह, स्ट्रिंग का हिस्सा बन जाता है और इसे कमांड के रूप में निष्पादित नहीं किया जाता है।

इंजेक्शन भेद्यता ] इस मामले में, स्ट्रिंग समाप्त हो जाएगा और बाकी इनपुट को SQL कमांड के रूप में निष्पादित किया जा सकता है।

उदाहरण इनपुट

sSanitizedInput = "'" & Replace(sInput, "'", "''") & "'"
] ]

आगे के विचार ] ]

प्रदर्शन और रखरखाव ओवरहेड का परिचय दें।

कोड को पढ़ना और समझना मुश्किल है।

सर्वोत्तम प्रथाएं

'SensitiveData' HAVING AMOUNT>2000 OR ''=''
]

केवल अपेक्षित इनपुट मान और प्रारूप (श्वेतसूची) की अनुमति है।
SELECT * FROM ACCOUNT WHERE NAME='SensitiveData' HAVING AMOUNT>2000 OR ''=''

सीमित डेटाबेस अनुमतियों के साथ संग्रहीत प्रक्रियाओं का उपयोग करने पर विचार करें।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3