selectionArgs
में मान पैरामीटर से बचने की जरूरत नहीं है, और वे नहीं चाहिए बच निकले क्योंकि एस्केप वर्ण डेटाबेस में समाप्त हो जाएंगे।
Veracode द्वारा देखे गए SQL कोड के तीन अलग-अलग मामले हैं:
- मान जो नहीं हो सकते उपयोगकर्ता इनपुट (जैसे स्रोत कोड में स्ट्रिंग अक्षर);
- मान जो हैं उपयोगकर्ता इनपुट (क्योंकि सीधे आते हैं, उदाहरण के लिए, कुछ संपादन बॉक्स);
- मान जो हो सकता है उपयोगकर्ता इनपुट, क्योंकि उपकरण स्रोत का निर्धारण नहीं कर सकता।
विपणन कारणों से, भुगतान के लिए उपकरण समस्या संख्या को जितना संभव हो उतना बढ़ा देते हैं। तो Veracode तीसरे मामले के सभी उदाहरणों को समस्या के रूप में रिपोर्ट करता है।
इस मामले में, Veracode नहीं जानता कि selection
. कहां है से आता है, इसलिए यह शिकायत करता है। यदि वह मान आपके प्रोग्राम द्वारा निर्मित किया गया है और इसमें कभी भी कोई उपयोगकर्ता इनपुट शामिल नहीं है (यानी, सभी उपयोगकर्ता-इनपुट मान ?
में स्थानांतरित कर दिए गए हैं। पैरामीटर), तो यह एक गलत सकारात्मक है, और आपको Veracode को चुप रहने के लिए कहना होगा।