என்று சமீபத்தில் செய்தி வெளியானதுETH சூரிச்சின் ஆராய்ச்சியாளர்கள் குழு ஒரு புதிய தாக்குதலை அடையாளம் கண்டுள்ளது கர்னல் நினைவகத்திலிருந்து தகவலைப் பிரித்தெடுக்க அல்லது மெய்நிகர் கணினிகளில் இருந்து ஹோஸ்ட் சிஸ்டத்தின் மீது தாக்குதலை ஒழுங்கமைக்க அனுமதிக்கும் CPU இல் மறைமுகத் தாவல்களின் ஊகச் செயல்படுத்தல் பொறிமுறைக்கு.
பாதிப்புகளுக்கு ரெட்ப்ளீட் என்ற குறியீட்டுப் பெயரிடப்பட்டது (ஏற்கனவே CVE-2022-29900, CVE-2022-29901 இன் கீழ் பட்டியலிடப்பட்டுள்ளது) மற்றும் ஸ்பெக்டர்-வி2 தாக்குதல்களுக்கு இயல்பில் ஒத்தவை.
"jmp" அறிவுறுத்தலைப் பயன்படுத்தி மறைமுகமாக குதித்து, நினைவகத்திலிருந்து முகவரியை ஏற்றுவதை விட, அடுக்கில் இருந்து குதிப்பதற்கான முகவரியை மீட்டெடுக்கும் "ret" (return) அறிவுறுத்தலைச் செயலாக்குவதன் மூலம் தன்னிச்சையான குறியீட்டை ஊகச் செயல்படுத்தலை ஒழுங்கமைப்பதில் வேறுபாடு கொதித்தது. ஒரு CPU பதிவு.
புதிய தாக்குதல் குறித்து அதில் குறிப்பிடப்பட்டுள்ளது ஒரு தாக்குபவர் ஒரு போர்க் கணிப்புக்கான நிலைமைகளை உருவாக்க முடியும் நிரலின் செயல்பாட்டின் தர்க்கத்தால் திட்டமிடப்படாத குறியீட்டின் தொகுதிக்கு வேண்டுமென்றே ஊகத் தாவலை ஒழுங்கமைக்கவும்.
இறுதியில், கிளை கணிப்பு நியாயப்படுத்தப்படவில்லை என்பதை செயலி தீர்மானிக்கும் மற்றும் செயல்பாட்டை திரும்பப் பெறும் அதன் அசல் நிலைக்கு, ஆனால் செயலாக்கப்பட்ட தரவு ஏக மரணதண்டனை போது அவர்கள் தற்காலிக சேமிப்பில் உட்காருவார்கள் மற்றும் மைக்ரோஆர்கிடெக்ச்சுரல் பஃபர்கள். தவறாக செயல்படுத்தப்பட்ட தொகுதி நினைவக அணுகலைச் செய்தால், அதன் ஊகச் செயலாக்கம் பொது தற்காலிக சேமிப்பில் நிறுவலுக்கும் நினைவகத்திலிருந்து தரவைப் படிப்பதற்கும் வழிவகுக்கும்.
செயல்பாடுகளின் ஊகச் செயல்பாட்டிற்குப் பிறகு தற்காலிக சேமிப்பில் மீதமுள்ள தரவைத் தீர்மானிக்க, தாக்குபவர் மூன்றாம் தரப்பு சேனல்கள் மூலம் மீதமுள்ள தரவைத் தீர்மானிக்கும் முறைகளைப் பயன்படுத்தலாம், எடுத்துக்காட்டாக, தற்காலிக சேமிப்பில் உள்ள தரவு அணுகல் நேரத்தில் மாற்றங்களை பகுப்பாய்வு செய்தல் மற்றும் தற்காலிக சேமிப்பில் இல்லை.
வெவ்வேறு சலுகை மட்டத்தில் (உதாரணமாக, கர்னல் நினைவகத்திலிருந்து) பகுதிகளிலிருந்து தகவல்களை வேண்டுமென்றே பிரித்தெடுப்பதற்கு, "சாதனங்கள்" பயன்படுத்தப்படுகின்றன: கர்னலில் இருக்கும் ஸ்கிரிப்டுகள், நினைவகத்திலிருந்து தரவை ஊக வாசிப்புக்கு ஏற்றது, வெளிப்புற நிலைமைகளைப் பொறுத்து அது பாதிக்கப்படலாம். ஒரு தாக்குபவர் மூலம்.
மறைமுக மற்றும் நிபந்தனை கிளை வழிமுறைகளைப் பயன்படுத்தும் கிளாசிக் ஸ்பெக்டர் வகுப்பு தாக்குதல்களிலிருந்து பாதுகாக்க, பெரும்பாலான இயக்க முறைமைகள் "retpoline" நுட்பத்தைப் பயன்படுத்துகின்றன, இது மறைமுக கிளை செயல்பாடுகளை "ret" அறிவுறுத்தலுடன் மாற்றுவதை அடிப்படையாகக் கொண்டது, இதற்கு ஒரு தனி அடுக்கு நிலை கணிப்பு தேவைப்படுகிறது. அலகு செயலிகளில் பயன்படுத்தப்படுகிறது, கிளை முன்கணிப்பு தொகுதியைப் பயன்படுத்துவதில்லை.
2018 ஆம் ஆண்டில் ரெட்போலைன் அறிமுகப்படுத்தப்பட்டபோது, ஸ்பெக்டர் போன்ற முகவரி கையாளுதல் "ரெட்" அறிவுறுத்தலுடன் ஊக ஃபோர்க்கிங் நடைமுறைக்கு சாத்தியமற்றது என்று நம்பப்பட்டது.
தாக்குதல் முறையை உருவாக்கிய ஆராய்ச்சியாளர்கள் Retbleed நுண்ணிய கட்டடக்கலை நிலைமைகளை உருவாக்கும் சாத்தியத்தை நிரூபித்தது "ret" அறிவுறுத்தலைப் பயன்படுத்தி ஒரு ஊக மாற்றத்தைத் தொடங்குவதற்கு மற்றும் அத்தகைய நிலைமைகள் தோன்றும் Linux கர்னலில் உள்ள பாதிப்பைப் பயன்படுத்திக் கொள்ள பொருத்தமான அறிவுறுத்தல் வரிசைகளை (கேட்ஜெட்டுகள்) அடையாளம் காண ஒரு ஆயத்த கருவித்தொகுப்பை வெளியிட்டது.
ஆய்வின் போது, ஒரு வேலை சுரண்டல் தயாரிக்கப்பட்டது இது Intel CPUகள் உள்ள கணினிகளில், பயனர் இடத்தில் உள்ள சலுகையற்ற செயல்பாட்டிலிருந்து கர்னல் நினைவகத்திலிருந்து தன்னிச்சையான தரவை வினாடிக்கு 219 பைட்டுகள் மற்றும் 98% துல்லியத்துடன் பிரித்தெடுக்க அனுமதிக்கிறது.
En செயலிகள் AMD, சுரண்டலின் செயல்திறன் மிக அதிகமாக உள்ளது, ஏனெனில் கசிவு விகிதம் வினாடிக்கு 3,9 KB. ஒரு நடைமுறை உதாரணமாக, /etc/shadow கோப்பின் உள்ளடக்கங்களை தீர்மானிக்க முன்மொழியப்பட்ட சுரண்டலை எவ்வாறு பயன்படுத்துவது என்று காட்டப்பட்டுள்ளது. Intel CPUகள் உள்ள கணினிகளில், ரூட் பாஸ்வேர்டு ஹாஷை தீர்மானிக்கும் தாக்குதல் 28 நிமிடங்களிலும், AMD CPUகள் உள்ள கணினிகளில் 6 நிமிடங்களிலும் நிகழ்த்தப்பட்டது.
6-8 தலைமுறை இன்டெல் செயலிகளுக்கு இந்த தாக்குதல் உறுதி செய்யப்பட்டது Q2019 1 க்கு முன் வெளியிடப்பட்டவை (ஸ்கைலேக் உட்பட), மற்றும் Q1 2 க்கு முன் வெளியிடப்பட்ட Zen 2021, Zen XNUMX+ மற்றும் Zen XNUMX மைக்ரோஆர்கிடெக்சர்களை அடிப்படையாகக் கொண்ட AMD செயலிகள். புதிய செயலி மாடல்களில், AMD Zen3 மற்றும் Intel Alder Lake, அத்துடன் ARM செயலிகள், தற்போதுள்ள பாதுகாப்பு வழிமுறைகளால் பிரச்சனை தடுக்கப்பட்டுள்ளது. எடுத்துக்காட்டாக, IBRS (மறைமுகக் கிளை கட்டுப்படுத்தப்பட்ட ஊகங்கள்) வழிமுறைகளைப் பயன்படுத்துவது தாக்குதலிலிருந்து பாதுகாக்க உதவுகிறது.
லினக்ஸ் கர்னல் மற்றும் Xen ஹைப்பர்வைசருக்கான மாற்றங்களின் தொகுப்பைத் தயார் செய்தேன், இது பழைய CPU களில் நிரல் ரீதியாக சிக்கலைத் தடுக்கிறது. முன்மொழியப்பட்ட லினக்ஸ் கர்னல் பேட்ச் 68 கோப்புகளை மாற்றுகிறது, 1783 வரிகளைச் சேர்க்கிறது மற்றும் 387 வரிகளை நீக்குகிறது.
துரதிருஷ்டவசமாக, பாதுகாப்பு குறிப்பிடத்தக்க மேல்நிலைச் செலவுகளை ஏற்படுத்துகிறது: AMD மற்றும் Intel செயலிகளில் செய்யப்பட்ட உரைகளில், செயல்திறன் சிதைவு 14% மற்றும் 39% இடையே இருக்கும் என மதிப்பிடப்பட்டுள்ளது. IBRS வழிமுறைகளின் அடிப்படையில் பாதுகாப்பைப் பயன்படுத்துவது மிகவும் விரும்பத்தக்கது, இது புதிய தலைமுறை Intel CPUகளில் கிடைக்கிறது மற்றும் Linux kernel 4.19 இலிருந்து ஆதரிக்கப்படுகிறது.
இறுதியாக, நீங்கள் அதைப் பற்றி மேலும் அறிய ஆர்வமாக இருந்தால், நீங்கள் ஆலோசிக்கலாம் பின்வரும் இணைப்பில் விவரங்கள்.