বিজ্ঞাপন বন্ধ করুন

কয়েকদিন আগে অ্যাপল শততম রিলিজ করেছে iOS 7.0.6 আপডেট, মুক্তির বিষয়ে আমরা আপনাকে অবহিত করেছি। অনেকেই হয়তো অবাক হয়েছেন যে আপডেটটি পুরানো iOS 6 (সংস্করণ 6.1.6) এবং Apple TV (সংস্করণ 6.0.2) এর জন্যও প্রকাশিত হয়েছিল। এটি একটি নিরাপত্তা প্যাচ, তাই অ্যাপল তার ডিভাইসগুলির শুধুমাত্র একটি অংশ আপডেট করার সামর্থ্য রাখে না। আরও কি, এই সমস্যাটি ওএস এক্সকেও প্রভাবিত করে। অ্যাপলের মুখপাত্র ট্রুডি মুলারের মতে, যত তাড়াতাড়ি সম্ভব একটি ওএস এক্স আপডেট প্রকাশ করা হবে।

কেন এই আপডেট ঘিরে এত হাইপ আছে? সিস্টেমের কোডের একটি ত্রুটি 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 আপডেট না করে থাকেন তবে সর্বজনীন Wi-Fi নেটওয়ার্কগুলি এড়িয়ে চলাই ভাল। ম্যাক ব্যবহারকারীদের এখনও সতর্ক হওয়া উচিত যে তারা কোন নেটওয়ার্কের সাথে সংযোগ স্থাপন করে এবং তারা সেই নেটওয়ার্কগুলিতে কোন সাইটগুলি পরিদর্শন করে৷

এটা বিশ্বাসের বাইরে যে এই ধরনের একটি মারাত্মক ত্রুটি কীভাবে এটিকে OS X এবং iOS এর চূড়ান্ত সংস্করণে পরিণত করতে পারে। এটি খারাপভাবে লিখিত কোডের অসামঞ্জস্যপূর্ণ পরীক্ষা হতে পারে। এর মানে হবে যে প্রোগ্রামার এবং পরীক্ষক উভয়ই ভুল করবে। অ্যাপলের জন্য এটি অসম্ভাব্য বলে মনে হতে পারে, এবং তাই জল্পনা যে এই বাগটি আসলে একটি পিছনের দরজা, তথাকথিত। পিছনের দরজা. এটা কিছুর জন্য নয় যে তারা বলে যে সেরা ব্যাকডোরগুলি সূক্ষ্ম ভুলের মতো দেখায়। যাইহোক, এইগুলি শুধুমাত্র অপ্রমাণিত তত্ত্ব, তাই আমরা ধরে নেব যে কেউ কেবল ভুল করেছে।

যদি আপনি নিশ্চিত না হন যে আপনার সিস্টেম বা ব্রাউজার এই বাগ থেকে প্রতিরোধী কিনা, পৃষ্ঠাটি দেখুন gotofail.com. আপনি নীচের চিত্রগুলিতে দেখতে পাচ্ছেন, OS X Mavericks 7.0.1-এর Safari 10.9.1-এ একটি বাগ রয়েছে, যখন iOS 7.0.6-এর Safari-এ সবকিছু ঠিক আছে৷

উত্স: আমি আরও, রয়টার্স
.