দুটি নতুন গুরুতর সুরক্ষা ত্রুটি আবিষ্কার করা হয়েছে, স্পেকটার এবং মেল্টডাউন ।
রাস্পবেরি পাই স্পেক্টর এবং / অথবা মেল্টডাউনের পক্ষে ঝুঁকিপূর্ণ?
দুটি নতুন গুরুতর সুরক্ষা ত্রুটি আবিষ্কার করা হয়েছে, স্পেকটার এবং মেল্টডাউন ।
রাস্পবেরি পাই স্পেক্টর এবং / অথবা মেল্টডাউনের পক্ষে ঝুঁকিপূর্ণ?
উত্তর:
এআরএম তাদের নিজস্ব মতে , পাই 4 এর আগে সমস্ত মডেলগুলিতে ব্যবহৃত প্রসেসর কোরগুলি ঝুঁকিপূর্ণ নয় ।
আর্ম প্রসেসরের সিংহভাগ এই পার্শ্ব-চ্যানেল অনুমান ব্যবস্থার কোনও প্রকারের দ্বারা প্রভাবিত হয় না। আর্ম-ডিজাইন করা প্রসেসরের সংক্ষিপ্ত আকারের ছোট উপসেটের একটি নির্দিষ্ট তালিকা নীচে পাওয়া যাবে। [টেবিলের জন্য লিঙ্ক দেখুন]
পুরানো পিস দ্বারা ব্যবহৃত প্রসেসরের কোরগুলি হ'ল:
পাই 1 এবং জিরো (ডাব্লু) : এআরএম 11
পাই 2 ভি 1 : এআরএম কর্টেক্স-এ 7
পাই 2 ভি 1.2 এবং পাই 3 : এআরএম কর্টেক্স-এ 53
উপরোক্ত কোরগুলির কোনওটিই আক্রমণটির কোনও সংস্করণের পক্ষে সংবেদনশীল হিসাবে তালিকাভুক্ত নয় (এগুলি মোটেও তালিকাভুক্ত নয়, কারণ এই আক্রমণগুলির কোনও পরিচিত দুর্বলতা নেই)।
রাস্পবেরী Pi 4 ব্যবহার কর্টেক্স-A72 , যা প্রবন হিসেবে তালিকাভুক্ত করা হয় এবং 4 রূপগুলো 1, 2, 3a হিসেবে বিবৃত রাস্পবেরী Pi 4 স্পেকটের কীর্তিকলাপ প্রবন আছে কি? , রাস্পবিয়ান এই দুর্বলতার জন্য সফ্টওয়্যার প্রশমনগুলি রয়েছে, তাই শোষণের ঝুঁকি কম হওয়া উচিত। অন্যান্য অপারেটিং সিস্টেমে যথাযথ প্রশমিততা নাও থাকতে পারে এবং এআরএম বলেছে যে কর্টেক্স-এ 72 এর জন্য একটি হার্ডওয়্যার প্রশমন প্রকাশ করা হয়েছে, এটি পাই 4-তে প্রয়োগ হয়েছে কিনা তা স্পষ্ট নয়।
নোট করুন যে ভেরিয়েন্টস 1 এবং 2 (সিভিই-2017-5753 এবং সিভিই-2017-5715) স্পেকটার হিসাবে পরিচিত এবং ভেরিয়েন্টস 3 (সিভিই-2017-5754) এবং 3 এ (এআরএম দ্বারা তদন্ত সম্পর্কিত একটি সম্পর্কিত আক্রমণ) বলা হয় মেল্টডাউন । সুতরাং, পাই 4 এর আগে রাস্পবেরি পাই ডিভাইসের কোনওটিই স্পেকটার বা মেল্টডাউনের পক্ষে দুর্বল বলে বিশ্বাস করা হয় না।
পাই (সমস্ত সংস্করণ) দুর্বল নয়।
স্পেকটার এবং মেল্টডাউন উভয়েরই বাইরে-অর্ডার কার্যকর হওয়া দরকার। কর্টেক্স-A7 গোড়ার দিকে পাই 2 এবং ব্যবহৃত কর্টেক্স A53 পরে পাই 2 এবং পাই 3 ব্যবহৃত একটি কঠোরভাবে ইন-অর্ডার আর্কিটেকচার। ARM11 পাই 1 ব্যবহৃত একটি উপায় যে স্পেকটের বা মেল্টডাউন অনুমতি দেয় কাজ করার জন্য আংশিকভাবে আউট-অফ-অর্ডার কিন্তু নয়।
এআরএম এটি নিশ্চিত করে : কেবলমাত্র এআরএম প্রসেসরের একটি খুব সীমিত সাবসেটের এমন হার্ডওয়্যার রয়েছে যা তাদের স্পেকটারের জন্য ঝুঁকিপূর্ণ করে তোলে, এমনকি আরও সীমিত উপসেটটি মেল্টডাউনের পক্ষে ঝুঁকিপূর্ণ এবং বিশ্বাস করা হয় যে তারা সবাই হুমকির প্রশ্বাসের অনুমতি দেয়।
আমি এই আমার ভিন্ন নিতে প্রস্তাব দিতে চাই।
মেল্টডাউন সম্পর্কে, এটি কিছু প্রসেসরের মধ্যে একটি খুব নির্দিষ্ট দুর্বলতা, সুতরাং যদি এআরএম বলে যে রাস্পবেরি পাইতে সিপিইউ দুর্বল নয়, তবে সম্ভবত এটি বিশ্বাস করা যেতে পারে।
তবে স্পেক্টর আরও সাধারণ দুর্বলতা। এখনও অবধি কেবল দুটি বৈকল্পিক প্রদর্শিত হয়েছে তবে আমি নিশ্চিত যে আরও বৈকল্পিক রয়েছে। সিপিইউতে দোষটি হ'ল শাখার ভবিষ্যদ্বাণীকারী রাষ্ট্র প্রসঙ্গের স্যুইচ করার সময় ফ্লাশ হয় না এবং সেই শাখার ভবিষ্যদ্বাণীকারী রাষ্ট্রটি শাখা নির্দেশিকার ঠিকানাটির নিম্ন-অর্ডার বিট দ্বারা সূচিযুক্ত হয় এবং একেবারে ট্যাগ হয় না। সুতরাং আপনার দুটি শাখা একই শাখার পূর্বাভাসকারী রাষ্ট্র ভাগ করে নেবে, এমনকি প্রক্রিয়া সীমানা জুড়ে।
আমি অত্যন্ত আত্মবিশ্বাসী যে সমস্ত রাস্পবেরি পাই মডেলগুলির সিপিইউ কার্যত ব্যবহারিকভাবে অন্যান্য সমস্ত সিপিইউয়ের সাথে সমান যে শাখার ভবিষ্যদ্বাণীকারী কেবলমাত্র 2-বিট স্যাচুরটিং কাউন্টারগুলির একটি বড় অ্যারে (দৃ strongly়ভাবে নেওয়া, দুর্বলভাবে নেওয়া, দুর্বলভাবে নেওয়া হয়নি, দৃ strongly়ভাবে নেওয়া হয়েছে) অগৃহীত). এই অ্যারেটির সূচকটি শাখা নির্দেশিকার ঠিকানাটির নিম্ন-অর্ডার বিট এবং কোনও ট্যাগ নেই এবং এই ভবিষ্যদ্বাণীকারী রাষ্ট্রটি কখনও ফ্লাশ হয় না।
এখন, যদি দুটি শাখা একই পূর্বাভাসকারী রাষ্ট্রের ভাগ করে নেয়, আপনি খুব সাম্প্রতিক অতীতে কোন নির্দিষ্ট শাখাটি কোন পথে নিয়েছে তা পরিমাপ করতে পারবেন। স্পেকটারের তথ্য ফাঁস এভাবেই আছে! আপনি যদি জাভাস্ক্রিপ্ট থেকে আপনার পাসওয়ার্ডে কিছু কোড ব্রাঞ্চিং কার্যকর করতে এবং ব্রাঞ্চগুলি কীভাবে শাখাগুলি চলেছে তা পরিমাপ করার জন্য ব্রাউজারটিকে নির্ভরযোগ্যভাবে ট্রিগার করতে পারেন তবে আপনি অবশ্যই পাসওয়ার্ডটি বের করতে পারবেন। এখন এটি একটি চূড়ান্ত উদাহরণ, জাভাস্ক্রিপ্ট থেকে ট্রিগার করা যায় এমন পদ্ধতিতে আপনার পাসওয়ার্ডের প্রতিটি বিটটিতে কেউ শাখা করবেন না, তবে এটি সমস্যাটি দেখায়।
এআরএম যা বলেছে তা বিশ্বাস করবেন না। এআরএম এর অর্থ সম্ভবত এটি হ'ল গুগল যে শোষিতগুলি বিকশিত করেছে সেগুলি এই এআরএম সিপিইউগুলিতে কাজ করে না। এর অর্থ এই নয় যে তারা স্পেকটারের কাছে অদম্য হবে। অন্য কিছু শোষণ কাজ করতে পারে।
এই প্রশ্নটি দেখুন: https://security.stackexchange.com/questions/176678/is-branch-predictor-flush-in تعمیر-a-complete-spectre-fix এবং এর উত্তরের প্রভাবগুলি বুঝতে। আপনার ব্রাউজারে চলমান একটি দুর্বৃত্ত জাভাস্ক্রিপ্ট কোড স্পেকটার পরিমাপের কারণে প্রক্রিয়াটির অন্যান্য শাখাগুলি কীভাবে চলেছে তা করতে পারে। এমনকি ব্রাঞ্চের ভবিষ্যদ্বাণীকারী ফ্লাশ নির্দেশনাটি এই দুর্বৃত্ত জাভাস্ক্রিপ্ট সমস্যাটি ঠিক করবে না, যদি না ব্রাউজার অবিশ্বস্ত কোড চালানোর আগে ব্রাঞ্চের ভবিষ্যদ্বাণীকে সক্রিয়ভাবে ফ্লাশ না করে।
স্পেকটারটি খুব দীর্ঘ সময়ের জন্য আমাদের সাথে থাকবে, কারণ শাখার পূর্বাভাসকারী 14 বিট ব্যবহার করে সূচক হিসাবে 32 বিট ঠিকানার জায়গার 18 টি বিটের সাথে ট্যাগযুক্ত নয়, কারণ এরপরে 20 বিট (2 বিটস স্যাচুরেটিং কাউন্টার) লাগবে , 18 বিট ট্যাগ) কেবল 2 বিটের পরিবর্তে। এটি শাখার ভবিষ্যদ্বাণী আকারকে দশ দ্বারা গুণিত করবে! আমি সিপিইউ নির্মাতারা এমন একটি শাখা প্রেডিক্টর ফ্লাশ নির্দেশ যুক্ত করবে যা বিশেষ স্থান ছাড়াই ব্যবহারকারীর স্পেসেও ব্যবহার করে এবং অবিশ্বস্ত জেআইটিড কোড চলাকালীন কনটেক্সট স্যুইচ করার সময় এবং ব্যবহারকারীর স্থান এটি ব্যবহার করার জন্য কার্নেলটি ব্যবহার করবে। এটি অনুশীলনে বেশিরভাগ স্পেক্টর সমস্যা সমাধান করবে তবে তত্ত্ব অনুসারে, সবগুলিই নয়।