ื’ื•ื’ืœ ื”ื“ื’ื™ืžื” ื ื™ืฆื•ืœ ืฉืœ ืคื’ื™ืขื•ื™ื•ืช Spectre ื‘ืืžืฆืขื•ืช ื‘ื™ืฆื•ืข JavaScript ื‘ื“ืคื“ืคืŸ

ื’ื•ื’ืœ ืคืจืกืžื” ืžืกืคืจ ืื‘ื•ืช ื˜ื™ืคื•ืก ืฉืœ ื ื™ืฆื•ืœ ื”ืžืจืื™ื ืืช ื”ืืคืฉืจื•ืช ืœื ืฆืœ ืคื’ื™ืขื•ื™ื•ืช ื‘ืžื—ืœืงืช Spectre ื‘ืขืช ื‘ื™ืฆื•ืข ืงื•ื“ JavaScript ื‘ื“ืคื“ืคืŸ, ืชื•ืš ืขืงื™ืคืช ืฉื™ื˜ื•ืช ื”ื’ื ื” ืฉื ื•ืกืคื• ื‘ืขื‘ืจ. ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื ื™ืฆื•ืœ ื›ื“ื™ ืœืงื‘ืœ ื’ื™ืฉื” ืœื–ื™ื›ืจื•ืŸ ืฉืœ ืชื”ืœื™ืš ืขื™ื‘ื•ื“ ืชื•ื›ืŸ ืื™ื ื˜ืจื ื˜ ื‘ื›ืจื˜ื™ืกื™ื™ื” ื”ื ื•ื›ื—ื™ืช. ื›ื“ื™ ืœื‘ื“ื•ืง ืืช ืคืขื•ืœืช ื”ื ื™ืฆื•ืœ, ื”ื•ืฉืง ื”ืืชืจ leaky.page, ื•ื”ืงื•ื“ ื”ืžืชืืจ ืืช ื”ื”ื™ื’ื™ื•ืŸ ืฉืœ ื”ืขื‘ื•ื“ื” ืคื•ืจืกื ื‘-GitHub.

ืื‘ ื”ื˜ื™ืคื•ืก ื”ืžื•ืฆืข ื ื•ืขื“ ืœืชืงื•ืฃ ืžืขืจื›ื•ืช ืขื ืžืขื‘ื“ื™ Intel Core i7-6500U ื‘ืกื‘ื™ื‘ื” ืขื ืœื™ื ื•ืงืก ื•ื›ืจื•ื 88. ื›ื“ื™ ืœื”ืฉืชืžืฉ ื‘-exploit ืขื‘ื•ืจ ืกื‘ื™ื‘ื•ืช ืื—ืจื•ืช, ื ื“ืจืฉื™ื ืฉื™ื ื•ื™ื™ื. ืฉื™ื˜ืช ื”ื ื™ืฆื•ืœ ืื™ื ื” ืกืคืฆื™ืคื™ืช ืœืžืขื‘ื“ื™ ืื™ื ื˜ืœ - ืœืื—ืจ ื”ืชืืžื” ืžืชืื™ืžื”, ืื•ืฉืจ ื›ื™ ื”ื ื™ืฆื•ืœ ืขื•ื‘ื“ ืขืœ ืžืขืจื›ื•ืช ืขื ืžืขื‘ื“ื™ื ืžื™ืฆืจื ื™ื ืื—ืจื™ื, ื›ื•ืœืœ ื”-Apple M1 ื”ืžื‘ื•ืกืก ืขืœ ืืจื›ื™ื˜ืงื˜ื•ืจืช ARM. ืœืื—ืจ ื”ืชืืžื•ืช ืงืœื•ืช, ื”ื ื™ืฆื•ืœ ื ื™ืชืŸ ืœืขื‘ื•ื“ื” ื’ื ื‘ืžืขืจื›ื•ืช ื”ืคืขืœื” ืื—ืจื•ืช ื•ื‘ื“ืคื“ืคื ื™ื ืื—ืจื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืžื ื•ืข Chromium.

