ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² клас уязвимости Π² процСсоритС Intel

Компания Intel Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π»Π° информация Π·Π° новия клас уязвимости Π² своитС процСсори β€” MDS (Microarchitectural Data Sampling). ΠšΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ‚Π΅ Π°Ρ‚Π°ΠΊΠΈ ΠΎΡ‚ клас Spectre, Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π°Ρ‚ Π΄ΠΎ ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΈ Ρ‡ΡƒΠΆΠ΄ΠΈ процСси. Π£Ρ‚Π²ΡŠΡ€Π΄ΠΈΠ»ΠΎ сС, Ρ‡Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ са Π±ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ ΠΎΡ‚ слуТитСли ΠΈ ΠΏΠ°Ρ€Ρ‚Π½ΡŒΠΎΡ€ΠΈ Π½Π° Intel ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ΅Π½ ΠΎΠ΄ΠΈΡ‚, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ информацията Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Π² Intel Π΅ ΠΏΡ€Π΅Π΄Π°Π΄Π΅Π½Π° ΠΎΡ‚ нСзависими изслСдоватСли. ΠŸΡ€ΠΎΡ†Π΅ΡΠΎΡ€ΠΈΡ‚Π΅ AMD ΠΈ ARM Π½Π΅ са засСгнати ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°.

На Π±Π°Π·Π° установСнитС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, изслСдоватСли ΠΎΡ‚ ВСхничСския унивСрситСт Π² Π“Ρ€Π°Ρ† (Австрия) са Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΠ»ΠΈ няколко ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΈ Π°Ρ‚Π°ΠΊΠΈ Ρ‡Ρ€Π΅Π· странични ΠΊΠ°Π½Π°Π»ΠΈ:

  • ZombieLoad (PDF) β€” позволява ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»Π½Π° информация ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ процСси, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ Π°Π½ΠΊΠ»Π°Π²ΠΈ (TEE, Trusted Execution Environment). НапримСр, дСмонстрира сС Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° опрСдСлянС Π½Π° историята Π½Π° отварянС Π½Π° страници Π² Tor Π±Ρ€Π°ΡƒΠ·ΡŠΡ€Π°, стартиран Π² Π΄Ρ€ΡƒΠ³Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° машина, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ Π·Π° опрСдСлянС Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ‚Π΅ Π² прилоТСнията ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ;


  • RIDL (PDF) β€” позволява ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° информация ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ области Π² процСсоритС Intel, ΠΊΠ°Ρ‚ΠΎ Π±ΡƒΡ„Π΅Ρ€ΠΈ Π·Π° попълванС, Π±ΡƒΡ„Π΅Ρ€ΠΈ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠΈ са ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ Π·Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° изтичания ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ процСси, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ Π°Π½ΠΊΠ»Π°Π²ΠΈ. НапримСр, дСмонстрирано Π΅ ΠΊΠ°ΠΊ Π΄Π° сС ΡƒΠ·Π½Π°Π΅ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ…Π΅ΡˆΠ° Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° root ΠΎΡ‚ /etc/shadow ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΈ ΠΎΠΏΠΈΡ‚ΠΈ Π·Π° удостовСряванС (Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° Π΅ ΠΎΡ‚Π½Π΅Π»Π° 24 часа);

    ΠŸΡƒΡΠ½Π΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅ΠΎΡ‚ΠΎ

    ОсвСн Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°Ρ‚Π°ΠΊΠ° с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° JavaScript ΠΈ WebAssembly ΠΏΡ€ΠΈ отварянС Π½Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π° страница Π² Π΄Π²ΠΈΠΆΠΊΠ° SpiderMonkey (Π² ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ напълно Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΈ Π±Ρ€Π°ΡƒΠ·ΡŠΡ€ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Π° Π°Ρ‚Π°ΠΊΠ° Π΅ ΠΌΠ°Π»ΠΊΠΎ вСроятна ΠΏΠΎΡ€Π°Π΄ΠΈ ограничСнията Π½Π° точността Π½Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΈ ΠΌΠ΅Ρ€ΠΊΠΈΡ‚Π΅ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Spectre);

    ΠŸΡƒΡΠ½Π΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅ΠΎΡ‚ΠΎ
  • Fallout (PDF) β€” Π΄Π°Π²Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, наскоро записани ΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма, ΠΈ Π·Π° опрСдСлянС Π½Π° Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° ОБ Π·Π° улСсняванС Π½Π° ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ Π°Ρ‚Π°ΠΊΠΈ;
  • Store-To-Leak Forwarding β€” Сксплоатира ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° CPU ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° с Π±ΡƒΡ„Π΅Ρ€Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° заобикалянС Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° рандомизация Π½Π° адрСсното пространство Π½Π° ядрото (KASLR), Π·Π° ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ‚Π° систСма ΠΈΠ»ΠΈ Π·Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ изтичания Π² комбинация с устройства, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅ Spectre.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈ уязвимости:

  • CVE-2018-12126 β€” MSBDS (Microarchitectural Store Buffer Data Sampling), Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π±ΡƒΡ„Π΅Ρ€ΠΈΡ‚Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. Използва сС Π² Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° Fallout. Π‘Ρ‚Π΅ΠΏΠ΅Π½Ρ‚Π° Π½Π° опасност Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π½Π° 6.5 Ρ‚ΠΎΡ‡ΠΊΠΈ (CVSS);
  • CVE-2018-12127 β€” MLPDS (Microarchitectural Load Port Data Sampling), Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅. Използва сС Π² Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° RIDL. CVSS 6.5;
  • CVE-2018-12130 β€” MFBDS (Microarchitectural Fill Buffer Data Sampling), Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π±ΡƒΡ„Π΅Ρ€ΠΈΡ‚Π΅ Π·Π° запълванС. Използва сС Π² Π°Ρ‚Π°ΠΊΠΈΡ‚Π΅ ZombieLoad ΠΈ RIDL. CVSS 6.5;
  • CVE-2019-11091 β€” MDSUM (Microarchitectural Data Sampling Uncacheable Memory), Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π½Π΅ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚. Използва сС Π² Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° RIDL. CVSS 3.8.

