Case Study

Single Point of Failure in Kernel Space

Single Point of Failure in Kernel Space

গতবছরের একটা হিস্টরিক আউটেজের ইন্সিডেন্ট মনে আছে নিশ্চয়ই? গতবছর জুলাই মাসে আন্দোলনের মধ্যে ইন্টারনেট ব্ল্যাকআউট এর পরপরি আমরা ওয়ার্ল্ডওয়াইড একটা আউটেজ দেখছিলাম। সারাবিশ্বের প্রায় ৮.৫ মিলিয়ন উইন্ডোজ সিস্টেম ক্র্যাশ করেছিল। সেই অতি পরিচিত ব্লু স্ক্রিন ভাসছিল সব জায়গায়।

2024 CrowdStrike-related IT outages - Wikipedia

আচ্ছা এটার কারণ কি ছিলো? মূল সমস্যাই কি উইন্ডোজ আপডেট? Let's see

কার্নাল স্পেসে কার্নাল ছাড়াও কার্নাল মডিউলস লোড হয়। ডিভাইস ড্রাইভার হচ্ছে এক ধরনের কার্নাল মডিউল। ধরুন আজকে নতুন একটা গ্রাফিক্স কার্ড, বা প্রিন্টার এর মডেল চলে আসলো। স্বাভাবিক ভাবেই সেই এক্সটারনাল হার্ডওয়ার কে বর্তমানের কার্নাল কিভাবে ট্রিট করবে এটা জানার কথা না রাইট? ইন্জিনিয়াররা তো সব ধরনের হার্ডওয়ার সাপোর্ট দিতে পারবে না এটা প্র্যাক্টিকাল না। এই কারণে এই দায়িত্ব দেওয়া হয় হার্ডওয়ার ম্যানুফ্যাকচারার কে। তারাই আমাদের একধরনের সফটওয়ার আর স্পেসিফিক ভাবে বললে কার্নাল মডিউল বা ড্রাইভার দিয়ে দেয় যেটা ইন্সটল করলে আমাদের কার্নাল ওই ড্রাইভার এর মাধ্যমে হার্ডওয়ারের সাথে কমিউনিকেট করে।

কার্নাল সহ এইধরনের সফটওয়ারে গুলো মেমোরির একই অ্যাড্রেস স্পেসে থাকে। এখন এই অ্যাড্রেস স্পেস কি? আমরা জানি মেমোরি গুলোকে ব্লক বাই ব্লক ভাগ করা থাকে আর প্রত্যেকটা ব্লক এর একটা অ্যাড্রেস থাকে যেমন: 0x000001, 0x000002। তাহলে 0x0000001 থেকে 0x0100000 রেঞ্জ হচ্ছে এড্রেস স্পেস। কার্নাল এর প্রসেস এবং এই ধরনের ড্রাইভারস এর প্রসেস একই অ্যাড্রেস স্পেসে লোড হয়। যার কারণে SPOF হওয়ার চান্স অনেক। কোনো কারণে এই অ্যাড্রেস স্পেসে থাকা কোনো প্রসেস ক্র্যাশ করলে এই স্পেসের সকল প্রসেস গুলোই ক্র্যাশ করবে। যার জ্বলন্ত উদাহরণ ছিল সেই জুলাই মাসের বিশ্বব্যাপি হিস্টরিক আউটেজ। এখানে আর একটা প্রশ্নের উদয় হয়, একটি প্রসেস ক্র্যাশ করলে একই এড্রেস স্পেসে থাকা অন্যান্য প্রসেস গুলোও কেন ক্র্যাশ করে? অন্য কোনদিন উত্তর খুঁজবো ইনশাআল্লাহ্‌।

এই সমস্যা হয়েছি মূলত CrowdStrike প্ল্যাটফর্মের এর Falcon Sensor এর সিস্টেম আপডেটের ফলে হওয়া ক্র্যাশ থেকে। CrowdStrike কি বা কারা, এক কোথায় বললে সাইবার সিকিউরিটি সফটওয়ার। এন্টি ভাইরাস এর মতো। এটার Falcon sensor/agent মূলত একটা ড্রাইভার বা কার্নাল মডিউল যা কার্নাল স্পেসে রান হয়। যেহুতু কার্নাল স্পেসে থাকা সব প্রসেস একই এড্রেস স্পেসে থাকে তাই সেই Falcon sensor এর ক্র্যাশ সারা দুনিয়ার মোটামুটি ৮.৫ মিলিয়ন উইন্ডোজ কে সাথে সাথে ডাউন করে দেয়। যেটা হিস্টোরিতে আগে কখনও হয় নি।

Posted on:  

Last Updated: 2 days ago

Share this post

Other Blog
Related Posts

No related posts available.

📬 Let's keep in touch

Join our mailing list for the latest updates

Resend verification link

Something went wrong!
Please try again.

Please enter your name.

Please enter a valid email address.