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

क्या mysql_real_escape_string SQL इंजेक्शन को रोकने के लिए पर्याप्त है?

2024-12-21 को प्रकाशित
ब्राउज़ करें:453

  Is mysql_real_escape_string Enough to Prevent SQL Injection?

mysql_real_escape_string से बचने की गलतियाँ

SQL इंजेक्शन को रोकने के लिए आमतौर पर इस्तेमाल की जाने वाली विधि होने के बावजूद, अनुचित तरीके से उपयोग किए जाने पर mysql_real_escape_string हमलों से बचाने में विफल हो सकता है . हालांकि यह कुशलतापूर्वक स्ट्रिंग मानों में विशेष वर्णों से बच जाता है, कुछ परिदृश्य उत्पन्न हो सकते हैं जहां इसकी प्रभावशीलता से समझौता किया जाता है। SQL कथनों में उद्धरण चिह्नों के भीतर संलग्न पाठ्य सामग्री सम्मिलित करना। उदाहरण के लिए:

$value = mysql_real_escape_string($value, $link); $sql = "... `foo` = '$value' ...";

गलत उपयोग

$value = mysql_real_escape_string($value, $link);
$sql = "... `foo` = '$value' ...";

इसे गैर-उद्धृत संदर्भों में उपयोग करना (उदाहरण के लिए, ... column_name = $value ...)

इसे गैर-स्ट्रिंग मानों पर लागू करना (उदाहरण के लिए, संख्यात्मक इनपुट)

एसक्यूएल संदर्भों के बाहर इसे गलत तरीके से लागू करना (उदाहरण के लिए, $sql = mysql_real_escape_string('... foo = '$value' ..."))
  • एन्कोडिंग संबंधी विचार
  • एक और नुकसान डेटाबेस कनेक्शन एन्कोडिंग को गलत तरीके से कॉन्फ़िगर करना है। सही विधि है:

mysql_set_charset('utf8', $link);हालांकि, mysql_query('SET NAMES 'utf8'', $link) का उपयोग करने से mysql_ API के बीच विसंगतियां हो सकती हैं कल्पित एन्कोडिंग और डेटाबेस की वास्तविक एन्कोडिंग। यह संभावित रूप से मल्टीबाइट स्ट्रिंग्स से जुड़े इंजेक्शन हमलों की अनुमति दे सकता है। हालाँकि, SQL इंजेक्शन कमजोरियों को रोकने के लिए इसकी सीमाओं को पहचानना और इसे सही ढंग से लागू करना आवश्यक है। बढ़ी हुई सुरक्षा और उपयोग में आसानी के लिए अधिक आधुनिक विकल्प जैसे तैयार किए गए विवरण तलाशने की अनुशंसा की जाती है।

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

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

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

Copyright© 2022 湘ICP备2022001581号-3