2010-02-28 18 views
23

मैं एक वेब अनुप्रयोग विकसित कर रहा हूं। जैसे, एक उचित, मैंने अतीत में जूमला जैसी चीजें कमाल की चीजें बनाने के लिए उपयोग की हैं, लेकिन आखिरकार मेरे हाथों को PHP, MySQL और CodeIgniter के साथ गंदे मिल गए हैं।वेब अनुप्रयोगों में सुरक्षा भेद्यता के लिए परीक्षण: सर्वोत्तम अभ्यास?

जब आप गंभीर वेब ऐप्स बना रहे हैं जो बड़ी मात्रा में डेटा संभाल लेंगे, तो मुझे अपने डेटा इनपुट के खिलाफ सावधानी बरतने के लिए क्या सावधानी बरतनी चाहिए? मुझे पता है कि स्पष्ट ट्रिम, एस्केपिंग, एक्सएसएस सफाई इत्यादि है - लेकिन डेटाबेस में इंजेक्शन रोकने के लिए मुझे अन्य तकनीकों को शामिल करना चाहिए?

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

हैकर्स उपयोगकर्ता के डेटा को नष्ट या पढ़ने के लिए अन्य सामान्य तरीकों का उपयोग करते हैं, और मैं इसे स्वयं कैसे देख सकता हूं? मेरे पास सुरक्षा सलाहकार किराए पर लेने के लिए पैसा नहीं है क्योंकि मैं केवल 16 वर्ष का हूं लेकिन कंप्यूटर के साथ अच्छा अनुभव है और मुझे यकीन है कि अगर कुछ संकेत दिए गए हैं तो कुछ संकेत दिए गए हैं।

मुझे पता है कि यह प्रश्नों का पूरा भार है लेकिन सारांशित करने के लिए, आप यह सुनिश्चित करने के लिए क्या करते हैं कि सबकुछ 100% सुरक्षित है?

+3

वेब एप्लिकेशन को सुरक्षित करना एक व्यापक विषय है। इसके बारे में पूरी किताबें हैं। इस प्रकार, सवाल, जबकि अच्छा है, मेरी राय में बहुत ही विशिष्ट है और या तो बंद हो या एक समुदाय विकी हो। एसक्यूएल इंजेक्शन, एक्सएसएस, सीएसआरएफ, इत्यादि को रोकने के तरीके के बारे में एसओ पर भी पहले से ही बहुत कुछ प्रश्नोत्तरी है। – Gordon

उत्तर

19

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

लेकिन, आप कुछ स्वचालित उपकरण को बंद नहीं कर सकते हैं और सबकुछ काम करने की उम्मीद कर सकते हैं।कोई भी आपके द्वारा चुने गए भेद्यता स्कैनर के साथ आपको कई सावधानी बरतनी चाहिए।

1) सुनिश्चित करें कि display_errors = अपने php.ini में एसक्यूएल इंजेक्शन परीक्षण प्रतिक्रिया पृष्ठों में mysql त्रुटि संदेशों को देखने में सक्षम होने पर भरोसा करते हैं! कोई त्रुटि नहीं, कोई भेद्यता का पता चला!

2) अपने आवेदन के प्रमाणित क्षेत्रों को स्कैन करें। विशेष रूप से परीक्षण के लिए एक उपयोगकर्ता खाता बनाएँ। Acuentix एक आसान जादूगर है जहां आप एक लॉगिन अनुक्रम बना सकते हैं। यदि आप वापीटी का उपयोग कर रहे हैं तो आप वापीती को कुकी दे सकते हैं या वापीती को आग के लिए एक पोस्ट अनुरोध दे सकते हैं लेकिन यह एक तरह का मुश्किल है।

के बाद आपने अपने आवेदन का परीक्षण किया है और फिर गलत कॉन्फ़िगरेशन के लिए अपने सर्वर का परीक्षण करें। अपने सर्वर का परीक्षण करने के लिए आपको OpenVAS चलाने की आवश्यकता है जो नेसस का नया और अधिक मुफ्त संस्करण है जो अब एक वाणिज्यिक उत्पाद है। फिर आपको PhpSecInfo के साथ इसका पालन करना चाहिए। ये परीक्षण आपको आपकी कॉन्फ़िगरेशन के साथ समस्याओं के बारे में सूचित करेंगे या यदि आप पुराने कमजोर सॉफ़्टवेयर चला रहे हैं।