Π‘ΡŠΡ‰Π½ΠΎΡΡ‚ Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· ΠΏΠΎ странични ΠΊΠ°Π½Π°Π»ΠΈ към Π΄Π°Π½Π½ΠΈ Π² ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ структури, Π΄ΠΎ ΠΊΠΎΠΈΡ‚ΠΎ прилоТСнията нямат пряк Π΄ΠΎΡΡ‚ΡŠΠΏ. Π‘Ρ‚Π°Π²Π° Π²ΡŠΠΏΡ€ΠΎΡ Π·Π° Ρ‚Π°ΠΊΠΈΠ²Π° нискоуровнСви структури, ΠΊΠ°Ρ‚ΠΎ Π±ΡƒΡ„Π΅Ρ€ΠΈ Π·Π° запълванС (Line Fill Buffer), Π±ΡƒΡ„Π΅Ρ€ΠΈ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ (Store Buffer) ΠΈ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ (Load Port), ΠΊΠΎΠΈΡ‚ΠΎ са ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΈ ΡΡŠΡΡ‚Π°Π²Π½ΠΈ части, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ кСш ΠΏΡŠΡ€Π²ΠΎ Π½ΠΈΠ²ΠΎ (L1D), кСш Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ (RDCL) ΠΈΠ»ΠΈ L1TF (L1 Terminal Fault), ΠΈ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ информация ΠΈ сС обновяват ΠΏΠΎ-ΠΈΠ½Ρ‚Π΅Π½Π·ΠΈΠ²Π½ΠΎ.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² клас уязвимости Π² процСсоритС Intel

