iOS Serialisation and Encoding
कोड और अधिक जानकारी https://mas.owasp.org/MASTG/iOS/0x06h-Testing-Platform-Interaction/#object-persistence.
iOS विकास में ऑब्ज
NSSecureCoding
के साथ सुरक्षा को बढ़ावा देना
NSSecureCoding
के साथ सुरक्षा को बढ़ावा देनाहमलावार तकनीकों को कम करने के लिए जहां हमलावार पहले से बनाए गए ऑब्जेक्ट में डेटा इंजेक्ट करते हैं, NSSecureCoding
एक बढ़ाया गया प्रोटोकॉल प्रदान करता है। NSSecureCoding
को स्वीकृति देने वाली कक्षाएं डिकोडिंग के दौरान ऑब्जेक्ट के प्रकार की पुष्टि करनी चाहिए, यह सुनिश्चित करना महत्वपूर्ण है कि केवल अपेक्षित ऑब्जेक्ट प्रकार निर्मित हों। हालांकि, महत्वपूर्ण है यह ध्यान देना कि जबकि NSSecureCoding
प्रकार सुरक्षा को बढ़ाता है, यह डेटा को एन्क्रिप्ट नहीं करता या इसकी पूर्णता सुनिश्चित नहीं करता, इसलिए संवेदनशील जानकारी की सुरक्षा के लिए अतिरिक्त उपाय आवश्यक है:
डेटा आर्काइविंग NSKeyedArchiver
के साथ
NSKeyedArchiver
के साथNSKeyedArchiver
और इसका सहकारी, NSKeyedUnarchiver
, ऑब्जेक्ट्स को एक फ़ाइल में एन्कोड करने और बाद में उन्हें पुनः प्राप्त करने की सुविधा प्रदान करते हैं। यह तंत्र ऑब्जेक्ट्स को स्थायी रूप से सुरक्षित करने के लिए उपयोगी है:
Codable
का उपयोग सरल सिरियलाइज़ेशन के लिए
Codable
का उपयोग सरल सिरियलाइज़ेशन के लिएस्विफ्ट का Codable
प्रोटोकॉल Decodable
और Encodable
को जोड़ता है, जो String
, Int
, Double
आदि जैसे ऑब्ज
यह दृष्टिकोण सीधे सीरीयलाइजेशन का समर्थन करता है और प्रॉपर्टी सूचियों और JSON से डेटा हैंडलिंग को बढ़ावा देता है।
JSON और XML एन्कोडिंग विकल्प
नेटिव समर्थन के अतिरिक्त, कई थर्ड-पार्टी लाइब्रेरी JSON और XML एन्कोडिंग/डिकोडिंग क्षमताएँ प्रदान करती हैं, प्रत्येक के अपने प्रदर्शन विशेषताएँ और सुरक्षा विचार होते हैं। विशेष रूप से XXE (XML External Entities) हमलों जैसी भेदभाव से बचने के लिए पार्सर को विदेशी एंटिटी प्रोसेसिंग रोकने के लिए कॉन्फ़िगर करके इन लाइब्रेरीज़ का चयन सावधानीपूर्वक करना आवश्यक है।
सुरक्षा विचार
डेटा को सीरीयलाइज करते समय, विशेष रूप से फ़ाइल सिस्टम में, संवेदनशील जानकारी के संभावित समावेश के बारे में सतर्क रहना महत्वपूर्ण है। सीरीयलाइज़ किए गए डेटा को अगर अवैध रूप से हैंडल किया जाए या अधिकारहीन क्रियाओं या डेटा लीकेज़ जैसे जोखिमों को एप्लिकेशन के सामने खोल सकता है। सीरीयलाइज़ किए गए डेटा को एन्क्रिप्ट और साइन करना सुरक्षा को बढ़ाने के लिए सिफारिश किया जाता है।
संदर्भ
Last updated