ื‘ืกื‘ื™ื‘ื” ื”ืžื‘ื•ืกืกืช ืขืœ ืžืขื‘ื“ื™ Chrome 88 ื•-Intel Skylake ืกื˜ื ื“ืจื˜ื™ื™ื, ื ื™ืชืŸ ื”ื™ื” ืœื”ื“ืœื™ืฃ ื ืชื•ื ื™ื ืžื”ืชื”ืœื™ืš ื”ืื—ืจืื™ ืขืœ ืขื™ื‘ื•ื“ ืชื•ื›ืŸ ื”ืื™ื ื˜ืจื ื˜ ื‘ืœืฉื•ื ื™ืช Chrome ื”ื ื•ื›ื—ื™ืช (ืชื”ืœื™ืš renderer) ื‘ืžื”ื™ืจื•ืช ืฉืœ 1 ืงื™ืœื•ื‘ื™ื™ื˜ ืœืฉื ื™ื™ื”. ื‘ื ื•ืกืฃ, ืคื•ืชื—ื• ืื‘ื•ืช ื˜ื™ืคื•ืก ื—ืœื•ืคื™ื™ื, ืœืžืฉืœ, ื ื™ืฆื•ืœ ื”ืžืืคืฉืจ, ื‘ืžื—ื™ืจ ืฉืœ ื”ืคื—ืชืช ื”ื™ืฆื™ื‘ื•ืช, ืœื”ื’ื“ื™ืœ ืืช ืงืฆื‘ ื”ื“ืœื™ืคื” ืœ-8kB/s ื‘ืขืช ืฉื™ืžื•ืฉ ื‘ื˜ื™ื™ืžืจ performance.now() ืขื ื“ื™ื•ืง ืฉืœ 5 ืžื™ืงืจื•-ืฉื ื™ื•ืช (0.005 ืืœืคื™ื•ืช ืฉื ื™ื•ืช) ). ื›ืžื• ื›ืŸ ื”ื•ื›ื ื” ื’ืจืกื” ืฉืขื‘ื“ื” ืขื ื“ื™ื•ืง ื˜ื™ื™ืžืจ ืฉืœ ืืœืคื™ืช ืฉื ื™ื™ื” ืื—ืช, ื‘ืืžืฆืขื•ืชื” ื ื™ืชืŸ ื”ื™ื” ืœืืจื’ืŸ ื’ื™ืฉื” ืœื–ื™ื›ืจื•ืŸ ืฉืœ ืชื”ืœื™ืš ืื—ืจ ื‘ืžื”ื™ืจื•ืช ืฉืœ ื›-60 ื‘ืชื™ื ืœืฉื ื™ื™ื”.

ืงื•ื“ ื”ื”ื“ื’ืžื” ืฉืคื•ืจืกื ืžื•ืจื›ื‘ ืžืฉืœื•ืฉื” ื—ืœืงื™ื. ื”ื—ืœืง ื”ืจืืฉื•ืŸ ืžื›ื™ื™ืœ ืืช ื”ื˜ื™ื™ืžืจ ื›ื“ื™ ืœื”ืขืจื™ืš ืืช ื–ืžืŸ ื”ื‘ื™ืฆื•ืข ืฉืœ ื”ืคืขื•ืœื•ืช ื”ื ื“ืจืฉื•ืช ืœืฉื—ื–ื•ืจ ื ืชื•ื ื™ื ืฉื ื•ืชืจื• ื‘ืžื˜ืžื•ืŸ ื”ืžืขื‘ื“ ื›ืชื•ืฆืื” ืžื‘ื™ืฆื•ืข ืกืคืงื•ืœื˜ื™ื‘ื™ ืฉืœ ื”ื•ืจืื•ืช CPU. ื”ื—ืœืง ื”ืฉื ื™ ืงื•ื‘ืข ืืช ืคืจื™ืกืช ื”ื–ื™ื›ืจื•ืŸ ื”ืžืฉืžืฉืช ื‘ืขืช ื”ืงืฆืืช ืžืขืจืš ื”-JavaScript.

ื”ื—ืœืง ื”ืฉืœื™ืฉื™ ืžื ืฆืœ ื™ืฉื™ืจื•ืช ืืช ื”ืคื’ื™ืขื•ืช Spectre ื›ื“ื™ ืœืงื‘ื•ืข ืืช ืชื•ื›ืŸ ื”ื–ื™ื›ืจื•ืŸ ืฉืœ ื”ืชื”ืœื™ืš ื”ื ื•ื›ื—ื™ ื›ืชื•ืฆืื” ืžื™ืฆื™ืจืช ืชื ืื™ื ืœื‘ื™ืฆื•ืข ืกืคืงื•ืœื˜ื™ื‘ื™ ืฉืœ ืคืขื•ืœื•ืช ืžืกื•ื™ืžื•ืช, ืฉืชื•ืฆืืชืŸ ื ืžื—ืงืช ืขืœ ื™ื“ื™ ื”ืžืขื‘ื“ ืœืื—ืจ ืงื‘ื™ืขืช ื—ื™ื–ื•ื™ ืœื ืžื•ืฆืœื—, ืืš ืขืงื‘ื•ืช ืฉืœ ื”ื‘ื™ืฆื•ืข ืžื•ืคืงื“ื™ื ื‘ืžื˜ืžื•ืŸ ื”ื›ืœืœื™ ื•ื ื™ืชืŸ ืœืฉื—ื–ืจ ืื•ืชื ื‘ืืžืฆืขื•ืช ืฉื™ื˜ื•ืช ืœืงื‘ื™ืขืช ืชื•ื›ืŸ ื”ืžื˜ืžื•ืŸ ืขืœ ื™ื“ื™ ืขืจื•ืฆื™ ืฆื“ ืฉืœื™ืฉื™ ื”ืžื ืชื—ื™ื ืฉื™ื ื•ื™ื™ื ื‘ื–ืžืŸ ื”ื’ื™ืฉื” ืœื ืชื•ื ื™ื ืžืื•ื—ืกื ื™ื ื•ืœื ืžืื•ื—ืกื ื™ื ื‘ืžื˜ืžื•ืŸ.