АтакитС ΠΏΠΎ странични ΠΊΠ°Π½Π°Π»ΠΈ към ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ структури са Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎ-слоТни Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π² сравнСниС с ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅ Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° кСша ΠΈ изискват прослСдяванС ΠΈ Π°Π½Π°Π»ΠΈΠ· Π½Π° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΎΠ±Π΅ΠΌΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π° Π΄Π° сС установи тяхната Π²Ρ€ΡŠΠ·ΠΊΠ° с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ адрСси Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° (ΠΏΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ, атакуващият Π½Π΅ ΠΌΠΎΠΆΠ΅ цСлСнасочСно Π΄Π° Π·Π°Ρ…Π²Π°Ρ‰Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ, Π° ΠΌΠΎΠΆΠ΅ дълго Π²Ρ€Π΅ΠΌΠ΅ Π΄Π° Π½Π°Ρ‚Ρ€ΡƒΠΏΠ²Π° изтичания ΠΈ Π΄Π° ΠΏΡ€ΠΈΠ»Π°Π³Π° статистичСски ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° рСконструкция Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ). ОсвСн Ρ‚ΠΎΠ²Π° Π°Ρ‚Π°ΠΊΠ° засяга само Π΄Π°Π½Π½ΠΈ Π½Π° ΡΡŠΡ‰ΠΎΡ‚ΠΎ физичСско ядро Π½Π° CPU, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈ ΠΊΠΎΠ΄ΡŠΡ‚ Π½Π° атакуващия.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° опрСдСлянС Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ структури сС основават Π½Π° Ρ‚ΠΎΠ²Π°, Ρ‡Π΅ Ρ‚Π΅Π·ΠΈ структури сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΏΡ€ΠΈ спСкулативна ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (fault) ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΈ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅.
ΠŸΡ€ΠΈ спСкулативно изпълнСниС ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΈΡ‚Π΅ структури сС прСнасочва Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² рСгистри ΠΈΠ»ΠΈ кСш. Π‘ΠΏΠ΅ΠΊΡƒΠ»Π°Ρ‚ΠΈΠ²Π½ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ сС ΠΎΡ‚Ρ…Π²ΡŠΡ€Π»Ρ, Π½ΠΎ прСнасочСното ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° кСша ΠΏΠΎ странични ΠΊΠ°Π½Π°Π»ΠΈ.

Π—Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‰ΠΈΡ‚Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΡ‚ процСсора Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈΠ»ΠΈ подистСмата Π·Π° Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄ ΠΈ прСдоставянС Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π°Ρ‚Π° информация Π² рСгистритС Π½Π° CPU. ΠŸΠΎΡ€Π°Π΄ΠΈ спСцификата Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅, Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΎΡ‚ стари ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ остават Π² ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅Ρ‚Π΅ Π΄ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ записванС с Π½ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ΅Ρ‚ΠΎ позволява косвСно опрСдСлянС Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² зарСТдащия ΠΏΠΎΡ€Ρ‚ Ρ‡Ρ€Π΅Π· ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Π½Π΅ с ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (fault) ΠΈ инструкции SSE/AVX/AVX-512, ΠΊΠΎΠΈΡ‚ΠΎ Π·Π°Ρ€Π΅ΠΆΠ΄Π°Ρ‚ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 64 Π±ΠΈΡ‚Π° Π΄Π°Π½Π½ΠΈ. Π’ Ρ‚Π°ΠΊΠΈΠ²Π° условия ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ Π·Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ спСкулативно освСтяват остарСли стойности ΠΎΡ‚ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΈ структури Π² зависими ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. ПодобСн Π½Π°Ρ‡ΠΈΠ½ сС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π° Π·Π° Ρ‚Π΅Ρ‡ΠΎΠ²Π΅ ΠΏΡ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ускоряванС Π½Π° записитС Π² кэша Π½Π° CPU ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‰ Ρ‚Π°Π±Π»ΠΈΡ†Π° с адрСси, стойности ΠΈ Ρ„Π»Π°Π³ΠΎΠ²Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΏΡ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€Π° Π·Π° запълванС, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ всС ΠΎΡ‰Π΅ Π½Π΅ са Π½Π°Π»ΠΈΡ‡Π½ΠΈ Π² кСша L1 (cache-miss), Π·Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ ΠΎΡ‚ ΠΊΠ΅ΡˆΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Π½ΠΈΠ²Π°.

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² клас уязвимости Π² процСсоритС Intel

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° засяга ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° процСсори Intel, ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½ΠΈ ΠΎΡ‚ 2011 Π³ΠΎΠ΄ΠΈΠ½Π° (ΠΎΡ‚ 6-Ρ‚ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ насам). ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈΡ‚Π΅ уязвимости сС Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‚, Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΉΠΊΠΈ ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° 8-ΠΌΠΎ ΠΈ 9-Ρ‚ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ Intel Core ΠΈ 2-Ρ€ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ Intel Xeon Scalable (ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈ Ρ‡Ρ€Π΅Π· Π±ΠΈΡ‚ ARCH_CAP_MDS_NO Π² IA32_ARCH_CAPABILITIES MSR). УязвимоститС Π²Π΅Ρ‡Π΅ са отстранСни Π½Π° Π½ΠΈΠ²ΠΎ Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€, ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми. Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΎΡ†Π΅Π½ΠΊΠΈΡ‚Π΅ Π½Π° Intel Π·Π°Π³ΡƒΠ±Π°Ρ‚Π° Π½Π° производитСлност слСд Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° корСкцията Π·Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π½Π΅ надвишава 3%. ΠŸΡ€ΠΈ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° тСхнологията Hyper-Threading Π½Π°ΠΌΠ°Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° производитСлността ΠΌΠΎΠΆΠ΅ Π΄Π° достигнС Π΄ΠΎ 9% Π² тСста SPECint_rate_base, Π΄ΠΎ 11% ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Ρ†Π΅Π»ΠΈ изчислСния ΠΈ Π΄ΠΎ 19% ΠΏΡ€ΠΈ изпълнСниС Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ Java-прилоТСния (ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ HT Π½Π°ΠΌΠ°Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° производитСлността Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΎ). ΠšΠΎΡ€Π΅ΠΊΡ†ΠΈΠΈΡ‚Π΅ практичСски Π½Π΅ влияят Π½Π° производитСлността Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Π²Ρ…ΠΎΠ΄/ΠΈΠ·Ρ…ΠΎΠ΄.

