2009-02-06 9 views
7

मैं एक वेब डेवलपर हूं जो सुरक्षा के बारे में बहुत सचेत है और मेरे वेब एप्लिकेशन को यथासंभव सुरक्षित बनाने की कोशिश करता है।अपना खुद का एप्लिकेशन हैकिंग

मैंने कभी भी अपने विंडोज़ अनुप्रयोगों को सी # में लिखना शुरू कर दिया है और जब यह मेरे सी # एप्लिकेशन की सुरक्षा का परीक्षण करता है, तो मैं वास्तव में केवल नौसिखिया हूं।

बस सोच रहा है कि किसी के पास अपने स्वयं के विंडोज़ एप्लिकेशन को हैक करने और सुरक्षित कोड लिखने के बारे में कोई अच्छा ट्यूटोरियल/रीडमे है।

+1

मुझे लगता है कि आपका मतलब है ** ** क्रैकिंग **, ** हैकिंग ** आप अपने आवेदन पर काम करते समय करते हैं। –

उत्तर

4

माइकल हावर्ड द्वारा पुस्तकें एक अच्छी शुरुआत बिंदु हैं;

वहाँ माइकल हावर्ड के ब्लॉग से लिंक का भार और रोचक लेख है (कई भाषाओं में उदाहरण के साथ) here

वहाँ Microsoft से एक दिलचस्प PowerPoint प्रस्तुति खतरा के बारे में है आकलन, जोखिम और एएसपी here

2

बफर ओवरफ्लो, कोड इंजेक्शन, सत्र हाईजैकिंग एट को रोकने के सभी स्पष्ट उत्तरों के अलावा। अल। आपको अपना कोड/सॉफ़्टवेयर जांचने के लिए किसी और को ढूंढना चाहिए क्योंकि आप केवल अपने सॉफ़्टवेयर को हैक करने के तरीकों के बारे में सोच सकते हैं जो आपको पता है कि कैसे रोकें। केवल इसलिए कि आप अपने सॉफ़्टवेयर को हैक करने का कोई तरीका नहीं ढूंढ सकते हैं जिसका मतलब यह नहीं है कि कोई और नहीं कर सकता है।

0

अपने जीत फॉर्म को सुरक्षित करने के लिए एप्लिकेशन इसे खोलें और lambda उपयोगकर्ता को जो कुछ भी नहीं करना चाहिए उसे करने का प्रयास करें! मैं समझाएंगे:

यदि आप "का कहना है कि प्रवेश yes या no" क्योंकि जो कुछ उपयोगकर्ताओं को कुछ स्टैक ट्रेस कि दिलचस्प हो सकता है खोजने की कोशिश करने के लिए क्या है कि, एक-Z, 0-9 के साथ प्रयास करें। तो हर जगह वैधता डालें।

डेटाबेस से कनेक्शन से सावधान रहें, लेकिन यदि आप वेब देव से आते हैं तो आपको मुझसे ज्यादा जागरूक होना चाहिए :)।

सबसे कठिन हिस्सा मेमोरी लीक या उस तरह की चीजों के बारे में देखना है, लेकिन यह बड़े बड़े ऐप्स या अच्छी तरह से विकसित ऐप्स में नहीं है।

2

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

यह कई कारणों से है। आप पहले से ही अपने सॉफ्टवेयर के बारे में एक निश्चित तरीके से सोचते हैं। आप इसके साथ बातचीत करने के विशिष्ट तरीकों के बारे में सोचते हैं, और आप जानते हैं कि इससे सर्वश्रेष्ठ कैसे प्राप्त करें। आप इसका शोषण करने के तरीकों के बारे में नहीं सोचते हैं, और सॉफ्टवेयर के साथ ऐसा करना एक कठिन बात है जिसे आप घनिष्ठ परिचित हैं।

एक और समस्या यह है कि इस बिंदु से कार्य करने के लिए बहुत बड़ा कार्य है। आपको जो भी समस्याएं मिलती हैं, वे किसी अन्य समस्या को खोल सकते हैं। एक प्रणाली व्यापक सुरक्षा जांच पर्याप्त मात्रा में पर्याप्त नहीं है।

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

इसके बाद मुझे लगता है कि यह किसी भी सुरक्षा चिंताओं को तुरंत प्रतिसाद देने का विषय है जिसे आप जानते हैं।

1

रॉस एंडरसन की Security Engineering पुस्तक पढ़ने से आप बहुत खराब कर सकते हैं। पहला संस्करण पीडीएफ के रूप में डाउनलोड करने योग्य है और यह एक अच्छा पठन है। मैंने दूसरे संस्करण को नहीं पढ़ा है, लेकिन मुझे संदेह है कि यह बेहतर है और इसमें अधिक उपहार हैं।

ध्यान दें कि यह एक पुस्तक है जो बताती है कि शुरुआत से सुरक्षा कैसे बनाएं, सुरक्षा को कैसे तोड़ना है, लेकिन मिश्रित सुरक्षा दोषों के प्रदर्शन से आपको एक अच्छा विचार देना चाहिए कि कहां देखना शुरू करना है।

1

छोटी चीजें जिन्हें मैंने अपने अनुभव के माध्यम से पार किया है।

  • गतिशील एसक्यूएल का उपयोग न करें, तो आप एसक्यूएल इंजेक्शन के लिए कमजोर हैं। इसके बजाय पैरामीटर के साथ एसक्यूएल प्रश्नों का उपयोग करें।
  • उपयोगकर्ता_आईडी = 1, 2, 3 इत्यादि जैसी वृद्धिशील आईडी नहीं है और फिर उस URL का उपयोग करें, कुछ.aspx? User_id = 1, तो मैं अगली आईडी और सत्र आशा का अनुमान लगा सकता हूं। खातों के लिए वही और क्या संवेदनशील है।
  • एक्सएसएस, (क्रॉस साइट स्क्रिप्टिंग) के लिए देखें। यदि आप उपयोगकर्ता इनपुट स्वीकार करते हैं और इसे सीधे स्टोर करते हैं, तो सुनिश्चित करें कि वे उनके नाम या कुछ के लिए सम्मिलित चेतावनी() नहीं जा सकते हैं।

यह किसी भी पूर्ण सूची से नहीं है। हाल ही में जो सामान मैंने चलाया है।

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

  • कोई संबंधित समस्या नहीं^_^