ื˜ื›ื ื™ืงืช ื”ื ื™ืฆื•ืœ ื”ืžื•ืฆืขืช ืžืืคืฉืจืช ืœื”ืกืชื“ืจ ืœืœื ื˜ื™ื™ืžืจื™ื ื‘ืขืœื™ ื“ื™ื•ืง ื’ื‘ื•ื” ื”ื–ืžื™ื ื™ื ื“ืจืš ื”-API ืฉืœ performance.now() ื•ืœืœื ืชืžื™ื›ื” ื‘ืกื•ื’ SharedArrayBuffer, ื”ืžืืคืฉืจ ื™ืฆื™ืจืช ืžืขืจื›ื™ื ื‘ื–ื™ื›ืจื•ืŸ ืžืฉื•ืชืฃ. ื”ื ื™ืฆื•ืœ ื›ื•ืœืœ ืืช ื”ื’ืื“ื’'ื˜ Spectre, ืฉื’ื•ืจื ืœื‘ื™ืฆื•ืข ืกืคืงื•ืœื˜ื™ื‘ื™ ืžื‘ื•ืงืจ ืฉืœ ืงื•ื“, ื•ืžื ืชื— ื“ืœื™ืคื•ืช ืฉืœ ืขืจื•ืฅ ืฆื“ื“ื™, ืฉืžื–ื”ื” ื ืชื•ื ื™ื ืžืื•ื—ืกื ื™ื ื”ืžืชืงื‘ืœื™ื ื‘ืžื”ืœืš ื‘ื™ืฆื•ืข ืกืคืงื•ืœื˜ื™ื‘ื™.

ื”ื’ืื“ื’'ื˜ ืžื™ื•ืฉื ื‘ืืžืฆืขื•ืช ืžืขืจืš JavaScript ืฉื‘ื• ื ืขืฉื” ื ื™ืกื™ื•ืŸ ืœื’ืฉืช ืœืื–ื•ืจ ืžื—ื•ืฅ ืœื’ื‘ื•ืœื•ืช ื”ืžืื’ืจ, ืžื” ืฉืžืฉืคื™ืข ืขืœ ืžืฆื‘ ื‘ืœื•ืง ื—ื™ื–ื•ื™ ื”ืขื ืฃ ืขืงื‘ ื ื•ื›ื—ื•ืช ื‘ื“ื™ืงืช ื’ื•ื“ืœ ืžืื’ืจ ืฉื ื•ืกืคื” ืขืœ ื™ื“ื™ ื”ืžื”ื“ืจ (ื”ืžืขื‘ื“ ืžื‘ืฆืข ื‘ืื•ืคืŸ ืกืคืงื•ืœื˜ื™ื‘ื™ ืืช ื’ื™ืฉื” ืžื‘ืขื•ื“ ืžื•ืขื“, ืืš ืžื‘ื˜ืœ ืืช ื”ืžืฆื‘ ืœืื—ืจ ื‘ื“ื™ืงื”). ื›ื“ื™ ืœื ืชื— ืืช ืชื•ื›ืŸ ื”ืžื˜ืžื•ืŸ ื‘ืชื ืื™ื ืฉืœ ื“ื™ื•ืง ื˜ื™ื™ืžืจ ืœื ืžืกืคื™ืง, ืžื•ืฆืขืช ืฉื™ื˜ื” ืฉืžื˜ืขื” ืืช ืืกื˜ืจื˜ื’ื™ื™ืช Tree-PLRU ืฉืœ ืคื™ื ื•ื™ ื ืชื•ื ื™ื ื‘ืฉื™ืžื•ืฉ ื‘ืžืขื‘ื“ื™ื ื•ืžืืคืฉืจืช, ืขืœ ื™ื“ื™ ื”ื’ื“ืœืช ืžืกืคืจ ื”ืžื—ื–ื•ืจื™ื, ืœื”ื’ื“ื™ืœ ืžืฉืžืขื•ืชื™ืช ืืช ื”ืคืจืฉ ื”ื–ืžืŸ ื‘ืขืช โ€‹โ€‹ื”ื—ื–ืจื” ืขืจืš ืžื”ืžื˜ืžื•ืŸ ื•ื›ืืฉืจ ืื™ืŸ ืขืจืš ื‘ืžื˜ืžื•ืŸ.

