जाहिरात बंद करा

काही दिवसांपूर्वी ॲपलने शंभरावा रिलीज केला iOS 7.0.6 अद्यतन, ज्याच्या प्रकाशनाबद्दल आम्ही तुम्हाला माहिती दिली. जुन्या iOS 6 (आवृत्ती 6.1.6) आणि ऍपल टीव्ही (आवृत्ती 6.0.2) साठी देखील अद्यतन जारी करण्यात आल्याचे अनेकांना आश्चर्य वाटले असेल. हा एक सिक्युरिटी पॅच आहे, त्यामुळे ऍपलला त्याच्या डिव्हाइसेसचा फक्त काही भाग अपडेट करणे परवडत नाही. इतकेच काय, या समस्येचा OS X वर देखील परिणाम होतो. Apple चे प्रवक्ते Trudy Muller यांच्या मते, 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 मधील या विशिष्ट दोषाचा वापर करून हल्ला केवळ तेव्हाच अंमलात आणला जाऊ शकतो जर हल्लेखोर आणि पीडित व्यक्ती एकाच नेटवर्कवर असतील. त्यामुळे, तुम्ही तुमचे iOS अपडेट केले नसल्यास सार्वजनिक वाय-फाय नेटवर्क टाळणे चांगले. मॅक वापरकर्त्यांनी तरीही ते कोणत्या नेटवर्कशी कनेक्ट होतात आणि त्या नेटवर्कवर कोणत्या साइटला भेट देतात याबद्दल सावधगिरी बाळगली पाहिजे.

OS X आणि iOS च्या अंतिम आवृत्त्यांमध्ये अशा घातक त्रुटीमुळे ते कसे बनले असेल हे समजण्यापलीकडे आहे. हे खराब लिखित कोडची विसंगत चाचणी असू शकते. याचा अर्थ प्रोग्रामर आणि परीक्षक दोघेही चुका करतील. Apple साठी हे संभवनीय वाटू शकते, आणि त्यामुळे हा बग प्रत्यक्षात मागच्या दाराने, तथाकथित आहे असा अंदाज बांधला जात आहे. मागे दरवाजा. सर्वोत्कृष्ट बॅकडोअर्स सूक्ष्म चुकांसारखे दिसतात असे ते म्हणतात ते काही कारणासाठी नाही. तथापि, हे केवळ पुष्टी नसलेले सिद्धांत आहेत, म्हणून आम्ही असे गृहीत धरू की कोणीतरी फक्त चूक केली आहे.

तुमची प्रणाली किंवा ब्राउझर या बगपासून सुरक्षित आहे की नाही याची तुम्हाला खात्री नसल्यास, पेजला भेट द्या gotofail.com. तुम्ही खालील इमेजमध्ये पाहू शकता, OS X Mavericks 7.0.1 मधील Safari 10.9.1 मध्ये एक बग आहे, तर IOS 7.0.6 मधील Safari मध्ये सर्वकाही ठीक आहे.

संसाधने: मी अधिक, रॉयटर्स
.