ΠšΡ€ΠΈΡ‚ΠΈΠΊΠ° към Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност Π² Chrome 94. ЕкспСримСнтиранС с Rust Π² Chrome

Π’ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅Ρ‚ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност Π² Chrome 94 Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ вълна ΠΎΡ‚ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΠΈ, Ρ†ΠΈΡ‚ΠΈΡ€Π°ΠΉΠΊΠΈ Π²ΡŠΠ·Ρ€Π°ΠΆΠ΅Π½ΠΈΡ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Firefox ΠΈ WebKit/Safari.

API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност позволява Π½Π° сайтовСтС Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΄Π°Π΄Π΅Π½ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π΅ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½, Ρ‚.Π΅. НС взаимодСйства с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°/мишка ΠΈΠ»ΠΈ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€. API ΡΡŠΡ‰ΠΎ Π²ΠΈ позволява Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π΄Π°Π»ΠΈ Π² систСмата Ρ€Π°Π±ΠΎΡ‚ΠΈ ΡΠΊΡ€ΠΈΠΉΠ½ΡΠ΅ΠΉΠ²ΡŠΡ€ ΠΈΠ»ΠΈ Π½Π΅. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡΡ‚Π° Π·Π° нСактивност сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Ρ‡Ρ€Π΅Π· ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° извСстиС слСд достиганС Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΏΡ€Π°Π³ Π½Π° нСактивност, чиято ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° стойност Π΅ Π·Π°Π΄Π°Π΄Π΅Π½Π° Π½Π° 1 ΠΌΠΈΠ½ΡƒΡ‚Π°.

