2010-10-06 11 views
6

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

साथ काम करते समय किस सुरक्षा समस्या को संबोधित करने की आवश्यकता है Google ऐप इंजन?

क्या वे वही समस्याएं हैं जो अन्य अनुप्रयोगों - जैसे अन्य भाषाओं में लिखे गए अनुप्रयोगों या अन्य तरीकों से होस्ट किए गए हैं - का सामना करना पड़ रहा है?

संपादित करें: मैंने कुछ खोज किया है ऐसा लगता है कि मुझे XSS and Injection. के लिए इनपुट को स्वच्छ करने की आवश्यकता है अन्य बातों पर विचार करने के लिए क्या हैं?

उत्तर

6

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

तो जीक्यूएल के खिलाफ क्वेरी इंजेक्शन को रोकने के लिए, GqlQuery के पैरामीटर-बाध्यकारी इंटरफ़ेस का उपयोग करें। एचटीएमएल (एक्सएसएस के लिए अग्रणी) के खिलाफ मार्कअप इंजेक्शन को रोकने के लिए, आप जिस भी टेम्पलेटिंग भाषा का उपयोग कर रहे हैं, उसकी HTML-escaping सुविधा का उपयोग करें। उदाहरण के लिए, Django टेम्पलेट्स के लिए, |escape ... या, बेहतर, {% autoescape on %} ताकि आप गलती से किसी को याद न करें।

+0

महान जानकारी के लिए धन्यवाद, यह वही चीज है जिसे मैं खोज रहा हूं। क्या ऐसी अन्य भेद्यताएं हैं जिन पर विचार करने की आवश्यकता है? – Ocimus

+2

अच्छा, निश्चित रूप से, निर्भर करता है कि आप क्या कर रहे हैं, है ना? यदि आप लोगों को लिंक सबमिट करने दे रहे हैं, तो आप बेहतर जांच लेंगे कि यूआरएल 'http' और' जावास्क्रिप्ट 'जैसी ज्ञात अच्छी योजना है ... यदि आप फ़ाइल अपलोड की अनुमति देते हैं तो आप उन्हें सुरक्षित नाम के तहत बेहतर ढंग से सहेज लेंगे और उपयोगकर्ता द्वारा सबमिट नहीं किया गया ... उपयोगकर्ता द्वारा सबमिट की गई फ़ाइलों को अपने मुख्य होस्टनाम से सेवा न दें ... उपयोगकर्ता द्वारा सबमिट किए गए डेटा को 'system' कमांड या' eval' ... आदि आदि में उपयोग न करें – bobince

+3

अभ्यास में , जीक्यूएल इंजेक्शन हमले लगभग असंभव हैं भले ही आपका कोड काफी भयानक है, क्योंकि हमलावर एक चयन कथन में अतिरिक्त मानदंड जोड़ने तक ही सीमित होगा। ऐसा नहीं है कि आपको पैरामीटर बाध्यकारी का उपयोग नहीं करना चाहिए, लेकिन यह SQL के साथ एक समस्या के रूप में गंभीर नहीं है। – geoffspear

-2

सामान्यतः वही समस्याएं हैं। इसके अलावा Google आपके कोड को "जानता है" और सिद्धांत में कुछ भी मॉनीटर कर सकता है जो कोड कर रहा है। इसलिए यदि आप उन्हें अपना डेटा पढ़ने से रोकना चाहते हैं तो यह बहुत मुश्किल है। लेकिन मुझे विश्वास नहीं है कि उनके पास आपके कोड और डेटा को बंद करने के लिए समय और संसाधन हैं।

+0

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

+2

मैं कहना चाहता था कि Google Apps इंजन के लिए कोई विशेष सुरक्षा जोखिम नहीं है जिसका आप विरोध कर सकते हैं। Google बस आपके कोड को होस्ट करता है क्योंकि कोई अन्य होस्टर करेगा। अगर उनके सिस्टम में छेद है तो आप इसके बारे में कुछ भी नहीं कर सकते हैं। – kasten

+0

ठीक है धन्यवाद, अब मैं समझता हूं। – Ocimus