विज्ञापन बन्द गर्नुहोस्

केही दिन अघि एप्पलले सयौं रिलिज गरेको थियो iOS 7.0.6 अपडेट, जसको रिलीजको बारेमा हामीले तपाईंलाई जानकारी गराएका छौं। धेरैलाई छक्क परेको हुन सक्छ कि अपडेट पुरानो iOS 6 (संस्करण 6.1.6) र Apple TV (संस्करण 6.0.2) को लागि पनि जारी गरिएको थियो। यो एक सुरक्षा प्याच हो, त्यसैले Apple ले आफ्ना यन्त्रहरूको एक भाग मात्र अद्यावधिक गर्न खर्च गर्न सक्दैन। अझ के हो भने, यो समस्याले OS X लाई पनि असर गर्छ। एप्पलका प्रवक्ता ट्रुडी मुलरका अनुसार OS X अपडेट सकेसम्म चाँडो जारी गरिनेछ।

यस अपडेटको वरिपरि किन यति धेरै प्रचार छ? प्रणालीको कोडमा त्रुटिले सर्भर प्रमाणीकरणलाई ISO/OSI सन्दर्भ मोडेलको रिलेशनल लेयरमा सुरक्षित प्रसारणमा बाइपास गर्न अनुमति दिन्छ। विशेष रूपमा, सर्भर प्रमाणपत्र प्रमाणिकरण हुने भागमा गल्ती खराब SSL कार्यान्वयन हो। म थप व्याख्यामा जानु अघि, म आधारभूत अवधारणाहरू वर्णन गर्न रुचाउँछु।

SSL (Secure Socket Layer) सुरक्षित सञ्चारको लागि प्रयोग गरिने प्रोटोकल हो। यसले गुप्तिकरण र संचार पक्षहरूको प्रमाणीकरणको माध्यमबाट सुरक्षा प्राप्त गर्दछ। प्रमाणीकरण पेश गरिएको पहिचानको प्रमाणीकरण हो। वास्तविक जीवनमा, उदाहरणका लागि, तपाईंले आफ्नो नाम (पहिचान) भन्नुहुन्छ र आफ्नो आईडी देखाउनुहोस् ताकि अर्को व्यक्तिले यसलाई प्रमाणित गर्न सकून् (प्रमाणीकरण गर्नुहोस्)। प्रमाणीकरण त्यसपछि प्रमाणीकरणमा विभाजित हुन्छ, जुन आईडी कार्ड वा पहिचानको उदाहरण हो, जब प्रश्नमा रहेको व्यक्तिले तपाइँको पहिचानलाई तपाइँले पहिले नै प्रस्तुत नगरी तपाइँको पहिचान निर्धारण गर्न सक्छ।

अब म संक्षिप्त रूपमा सर्भर प्रमाणपत्र प्राप्त गर्नेछु। वास्तविक जीवनमा, तपाईंको प्रमाणपत्र हुन सक्छ, उदाहरणका लागि, एक आईडी कार्ड। सबै कुरा असममित क्रिप्टोग्राफीमा आधारित छ, जहाँ प्रत्येक विषयसँग दुईवटा कुञ्जीहरू छन् - निजी र सार्वजनिक। सम्पूर्ण सुन्दरता यस तथ्यमा निहित छ कि सन्देशलाई सार्वजनिक कुञ्जीसँग इन्क्रिप्ट गर्न सकिन्छ र निजी कुञ्जीसँग डिक्रिप्ट गर्न सकिन्छ। यसको मतलब निजी कुञ्जीको मालिकले मात्र सन्देश डिक्रिप्ट गर्न सक्छ। एकै समयमा, दुबै संचार पक्षहरूलाई गोप्य कुञ्जी हस्तान्तरणको बारेमा चिन्ता लिनु आवश्यक छैन। प्रमाणपत्र तब विषयको सार्वजनिक कुञ्जी हो जुन यसको जानकारीको साथ पूरक हुन्छ र प्रमाणीकरण प्राधिकरणले हस्ताक्षर गरेको हुन्छ। चेक गणतन्त्रमा, प्रमाणीकरण अधिकारीहरू मध्ये एक हो, उदाहरणका लागि, Česká Pošta। प्रमाणपत्रको लागि धन्यवाद, आईफोनले प्रमाणित गर्न सक्छ कि यो वास्तवमै दिइएको सर्भरसँग सञ्चार गरिरहेको छ।

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

static OSStatus
SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa,
SSLBuffer signedParams, uint8_t *signature, UInt16 signatureLen)

{
   OSStatus err;
   …

   if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
       goto fail;
   if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
       goto fail;
       goto fail;
   if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
       goto fail;
   …

fail:
   SSLFreeBuffer(&signedHashes);
   SSLFreeBuffer(&hashCtx);
   return err;
}

दोस्रो अवस्थामा if तपाईंले तल दुई आदेशहरू देख्न सक्नुहुन्छ असफल भयो;। र त्यो बाधा हो। यो कोडले प्रमाणपत्र प्रमाणिकरण गरिनु पर्ने चरणमा दोस्रो आदेश कार्यान्वयन गराउने कारण बनाउँछ असफल भयो;। यसले तेस्रो अवस्था छोड्नको लागि कारण बनाउँछ if र त्यहाँ कुनै पनि सर्भर प्रमाणिकरण हुनेछैन।

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

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

यदि तपाइँ निश्चित हुनुहुन्न कि तपाइँको प्रणाली वा ब्राउजर यो बगबाट प्रतिरक्षा छ भने, पृष्ठमा जानुहोस् gotofail.com। तपाईले तलका छविहरूमा देख्न सक्नुहुन्छ, OS X Mavericks 7.0.1 मा Safari 10.9.1 मा बग छ, जबकि IOS 7.0.6 मा Safari मा सबै ठीक छ।

स्रोतहरू: iMore, रायटर
.