এমনটা কি হতে পারে যে আপনার প্রসেসরের গতিই আপনার নিরাপত্তাকে ঝুঁকির মুখে ফেলছে? প্রসেসর কীভাবে তার গতি অর্জন করে তা বুঝতে হলে , আমাদের এটা বিবেচনা করতে হবে যে তারা 'ভবিষ্যৎ অনুমান' করে কাজ করে... না, এগুলো কোনো জাদু নয় বা এদের কাছে কোনো ছোট্ট স্ফটিক গোলকও নেই...
প্রসেসর যেভাবে কাজ করে তা হলো, কোনো প্রোগ্রাম কোন পথে যাবে তা দেখার জন্য অপেক্ষা না করে , চিপটি সম্ভাব্য পথটি অনুমান করে এবং আগে থেকেই তা ভেবে রাখে। যদি অনুমানটি ভুল হয়, তবে কাজটি বাতিল করে দেওয়া হয়, কিন্তু এর চিহ্ন মেমরিতে থেকে যায়। এখানেই স্পেক্টার (Spectre)-এর ভূমিকা শুরু হয় , যা সাম্প্রতিক বছরগুলোতে আবিষ্কৃত সবচেয়ে গুরুত্বপূর্ণ দুর্বলতাগুলোর মধ্যে একটি। এটি আবিষ্কৃত হওয়ার পর থেকে, আক্রমণকারীরা এই চিহ্নগুলো পড়ার কৌশল শিখে ফেলেছে এবং ক্রমশ আরও অত্যাধুনিক সংস্করণ তৈরি করেছে; টন্টো (TONTOU) এই নতুন দুর্বলতাগুলোর মধ্যে একটি।
এমআইটি-র গবেষকরা TONTOU (Time-of-Neutralization to Time-of-Use) নামক একটি অত্যাধুনিক নতুন কৌশল আবিষ্কার করেছেন , যা Spectre v2 দুর্বলতা কাজে লাগিয়ে ইউজার স্পেস থেকে কার্নেল মেমরি পড়ার সুযোগ করে দেয়।
যদিও নির্মাতা ও ডেভেলপাররা বছরের পর বছর ধরে ভবিষ্যদ্বাণীমূলক আক্রমণের বিরুদ্ধে বিভিন্ন সুরক্ষা ব্যবস্থা তৈরি করেছেন, আক্রমণকারীরা নতুন পথ খুঁজে বের করতে সক্ষম হয়েছে, এবং CSAIL-এর এই নতুন গবেষণাটি দেখিয়েছে কীভাবে এই সুরক্ষা ব্যবস্থাগুলোকে পাশ কাটিয়ে যাওয়া যায়।
গবেষকরা আবিষ্কার করেছেন যে, বাফারটি খালি হওয়ার মুহূর্ত এবং পূর্বাভাসগুলো ব্যবহৃত হওয়ার মুহূর্তের মধ্যে একটি অনিবার্য সময়ের ব্যবধান থাকে , এবং এই স্বল্প বিরতির মধ্যেই সিস্টেম ইন্টারাপ্টের মাধ্যমে কোড (কখনও কখনও মাত্র কয়েকটি নির্দেশনা) প্রবেশ করানো হয়, যার ফলে হার্ডওয়্যারকে পুনরায় দূষিত করা এবং গুরুত্বপূর্ণ ডেটা বের করে নেওয়া সম্ভব হয়।
আক্রমণ প্রসঙ্গে: Safe-RET-এ বিঘ্ন ও লঙ্ঘন
এসআরএসও (স্পেকুলেটিভ রিটার্ন স্ট্যাক ওভারফ্লো) দুর্বলতার বিরুদ্ধে এএমডি-র একটি প্রতিরক্ষা ব্যবস্থা রয়েছে , যার নাম সেফারেট। এটি প্রতিটি ব্যবহারের ঠিক আগে প্রেডিকশন মেকানিজমকে পরিষ্কার করে দেয়। এর ফলে দুর্বলতার একটি সুযোগ তৈরি হয় , যা কয়েক দশ ন্যানোসেকেন্ডের মধ্যে কাজে লাগানো যেতে পারে। এত ছোট একটি সুযোগকে আক্রমণ করার জন্য গবেষকরা একটি কৌশল তৈরি করেছেন, যার নাম দিয়েছেন ইন্টারাপ্ট ইনজেকশন।
প্রসেসরগুলো ইন্টারাপ্ট সামলানোর জন্য ক্রমাগত তাদের কাজ থামিয়ে দেয়, এবং সাধারণ প্রোগ্রামগুলো এই টাইমারগুলো কনফিগার করতে পারে । এই বিষয়টি মাথায় রেখে, গবেষকরা একটি টাইমারকে নিখুঁতভাবে সমন্বয় করেন এবং সিপিইউ-এর গতি কমিয়ে দেওয়ার একটি কৌশল ব্যবহার করে প্রসেসরটিকে ঠিক ভুল মুহূর্তে ইন্টারাপ্ট করান । এই ইন্টারাপ্টের সময়, একজন আক্রমণকারী বিপুল সংখ্যক কল জোর করে কার্যকর করতে পারে, যার ফলে অ্যাড্রেস স্ট্যাক ওভারফ্লো হয়ে যায়। যখন এই ত্রুটিপূর্ণ কার্যসম্পাদন শেষ হয়, প্রসেসর প্রসেসটিকে বাতিল করে দেয়, কিন্তু অ্যাক্সেস করা ডেটা শেয়ার্ড ক্যাশে থেকে যায় , যেখান থেকে অ্যাক্সেস টাইম বিশ্লেষণ করে তা বের করে আনা যায়।
বাস্তব সিস্টেমে পাসওয়ার্ড নিষ্কাশন এবং পরীক্ষা
TONTOU-এর ভয়াবহতা তুলে ধরতে, দলটি একটি বর্তমান লিনাক্স কার্নেল চালিত এএমডি সিস্টেমে একটি কার্যকর এক্সপ্লয়েট তৈরি করে। প্রথম বাধাটি ছিল সেই প্রতিরক্ষা ব্যবস্থাটিকে পাশ কাটানো, যা মেমরিতে অপারেটিং সিস্টেমের অবস্থানকে এলোমেলো করে দেয়। তারা দশটি চেষ্টায় এটি করতে সক্ষম হয়, যার প্রতিটি পরীক্ষায় প্রায় নয় মিনিট সময় লেগেছিল।
পরবর্তীতে, তারা একজন অপ্রাধিকারপ্রাপ্ত ব্যবহারকারী হিসেবে রুট পাসওয়ার্ড হ্যাশ নির্ধারণ করার জন্য একটি স্থানীয় আক্রমণ প্রদর্শন করে, এবং ৯১.৯৭% নির্ভুলতার সাথে প্রতি সেকেন্ডে ৫.৪৭ বাইট হারে সফলভাবে ডেটা নিষ্কাশন করে । পরীক্ষাগুলোর ৫০%-এ (যেগুলোর গড় সময় ছিল ১৮ মিনিট), তারা সফলভাবে পাসওয়ার্ড ফাইলের বিষয়বস্তু শনাক্ত ও নিষ্কাশন করতে সক্ষম হয়। যদিও এই গতি ধীর, তবুও একটি সার্ভারকে গুরুতরভাবে ক্ষতিগ্রস্ত করার জন্য তা যথেষ্টের চেয়েও বেশি।
ইন্টেল, এএমডি এবং প্রশমন প্যাচের উপর প্রভাব
দলটি ইন্টেল এবং এএমডি প্রসেসরের চারটি প্রজন্ম পরীক্ষা করে এবং উভয় আর্কিটেকচারেই পূর্বাভাসে ব্যর্থতা অর্জন করে। যদিও এই কৌশলটি এএমডি-র জেন ১ থেকে ৪ সিরিজের ক্ষেত্রে কার্যকর প্রমাণিত হয়েছে , ইন্টেল চিপগুলিতে এই আক্রমণ দুটি ভিন্ন সুরক্ষা ব্যবস্থাকে বাইপাস করতে সক্ষম হয় । তবে, ইন্টেলের বিভিন্ন প্রজন্মের মধ্যে অসঙ্গত আচরণ লক্ষ্য করা গেছে , যা থেকে বোঝা যায় যে হার্ডওয়্যারে নামমাত্র প্রতিরক্ষা ব্যবস্থাগুলো ভিন্নভাবে প্রয়োগ করা হয়েছে।
সমাধান হিসেবে, গবেষকরা ইন্টারাপ্ট শেষ হওয়ার পর প্রেডিকশন সিস্টেমটি দ্বিতীয়বার ক্লিয়ার করার পরামর্শ দিয়েছেন। যদিও এই ব্যবস্থাটি এএমডি-র জন্য কার্যকর বলে মনে হচ্ছে, এটি ইন্টেলের জন্য হিতে বিপরীত হতে পারে, কারণ এই আক্রমণটি ইন্টারাপ্টের একটি সামঞ্জস্যপূর্ণ অবস্থা রেখে যাওয়ার উপর নির্ভর করে এবং এটি আক্রমণটিকে আরও নির্ভরযোগ্য করে তুলতে পারে।
গবেষকরা ফেব্রুয়ারির শুরুতে এএমডি এবং ইন্টেলকে এবং মার্চ মাসে লিনাক্স কার্নেল রক্ষণাবেক্ষণকারীদের অবহিত করেন। ফলস্বরূপ, দুর্বলতাটি প্রশমিত করার জন্য ব্লকিং কোডটি ৫ই আগস্ট লিনাক্স কার্নেলে অন্তর্ভুক্ত করা হয়।
অবশেষে, আপনি যদি আরও জানতে আগ্রহী হন, তাহলে নিচের লিঙ্কে বিস্তারিত তথ্য পেয়ে যাবেন ।