कुछ भी 100% सुरक्षित नहीं होगा, कभी। कोई फर्क नहीं पड़ता कि आप क्या करते हैं कमजोरियां हैं जो दरारों के बावजूद फिसल जाएंगी। सभी विकास प्लेटफार्मों में कमजोरियां हैं जो एक समझौता करती हैं जिसके लिए कोई उपकरण परीक्षण नहीं कर सकता है। आपके द्वारा उपयोग किए जाने वाले परीक्षण टूल में भी बग हैं। झूठी पोस्टियां और झूठी नकारात्मक हैं और कुछ परीक्षण हैं जो काम नहीं करते हैं, एक अच्छा उदाहरण मैंने कभी स्वचालित सीएसआरएफ उपकरण नहीं देखा है जो वास्तव में कानूनी भेद्यताएं पाता है। एक्यूनेटिक्स का सीएसआरएफ परीक्षण समय की पूरी बर्बादी है।

OWASP testing guide भी है जो अधिक विस्तार से जाता है। यह OWASP Top 10 के साथ भ्रमित नहीं होना चाहिए जो एक उत्कृष्ट संसाधन भी है। PHP Security Guide PHP प्रोग्रामर के लिए भी एक महान संसाधन है।

4

I don't have the money to hire a security consultant since I'm only 16
आप कर रहे हैं 16 आप किराया करने के लिए पैसे की जरूरत नहीं है इसका मतलब यह नहीं: डी
आपको किसी को भी किराए पर लेने की आवश्यकता नहीं है। ऐसे कई निःशुल्क ऑनलाइन टूल हैं जिनका उपयोग आप अपने वेब एप्लिकेशन की भेद्यता का परीक्षण करने के लिए कर सकते हैं।

  1. एसक्यूएल इंजेक्शन भेद्यता

  2. http://www.parosproxy.org परीक्षण करने के लिए http://www.zubrag.com/tools/sql-injection-test.phpउपयोग करके देखें: वेब यातायात रिकॉर्डर, वेब मकड़ी, हैश कैलकुलेटर, और इस तरह के एसक्यूएल इंजेक्शन और पार के रूप में आम वेब अनुप्रयोग हमलों के परीक्षण के लिए एक स्कैनर -साइट स्क्रिप्टिंग

  3. HP WebInspect software [मुक्त नहीं] पैरामीटर इंजेक्शन, क्रॉस-साइट स्क्रिप्टिंग, निर्देशिका जैसे सामान्य वेब हमलों का परीक्षण करता है ट्रैवर्सल, [इसे googling करने का प्रयास करें]

  4. http://portswigger.net/suite/: Burp Suite वेब अनुप्रयोगों पर हमला करने के लिए एक एकीकृत मंच है। इसमें सभी बुर्प टूल्स शामिल हैं जिनमें उनके बीच कई इंटरफेस हैं जो किसी एप्लिकेशन पर हमला करने की प्रक्रिया को सुविधाजनक बनाने और तेज़ करने के लिए डिज़ाइन किए गए हैं। सभी उपकरण HTTP अनुरोध, दृढ़ता, प्रमाणीकरण, अपस्ट्रीम प्रॉक्सी, लॉगिंग, अलर्टिंग और एक्स्टेंसिबिलिटी को संभालने के लिए एक ही मजबूत ढांचे को साझा करते हैं।

+0

सभी लिंक के लिए धन्यवाद, शानदार! – Jack

+0

वेबिनस्पसेक्ट और पैरास समय की बर्बादी हैं, मैंने दूसरों का उपयोग नहीं किया है। – rook

1

आप OWASP पर एक नज़र ले जा सकते हैं।

+0

बहुत बहुत धन्यवाद! :) – Jack

0

एसक्यूएल इंजेक्शन भेद्यता को स्कैन करने के लिए वेबक्रूज़र वेब भेद्यता स्कैनर का उपयोग करें, वेबक्रूज़र न केवल एक वेब सुरक्षा स्कैनिंग टूल है, बल्कि एक स्वचालित एसक्यूएल इंजेक्शन टूल, एक एक्सपीएथ इंजेक्शन टूल, एक एक्सएसएस टूल भी है।

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