ื™ืฆื•ื™ืŸ ื›ื™ ื’ื•ื’ืœ ืคืจืกืžื” ืื‘ ื˜ื™ืคื•ืก ืฉืœ ื”ื ื™ืฆื•ืœ ืขืœ ืžื ืช ืœื”ืจืื•ืช ืืช ื”ื™ืชื›ื ื•ืชืŸ ืฉืœ ื”ืชืงืคื•ืช ื‘ืืžืฆืขื•ืช ืคืจืฆื•ืช ืžื—ืœืงื•ืช Spectre ื•ืœืขื•ื“ื“ ืžืคืชื—ื™ ืื™ื ื˜ืจื ื˜ ืœื”ืฉืชืžืฉ ื‘ื˜ื›ื ื™ืงื•ืช ื”ืžืžื–ืขืจื•ืช ืืช ื”ืกื™ื›ื•ื ื™ื ืžื”ืชืงืคื•ืช ื›ืืœื”. ื™ื—ื“ ืขื ื–ืืช, ื’ื•ื’ืœ ืžืืžื™ื ื” ืฉืœืœื ืขื™ื‘ื•ื“ ืžืฉืžืขื•ืชื™ ืฉืœ ืื‘ ื”ื˜ื™ืคื•ืก ื”ืžื•ืฆืข, ืื™ ืืคืฉืจ ืœื™ืฆื•ืจ ื ื™ืฆื•ืœื™ื ืื•ื ื™ื‘ืจืกืœื™ื™ื ืฉืžื•ื›ื ื™ื ืœื ืจืง ืœื”ื“ื’ืžื”, ืืœื ื’ื ืœืฉื™ืžื•ืฉ ื ืจื—ื‘.

ื›ื“ื™ ืœื”ืคื—ื™ืช ืืช ื”ืกื™ื›ื•ืŸ, ื‘ืขืœื™ ืืชืจื™ื ืžืขื•ื“ื“ื™ื ืœื”ืฉืชืžืฉ ื‘ื›ื•ืชืจื•ืช ืฉื™ื•ืฉืžื• ืœืื—ืจื•ื ื” Cross-Origin Opener Policy (COOP), Cross-Origin Embedder Policy (COEP), Cross-Origin Resource Policy (CORP), Fetch Metadata Request, X-Frame- ืืคืฉืจื•ื™ื•ืช, X -Content-Type-Options ื•- SameSite Cookie. ืžื ื’ื ื•ื ื™ื ืืœื• ืื™ื ื ืžื’ื ื™ื ื™ืฉื™ืจื•ืช ืžืคื ื™ ื”ืชืงืคื•ืช, ืืš ื”ื ืžืืคืฉืจื™ื ืœื‘ื•ื“ื“ ื ืชื•ื ื™ ืืชืจ ืžื“ืœื™ืคื” ืœืชื”ืœื™ื›ื™ื ื‘ื”ื ื ื™ืชืŸ ืœื‘ืฆืข ืืช ืงื•ื“ ื”-JavaScript ืฉืœ ื”ืชื•ืงืฃ (ื”ื“ืœื™ืคื” ืžืชืจื—ืฉืช ืžื”ื–ื™ื›ืจื•ืŸ ืฉืœ ื”ืชื”ืœื™ืš ื”ื ื•ื›ื—ื™, ืืฉืจ ื‘ื ื•ืกืฃ ืœืงื•ื“ ืฉืœ ื”ืชื•ืงืฃ , ื™ื›ื•ืœ ื’ื ืœืขื‘ื“ ื ืชื•ื ื™ื ืžืืชืจ ืื—ืจ ืฉื ืคืชื— ื‘ืื•ืชื” ื›ืจื˜ื™ืกื™ื™ื”). ื”ืจืขื™ื•ืŸ ื”ืžืจื›ื–ื™ ื”ื•ื ืœื”ืคืจื™ื“ ืืช ื‘ื™ืฆื•ืข ืงื•ื“ ื”ืืชืจ ื‘ืชื”ืœื™ื›ื™ื ืฉื•ื ื™ื ืžืงื•ื“ ืฆื“ ืฉืœื™ืฉื™ ื”ืžืชืงื‘ืœ ืžืžืงื•ืจื•ืช ืœื ืืžื™ื ื™ื, ืœืžืฉืœ, ื”ื ื›ืœืœ ื‘ืืžืฆืขื•ืช iframe.



ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”