MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

एक यूआरएल क्वेरी स्ट्रिंग से सीधे फीड की जाने वाली मोंगो क्वेरी कितनी खतरनाक है?

जहां तक ​​इंजेक्शन की समस्या है, जैसे SQL के साथ, जोखिम काफी कम है... यद्यपि सैद्धांतिक रूप से एक अज्ञात हमले वेक्टर के माध्यम से संभव है।

डेटा संरचनाएं और प्रोटोकॉल एक डोमेन-विशिष्ट-भाषा के भीतर बच गए मूल्यों का लाभ उठाने के बजाय बाइनरी और एपीआई संचालित होते हैं। मूल रूप से, आप केवल पार्सर को अंत में ";db.dropCollection ()" जोड़ने के लिए धोखा नहीं दे सकते।

यदि इसका उपयोग केवल प्रश्नों के लिए किया जाता है, तो यह शायद ठीक है... लेकिन मैं आपको अभी भी एक छोटे से सत्यापन का उपयोग करने के लिए सावधान करूंगा:

  • केवल अल्फ़ान्यूमेरिक वर्ण सुनिश्चित करें (फ़िल्टर करें या नल को अमान्य करें और कुछ भी जो आप सामान्य रूप से स्वीकार नहीं करेंगे)
  • प्रति शब्द अधिकतम लंबाई (जैसे 255 वर्ण) लागू करें
  • पूरी क्वेरी की अधिकतम लंबाई लागू करें
  • स्ट्रिप विशेष "$" से शुरू होने वाले पैरामीटर नाम, जैसे "$कहां" और ऐसे
  • नेस्टेड सरणियों/दस्तावेज़ों/हैश की अनुमति न दें... केवल स्ट्रिंग्स और इनट्स

साथ ही, ध्यान रखें, एक खाली क्वेरी सबकुछ लौटाती है। आप उस वापसी मूल्य पर एक सीमा चाहते हैं। :)

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. वेबपी पर मनमानी जेसन ऑब्जेक्ट कैसे पोस्ट करें?

  2. MongoDB प्रतिकृति मध्यस्थों के साथ सेट करता है

  3. मोंगोडब सी # ड्राइवर और आईएसओडेट

  4. पाइमोंगो प्रमाणीकरण अजगर लिपि में विफल रहा

  5. MongoDB E11000 डुप्लिकेट कुंजी त्रुटि