Π’Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° сС ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈ, Ρ‡Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност изисква ΠΈΠ·Ρ€ΠΈΡ‡Π½ΠΎ прСдоставянС Π½Π° потрСбитСлски Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Ρ‚.Π΅. Ако ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ сС ΠΎΠΏΠΈΡ‚Π° Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ нСактивност Π·Π° ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚, Π½Π° потрСбитСля Ρ‰Π΅ сС ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† с Π²ΡŠΠΏΡ€ΠΎΡ Π΄Π°Π»ΠΈ Π΄Π° прСдостави Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄Π° Π±Π»ΠΎΠΊΠΈΡ€Π° опСрацията. Π—Π° Π΄Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ напълно API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност, Π΅ прСдоставСна спСциална опция (β€žchrome://settings/content/idleDetectionβ€œ) Π² сСкцията с настройки β€žΠŸΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎΡΡ‚ ΠΈ ΡΠΈΠ³ΡƒΡ€Π½ΠΎΡΡ‚β€œ.

ΠžΠ±Π»Π°ΡΡ‚ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ прилоТСния Π·Π° Ρ‡Π°Ρ‚, социални ΠΌΡ€Π΅ΠΆΠΈ ΠΈ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° промСнят статуса Π½Π° потрСбитСля Π² зависимост ΠΎΡ‚ ΠΏΡ€ΠΈΡΡŠΡΡ‚Π²ΠΈΠ΅Ρ‚ΠΎ ΠΌΡƒ ΠΏΡ€Π΅Π΄ ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π° ΠΈΠ»ΠΈ Π΄Π° забавят увСдомяванСто Π·Π° Π½ΠΎΠ²ΠΈ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ потрСбитСлят пристигнС. API ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈ Π² ΠΏΠ°Π²ΠΈΠ»ΠΈΠΎΠ½Π½ΠΈ прилоТСния Π·Π° Π²Ρ€ΡŠΡ‰Π°Π½Π΅ към оригиналния Π΅ΠΊΡ€Π°Π½ слСд ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π½Π° нСактивност ΠΈΠ»ΠΈ Π·Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, изискващи ΠΌΠ½ΠΎΠ³ΠΎ рСсурси, ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π΅Π½Π°Ρ‡Π΅Ρ€Ρ‚Π°Π²Π°Π½Π΅ Π½Π° слоТни, постоянно Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‰ΠΈ сС Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ потрСбитСлят Π½Π΅ Π΅ ΠΏΡ€Π΅Π΄ ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π°.

ΠŸΠΎΠ·ΠΈΡ†ΠΈΡΡ‚Π° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° API Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° нСактивност Π΅, Ρ‡Π΅ информацията Π·Π° Ρ‚ΠΎΠ²Π° Π΄Π°Π»ΠΈ потрСбитСлят Π΅ Π½Π° ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π° ΠΈΠ»ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС счита Π·Π° ΠΏΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅Π»Π½Π°. Π’ допълнСниС към ΠΏΠΎΠ»Π΅Π·Π½ΠΈΡ‚Π΅ прилоТСния, Ρ‚ΠΎΠ·ΠΈ API ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈ Π·Π° лоши Ρ†Π΅Π»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΎΠΏΠΈΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° уязвимости, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ потрСбитСлят ΠΎΡ‚ΡΡŠΡΡ‚Π²Π° ΠΈΠ»ΠΈ Π·Π° скриванС Π½Π° Π²ΠΈΠ΄ΠΈΠΌΠ° Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π° дСйност, ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠΏΠ°Π΅Π½Π΅. Π‘ ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π²ΡŠΠΏΡ€ΠΎΡΠ½ΠΈΡ API ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΡΡŠΠ±ΠΈΡ€Π° ΠΈ информация Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π° потрСбитСля ΠΈ СТСднСвния Ρ€ΠΈΡ‚ΡŠΠΌ Π½Π° Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π°. НапримСр, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠΎΠ³Π° потрСбитСлят ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΎΡ‚ΠΈΠ²Π° Π½Π° обяд ΠΈΠ»ΠΈ напуска Ρ€Π°Π±ΠΎΡ‚Π½ΠΎΡ‚ΠΎ място. Π’ контСкста Π½Π° Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ исканС Π·Π° доказатСлство Π·Π° ΡƒΠΏΡŠΠ»Π½ΠΎΠΌΠΎΡ‰Π°Π²Π°Π½Π΅ Ρ‚Π΅Π·ΠΈ опасСния сС Π²ΡŠΠ·ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ ΠΎΡ‚ Google ΠΊΠ°Ρ‚ΠΎ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ.

ОсвСн Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π±Π΅Π»Π΅ΠΆΠΊΠ°Ρ‚Π° ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Chrome Π·Π° популяризиранСто Π½Π° Π½ΠΎΠ²ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π·Π° осигуряванС Π½Π° бСзопасна Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°. Π‘ΠΏΠΎΡ€Π΅Π΄ Google 70% ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ със сигурността Π² Chrome са ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΈ ΠΎΡ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π±ΡƒΡ„Π΅Ρ€ слСд освобоТдаванС Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, ΡΠ²ΡŠΡ€Π·Π°Π½Π° с Π½Π΅Π³ΠΎ (use-after-free). Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈ са Ρ‚Ρ€ΠΈ основни стратСгии Π·Π° справянС с Ρ‚Π°ΠΊΠΈΠ²Π° Π³Ρ€Π΅ΡˆΠΊΠΈ: засилванС Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈΡ‚Π΅ Π½Π° Π΅Ρ‚Π°ΠΏΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅, Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° изпълнСниС ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° бСзопасСн Π·Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π΅Π·ΠΈΠΊ.

Π‘ΡŠΠΎΠ±Ρ‰Π°Π²Π° сС, Ρ‡Π΅ са Π·Π°ΠΏΠΎΡ‡Π½Π°Π»ΠΈ СкспСримСнти Π·Π° добавянС Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust към ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ‚Π° Π±Π°Π·Π° Π½Π° Chromium. ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° Rust всС ΠΎΡ‰Π΅ Π½Π΅ Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΠΈΡ‚Π΅, доставСни Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅, ΠΈ Π΅ насочСн Π³Π»Π°Π²Π½ΠΎ към тСстванС Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ части ΠΎΡ‚ Π±Ρ€Π°ΡƒΠ·ΡŠΡ€Π° Π² Rust ΠΈ тяхната интСграция с Π΄Ρ€ΡƒΠ³ΠΈ части, написани Π½Π° C++. УспорСдно с Ρ‚ΠΎΠ²Π°, Π·Π° C++ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π° Π΄Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠ° MiraclePtr вмСсто Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Π·Π° Π΄Π° сС Π±Π»ΠΎΠΊΠΈΡ€Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° уязвимости, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΈ ΠΎΡ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π²Π΅Ρ‡Π΅ освободСни Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΏΠ°ΠΌΠ΅Ρ‚, ΠΈ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ Π½ΠΎΠ²ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° Π΅Ρ‚Π°ΠΏΠ° Π½Π° компилация.

ОсвСн Ρ‚ΠΎΠ²Π° Google Π·Π°ΠΏΠΎΡ‡Π²Π° СкспСримСнт, Π·Π° Π΄Π° тСства Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡ‚ΠΎ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½Π΅ Π½Π° сайтовСтС, слСд ΠΊΠ°Ρ‚ΠΎ Π±Ρ€Π°ΡƒΠ·ΡŠΡ€ΡŠΡ‚ достигнС вСрсия, ΡΡŠΡΡ‚ΠΎΡΡ‰Π° сС ΠΎΡ‚ Ρ‚Ρ€ΠΈ Ρ†ΠΈΡ„Ρ€ΠΈ вмСсто Π΄Π²Π΅. По-спСциално, Π² тСстовитС издания Π½Π° Chrome 96 сС появи настройката β€žchrome://flags#force-major-version-to-100β€œ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅ посочСна Π² Π·Π°Π³Π»Π°Π²ΠΊΠ°Ρ‚Π° Π½Π° User-Agent, вСрсия 100 (Chrome/100.0.4650.4) Π·Π°ΠΏΠΎΡ‡Π²Π° Π΄Π° сС ΠΏΠΎΠΊΠ°Π·Π²Π°. ΠŸΡ€Π΅Π· август ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ СкспСримСнт бСшС ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ във Firefox, ΠΊΠΎΠΉΡ‚ΠΎ Ρ€Π°Π·ΠΊΡ€ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° Ρ‚Ρ€ΠΈΡ†ΠΈΡ„Ρ€Π΅Π½ΠΈ вСрсии Π½Π° някои сайтовС.

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

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€