में तालिका नाम के चारों ओर बैकटिक का महत्व MySQL प्रश्नों में, तालिका नाम के चारों ओर बैकटिक्स रखना कितना महत्वपूर्ण है। क्या सुरक्षा के साथ इसका कोई संबंध है? क्या MySQL इंजेक्शन हमले टेबल नाम के माध्यम से संभव हैं यदि तालिका इनपुट उपयोगकर्ता इनपुट के आधार पर PHP में गतिशील रूप से बनाया गया है?MySQL क्वेरी
उत्तर
बैकटिक गलती से एक नाम उदाहरण के लिए SQL में एक आरक्षित शब्द है कि का उपयोग करने से मदद करते हैं। "कहां" नाम की एक टेबल लें, यह एक टेबल के लिए एक बेवकूफ नाम है जो मैं सहमत हूं, लेकिन यदि आप इसे बैकटिक्स में लपेटते हैं तो यह ठीक काम करेगा।
यदि आपके पास एक कीवर्ड के समान नाम वाला टेबल नाम है, उदा। का चयन करें, निम्न क्वेरी अभी भी काम करेगा:
select * from `select`;
MySQL प्रश्नों में, में तालिका तालिका के चारों ओर बैकटिक्स लगाने के लिए यह कितना महत्वपूर्ण है। क्या सुरक्षा के साथ ऐसा कुछ है?
जहां तक बैकटिक्स का संबंध है, मैं उनका उपयोग तब करता हूं जब mysql-specifcs नामों और क्वेरी के बीच नाम संघर्ष होता है।
MySQL इंजेक्शन संभव हमलों तालिका नाम के माध्यम से तालिका नाम उपयोगकर्ता इनपुट के आधार पर पीएचपी में गतिशील रूप से बनाई गई है, तो कर रहे हैं?
जब भी कोई उपयोगकर्ता इनपुट होता है, तो आपको यह सुनिश्चित करना होगा कि आप उपयोगकर्ता से आने वाले इनपुट को फ़िल्टर और मान्य करें। तो हाँ इसके लिए सुरक्षा जोखिम है।
मैं तुम्हें संख्या के लिए intval और उपयोग करने के लिए किसी भी चर है कि आप अपने प्रश्नों में उपयोग कर सकते हैं के लिए समारोह mysql_real_escape_string की सिफारिश करेंगे।
में कोई बैकटिक्स वाक्यविन्यास त्रुटियां नहीं हैं इस उत्तर में जोड़ने के लिए ... किसी भी चर को एक एसक्यूएल स्ट्रिंग में रखा जाता है, यह एसक्यूएल इंजेक्शन के लिए एक अवसर है। और इससे कोई फ़र्क नहीं पड़ता कि यह डेटा कहां से आता है, कुछ भी सचमुच सुरक्षित नहीं है। हमेशा सब कुछ बचें। – TravisO
@TravisO: सहमत है और इसे जोड़ने के लिए धन्यवाद :) – Sarfraz
मैंने हाल ही में कुछ सीखा है, mysql_real_escape_string() बैकटीक्स से बच नहीं है। यदि आप एक PHP चर के रूप में एक PHP चर का उपयोग कर रहे हैं, तो इसका शोषण किया जा सकता है। – Noodles
- 1. mysql क्वेरी
- 2. MySQL क्वेरी
- 3. mysql क्वेरी
- 4. MySQL क्वेरी
- 5. MySQL: क्वेरी
- 6. MYSQL क्वेरी
- 7. MySQL क्वेरी समझने की क्वेरी
- 8. mysql अद्यतन क्वेरी उप क्वेरी
- 9. MySQL क्वेरी: एक जॉइनिंग
- 10. MySQL सहायता उप क्वेरी
- 11. MySQL DATETIME DIFF क्वेरी
- 12. mysql क्वेरी php
- 13. MySQL क्वेरी डेटाबेस आकार
- 14. MySQL क्वेरी - 1 कॉलम
- 15. एक MySQL क्वेरी
- 16. mysql क्वेरी स्पीड ऑप्टिमाइज़ेशन
- 17. mysql क्वेरी कतार?
- 18. MySQL केस संवेदनशील क्वेरी
- 19. क्वेरी द्वारा MySQL डंप
- 20. MySQL क्वेरी केवल GROUP_CONCAT
- 21. MySQL क्वेरी डिजाइन फोरम
- 22. MySQL Datediff क्वेरी
- 23. MySQL क्वेरी ब्राउज़र विकल्प
- 24. एक MySQL क्वेरी
- 25. MySQL - SELECT क्वेरी
- 26. MySQL क्वेरी मदद
- 27. MySQL संबंध क्वेरी
- 28. PHP MySQL क्वेरी बिल्डर
- 29. Node.js - mysql क्वेरी टाइमआउट
- 30. mysql क्वेरी "जैसे 'xx'"
यह तब होता है जब आपके पास फ़ील्ड होता है जिसे 'पासवर्ड' कहा जाता है। –
धन्यवाद, मैंने कुछ नया सीखा। मुझे लगता है कि बैकटिक्स के साथ "ऑर्डर" नामक कॉलम को चिह्नित करने से भी उस आरक्षित शब्द से संघर्ष करना पड़ेगा। – eoinoc
क्या हमें PostgreSQL में भी उनका उपयोग करने की आवश्यकता है? –