Google продСмонстрировал ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ уязвимостСй Spectre Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ JavaScript Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅

Компания Google ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° нСсколько ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΎΠ² эксплоитов, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ эксплуатации уязвимостСй класса Spectre ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ JavaScript-ΠΊΠΎΠ΄Π° Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π² ΠΎΠ±Ρ…ΠΎΠ΄ Ρ€Π°Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹. Эксплоиты ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для получСния доступа ΠΊ памяти процСсса, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ web-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅. Для тСстирования Ρ€Π°Π±ΠΎΡ‚Ρ‹ эксплоита Π·Π°ΠΏΡƒΡ‰Π΅Π½ сайт leaky.page, Π° ΠΊΠΎΠ΄ с описаниСм Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π° Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½ Π½Π° GitHub.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ рассчитан Π½Π° ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Π°Ρ‚Π°ΠΊΠΈ Π½Π° систСмы с процСссорами Intel Core i7-6500U Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ с Linux ΠΈ Chrome 88. Для примСнСния эксплоита для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ трСбуСтся внСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠœΠ΅Ρ‚ΠΎΠ΄ эксплуатации Π½Π΅ спСцифичСн для процСссоров Intel — послС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ Π±Ρ‹Π»Π° ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° эксплоита Π½Π° систСмах с CPU Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Apple M1 Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ARM. ПослС Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΎΠΊ эксплоит Ρ‚Π°ΠΊΠΆΠ΅ работоспособСн Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… Π½Π° Π±Π°Π·Π΅ Π΄Π²ΠΈΠΆΠΊΠ° Chromium.

Π’ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ ΡˆΡ‚Π°Ρ‚Π½ΠΎΠ³ΠΎ Chrome 88 ΠΈ процСссоров Intel Skylake ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· процСсса, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ web-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Chrome (renderer process), со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ 1 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚ Π² сСкунду. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΡ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, эксплоит, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Ρ†Π΅Π½ΠΎΠΉ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π΄ΠΎ 8kB/s ΠΏΡ€ΠΈ использовании Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° performance.now() с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ 5 микросСкунд (0.005 миллисСкунд). Π’Π°ΠΊΠΆΠ΅ Π±Ρ‹Π» ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈ точности Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠ΄Π½ΠΎΠΉ миллисСкунды, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠ³ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΊ памяти Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ процСсса со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΎΠΊΠΎΠ»ΠΎ 60 Π±Π°ΠΉΡ‚ Π² сСкунду.

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Ρ‹ΠΉ дСмонстрационный ΠΊΠΎΠ΄ состоит ΠΈΠ· Ρ‚Ρ€Ρ‘Ρ… частСй. ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ выполняСт ΠΊΠ°Π»ΠΈΠ±Ρ€ΠΎΠ²ΠΊΡƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° для ΠΎΡ†Π΅Π½ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для восстановлСния Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ Π² процСссорном кэшС Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ спСкулятивного выполнСния инструкций CPU. Вторая Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ раскладки памяти, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ массива JavaScript.

Π’Ρ€Π΅Ρ‚ΡŒΡ Ρ‡Π°ΡΡ‚ΡŒ нСпосрСдствСнно выполняСт ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ уязвимости Spectre для опрСдСлСния содСрТимого памяти Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ процСсса Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ создания условий для спСкулятивного выполнСния ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… отбрасываСтся процСссором послС опрСдСлСния Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·Π°, Π½ΠΎ слСды выполнСния ΠΎΡΠ΅Π΄Π°ΡŽΡ‚ Π² ΠΎΠ±Ρ‰Π΅ΠΌ кэшС ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ восстановлСны ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² опрСдСлСния содСрТимого кэша ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ доступа ΠΊ ΠΏΡ€ΠΎΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΈ Π½Π΅ ΠΏΡ€ΠΎΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Π°Ρ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° эксплуатации позволяСт ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· высокоточных Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ², доступных Ρ‡Π΅Ρ€Π΅Π· API performance.now(), ΠΈ Π±Π΅Π· ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ‚ΠΈΠΏΠ° SharedArrayBuffer, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ массивы Π² раздСляСмой памяти. Эксплоит Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π³Π°Π΄ΠΆΠ΅Ρ‚ Spectre, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ спСкулятивноС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ попавшиС Π² кэш Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π² Ρ…ΠΎΠ΄Π΅ спСкулятивного выполнСния.

Π“Π°Π΄ΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ массива JavaScript, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ прСдпринимаСтся ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° доступа ΠΊ области Π²Π½Π΅ Π³Ρ€Π°Π½ΠΈΡ† Π±ΡƒΡ„Π΅Ρ€Π°, Π²Π»ΠΈΡΡŽΡ‰Π°Ρ Π½Π° состояниС Π±Π»ΠΎΠΊΠ° прСдсказания ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² ΠΈΠ·-Π·Π° наличия Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΉ компилятором ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±ΡƒΡ„Π΅Ρ€Π° (процСссор забСгая Π²ΠΏΠ΅Ρ€Ρ‘Π΄ спСкулятивно выполняСт ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ состояниС послС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ). Для Π°Π½Π°Π»ΠΈΠ·Π° содСрТимого кэша Π² условиях нСдостаточной точности Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΎΠ±ΠΌΠ°Π½Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡƒΡŽ Π² процСссорах ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ вытСснСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· кэша Tree-PLRU ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π·Π° счёт увСличСния числа Ρ†ΠΈΠΊΠ»ΠΎΠ² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ ΠΎΡ‚Π΄Π°Ρ‡Π΅ значСния ΠΈΠ· кэша ΠΈ ΠΏΡ€ΠΈ отсутствии значСния Π² кэшС.

ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ компания Google ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ эксплоита для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊ с использованиСм уязвимостСй класса Spectre ΠΈ для стимулирования web-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² для примСнСния Ρ‚Π΅Ρ…Π½ΠΈΠΊ, ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… риски ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ. ΠŸΡ€ΠΈ этом Google считаСт, Ρ‡Ρ‚ΠΎ Π±Π΅Π· сущСствСнной ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ эксплоиты, Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для дСмонстрации, Π½ΠΎ ΠΈ для повсСмСстного примСнСния.

Для сниТСния риска Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°ΠΌ сайтов прСдлагаСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² послСднСС врСмя Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Cross-Origin Opener Policy (COOP), Cross-Origin Embedder Policy (COEP), Cross-Origin Resource Policy (CORP), Fetch Metadata Request, X-Frame-Options, X-Content-Type-Options ΠΈ SameSite Cookie. Π£ΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π½Π΅ Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‚ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, Π½ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ сайта ΠΎΡ‚ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π² процСссы, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ JavaScript-ΠΊΠΎΠ΄ Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ (ΡƒΡ‚Π΅Ρ‡ΠΊΠ° происходит ΠΈΠ· памяти Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ процСсса, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΊΠΎΠ΄Π° Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ сайта, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅). Основная идСя Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π² Ρ€Π°Π·Π½Ρ‹Ρ… процСссах Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° сайта ΠΎΡ‚ стороннСго ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΠ· Π½Π΅Π½Π°Π΄Ρ‘ΠΆΠ½Ρ‹Ρ… источников, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‡Π΅Ρ€Π΅Π· iframe.



Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru