2008-08-04 10 views
17

मैं ऐसे टूल की तलाश में हूं जो दुर्भावनापूर्ण अनुरोधों (जैसे कि स्पष्ट एसक्यूएल इंजेक्शन हो या पोस्ट) का पता लगा सके और तुरंत अनुरोधकर्ता के आईपी पते/ब्लैकलिस्ट में जोड़ देगा। मुझे पता है कि एक आदर्श दुनिया में हमारा कोड ऐसे अनुरोधों को संभालने में सक्षम होना चाहिए और तदनुसार उनका इलाज करना चाहिए, लेकिन इस तरह के उपकरण में बहुत मूल्य है, भले ही साइट इन प्रकार के हमलों से सुरक्षित हो, क्योंकि इससे इसका कारण बन सकता है बैंडविड्थ को बचाने, एनालिटिक्स के ब्लोट को रोकने, आदिएसक्यूएल इंजेक्शन और अन्य दुर्भावनापूर्ण वेब अनुरोधों को पकड़ना

आदर्श रूप से, मैं एक क्रॉस-प्लेटफ़ॉर्म (LAMP/.NET) समाधान ढूंढ रहा हूं जो तकनीकी ढेर की तुलना में उच्च स्तर पर बैठता है; शायद वेब सर्वर या हार्डवेयर स्तर पर। मुझे यकीन नहीं है कि यह मौजूद है, यद्यपि।

किसी भी तरह से, मैं समुदाय की प्रतिक्रिया सुनना चाहता हूं ताकि मैं देख सकूं कि कार्यान्वयन और दृष्टिकोण के संबंध में मेरे विकल्प क्या हो सकते हैं।

+0

कृपया सर्वश्रेष्ठ उत्तर का चयन करें, धन्यवाद को रोकने के लिए URL हटाने से सब एक साथ। – mruanova

उत्तर

5

एक सामान्य उपकरण के साथ समस्या यह है कि यह बहुत मुश्किल है नियम है कि केवल एक वास्तविक हमले के खिलाफ की पूर्ति करेंगे, का एक सेट के साथ आने के लिए है।

एसक्यूएल कीवर्ड सभी अंग्रेजी शब्दों रहे हैं, और भूल नहीं है कि स्ट्रिंग

DROP TABLE users; 

एक रूप क्षेत्र है कि, उदाहरण के लिए, एक प्रोग्रामिंग प्रश्न का उत्तर होता है में पूरी तरह से वैध है।

केवल समझदार विकल्प कभी भी अपने डेटाबेस के लिए इसे पारित करने से पहले इनपुट स्वच्छ, लेकिन उस पर फिर भी पारित करने के लिए है। अन्यथा पूरी तरह से सामान्य, गैर-दुर्भावनापूर्ण उपयोगकर्ताओं को आपकी साइट से प्रतिबंधित होने जा रहे हैं।

3

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

कुछ सामान्य टेक्स्ट बॉक्स की तरह कुछ कठिन होगा क्योंकि इस विधि को झूठी सकारात्मक वापसी की संभावना अधिक होगी, लेकिन यह कम से कम एक शुरुआत होगी।

3

ध्यान में रखना एक छोटी सी चीज़: कुछ देशों में (यानी यूरोप का अधिकांश), लोगों के पास स्थिर आईपी पते नहीं हैं, इसलिए ब्लैकलिस्टिंग हमेशा के लिए नहीं होनी चाहिए।

0

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

10

आप इसे लगभग गलत तरीके से देख रहे हैं, कोई 3party टूल जो आपके एप्लिकेशन विधियों/नामकरण/डेटा/डोमेन से अवगत नहीं है, वह पूरी तरह से आपकी रक्षा करने में सक्षम होने जा रहा है।

एसक्यूएल इंजेक्शन रोकथाम की तरह कुछ ऐसा है जो कोड में होना चाहिए, और एसक्यूएल लिखने वाले लोगों द्वारा सबसे अच्छा लिखा गया है, क्योंकि वे हैं जो जानते होंगे कि उन क्षेत्रों में क्या होना चाहिए/नहीं (जब तक आपकी परियोजना है बहुत अच्छा दस्तावेज़)

आपका सही है, यह सब से पहले किया गया है। आपको पहिया को फिर से शुरू करने की ज़रूरत नहीं है, लेकिन आपको हर किसी के धुरी व्यास में मतभेदों के कारण एक नया बनाना होगा।

यह एक ड्रॉप-इन और रन समस्या नहीं है, आपको वास्तव में यह पता होना चाहिए कि एसक्यूएल इंजेक्शन वास्तव में इससे पहले कि आप इसे रोक सकें।यह एक चुस्त समस्या है, इसलिए यह समान रूप से चुस्त सुरक्षा लेता है।

इन 2 लिंक ने मुझे विषय पर मूल बातें शुरू करने के लिए और अधिक पढ़ाया, और मुझे उन विशिष्ट प्रश्नों पर अपने भविष्य के लुकअप को बेहतर वाक्यांश में मदद की, जिनका उत्तर नहीं दिया गया था।

और जब यह एक नहीं है काफी एक 100% खोजक, यह आपके मौजूदा कोड में मौजूदा समस्या पर "आप प्रकाश दिखाने" होगा, लेकिन webstandards साथ की तरह, न एक बार जब आप इस परीक्षा को पास करते हैं तो कोडिंग रोकें।

3

ओरेकल एक online tutorial about SQL Injection मिल गया है। भले ही आप एक तैयार समाधान चाहते हैं, यह आपको अपने आप को बचाने के लिए बेहतर तरीके से इसका उपयोग करने के बारे में कुछ संकेत दे सकता है।

0

मेरी साइटों में से एक हाल ही में एसक्यूएल इंजेक्शन के माध्यम से हैक किया गया था। इसने डीबी में हर पाठ क्षेत्र के लिए एक वायरस का एक लिंक जोड़ा! फिक्स एसक्यूएल कीवर्ड की तलाश में कुछ कोड जोड़ना था। सौभाग्य से, मैंने कोल्डफ्यूशन में विकसित किया है, इसलिए कोड मेरी Application.cfm फ़ाइल में बैठता है जो प्रत्येक वेबपृष्ठ & की शुरुआत में चलाया जाता है, यह सभी यूआरएल चर देखता है। विकिपीडिया में भी मदद करने के लिए कुछ अच्छे लिंक हैं।

0

दिलचस्प है कि कैसे इस गूगल द्वारा साल बाद लागू किया जा रहा है और उन्हें आदेश XSS हमलों और अन्य दुर्भावनापूर्ण acitivites

संबंधित मुद्दे