Π’ ядрото Π½Π° Linux Π·Π°Ρ‰ΠΈΡ‚Π°Ρ‚Π° ΠΎΡ‚ MDS Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π² Π΄Π½Π΅ΡˆΠ½ΠΈΡ‚Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ 5.1.2, 5.0.16,
4.19.43, 4.14.119 ΠΈ 4.9.176. ΠœΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π΅ ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½Π° ΠΏΡ€ΠΈ почистванС Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈΡ‚Π΅ Π±ΡƒΡ„Π΅Ρ€ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π° Π²Ρ€ΡŠΡ‰Π°Π½Π΅ ΠΎΡ‚ ядрото Π² пространството Π½Π° потрСбитСля ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° гост-систСмата, Π·Π° ΠΊΠΎΠ΅Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° инструкцията VERW. Π—Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Ρ€Π΅ΠΆΠΈΠΌ MD_CLEAR, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π² Π½Π°ΠΉ-Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π°. Π—Π° пълна Π·Π°Ρ‰ΠΈΡ‚Π° ΡΡŠΡ‰ΠΎ сС ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π° Π΄Π° сС Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° Hyper Threading. Π—Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° уязвимостта Π½Π° систСмата Π² ядрото Π½Π° Linux Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Β«/sys/devices/system/cpu/vulnerabilities/mdsΒ». Π—Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ€Π΅ΠΆΠΈΠΌΠΈ Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° уязвимости Π² ядрото Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚ΡŠΡ€ΡŠΡ‚ Β«mds=Β», ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ° стойности Β«fullΒ», Β«full,nosmtΒ» (дСактивация Π½Π° Hyper-Threads), Β«vmwervΒ» ΠΈ Β«offΒ».

АктуализациитС Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π²Π΅Ρ‡Π΅ са ΠΈΠ·Π΄Π°Π΄Π΅Π½ΠΈ Π·Π° RHEL ΠΈ Ubuntu, Π½ΠΎ всС ΠΎΡ‰Π΅ остават Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° Debian, Fedora ΠΈ SUSE.
ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠΈΡ‚Π΅ Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚Π΅Ρ‡ΠΎΠ²Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини ΡΡŠΡ‰ΠΎ са създадСни Π·Π° Ρ…ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° Xen. Π—Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ систСми, ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‰ΠΈ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° L1D_FLUSH ΠΏΡ€Π΅Π΄ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½Π° машина, ΠΈ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° Π°Π½ΠΊΠ»Π°Π²ΠΈΡ‚Π΅ Intel SGX Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ΄Π°.

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

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster