Π˜Π·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅Π· Intel CPU ring bus

Π•ΠΊΠΈΠΏ ΠΎΡ‚ изслСдоватСли ΠΎΡ‚ УнивСрситСта Π½Π° Илинойс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½ΠΎΠ²Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π° Π°Ρ‚Π°ΠΊΠ° Π½Π° страничСн ΠΊΠ°Π½Π°Π», която ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π° ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° информация ΠΏΡ€Π΅Π· Ring Interconnect Π½Π° процСсоритС Π½Π° Intel. Атаката Π²ΠΈ позволява Π΄Π° ΠΏΠΎΠ΄Ρ‡Π΅Ρ€Ρ‚Π°Π΅Ρ‚Π΅ информация Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² Π΄Ρ€ΡƒΠ³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π° прослСдитС информацията Π·Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π½Π° натисканС Π½Π° клавиш. Π˜Π·ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Ρ…Π° инструмСнти Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ измСрвания ΠΈ няколко Сксплойта Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠΈ.

ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ са Ρ‚Ρ€ΠΈ Сксплойта, ΠΊΠΎΠΈΡ‚ΠΎ Ρ‰Π΅ позволят:

  • Π’ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Π±ΠΈΡ‚ΠΎΠ²Π΅ ΠΎΡ‚ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ Π·Π° ΠΊΡ€ΠΈΠΏΡ‚ΠΈΡ€Π°Π½Π΅ ΠΏΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° RSA ΠΈ EdDSA, ΠΊΠΎΠΈΡ‚ΠΎ са уязвими Π½Π° Π°Ρ‚Π°ΠΊΠΈ ΠΎΡ‚ страничСн ΠΊΠ°Π½Π°Π» (Π°ΠΊΠΎ забавянията Π½Π° изчислСнията зависят ΠΎΡ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ). НапримСр, ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Π±ΠΈΡ‚ΠΎΠ²Π΅ с информация Π·Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π° Π·Π° инициализация (nonce) Π½Π° EdDSA Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ, Π·Π° Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π°Ρ‚Π°ΠΊΠΈ Π·Π° послСдоватСлно Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° цСлия частСн ΠΊΠ»ΡŽΡ‡. Атаката Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΈΠΌΠ° Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½Π° с голям Π±Ρ€ΠΎΠΉ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈ. НапримСр, ΡƒΡΠΏΠ΅ΡˆΠ½Π° опСрация сС ΠΏΠΎΠΊΠ°Π·Π²Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ SMT (HyperThreading) Π΅ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ ΠΈ LLC ΠΊΠ΅ΡˆΡŠΡ‚ Π΅ сСгмСнтиран ΠΌΠ΅ΠΆΠ΄Ρƒ процСсорнитС ядра.
  • Π”Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°ΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π·Π° закъснСния ΠΌΠ΅ΠΆΠ΄Ρƒ натискания Π½Π° клавиши. Π—Π°ΠΊΡŠΡΠ½Π΅Π½ΠΈΡΡ‚Π° зависят ΠΎΡ‚ позицията Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΠΈΡ‚Π΅ ΠΈ позволяват, Ρ‡Ρ€Π΅Π· статистичСски Π°Π½Π°Π»ΠΈΠ·, Π΄Π° сС ΠΏΡ€Π΅ΡΡŠΠ·Π΄Π°Π΄Π°Ρ‚ Π΄Π°Π½Π½ΠΈΡ‚Π΅, въвСдСни ΠΎΡ‚ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°Ρ‚Π° с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° вСроятност (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ Ρ…ΠΎΡ€Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΠΈΡˆΠ°Ρ‚ "s" слСд "a" ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΎΡ‚ "g" слСд "с").
  • ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°ΠΉΡ‚Π΅ скрит ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π΅Π½ ΠΊΠ°Π½Π°Π» Π·Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ процСситС със скорост ΠΎΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 4 ΠΌΠ΅Π³Π°Π±ΠΈΡ‚Π° Π² сСкунда, ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° сподСлСна ΠΏΠ°ΠΌΠ΅Ρ‚, кСш Π½Π° процСсора ΠΈ спСцифични Π·Π° процСсора рСсурси ΠΈ структури Π½Π° процСсора. ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ прСдлоТСният ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π° създаванС Π½Π° скрит ΠΊΠ°Π½Π°Π» Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Ρ€ΡƒΠ΄Π΅Π½ Π·Π° Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ със ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° срСщу Π°Ρ‚Π°ΠΊΠΈ ΠΏΠΎ страничнитС ΠΊΠ°Π½Π°Π»ΠΈ.

ЕксплойтитС Π½Π΅ изискват повишСни ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΡ‚ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ, Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ. ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ Π°Ρ‚Π°ΠΊΠ°Ρ‚Π° ΠΌΠΎΠΆΠ΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ Π΄Π° бъдС Π°Π΄Π°ΠΏΡ‚ΠΈΡ€Π°Π½Π° Π·Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ машини, Π½ΠΎ Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π΅ извън ΠΎΠ±Ρ…Π²Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΡƒΡ‡Π²Π°Π½Π΅Ρ‚ΠΎ ΠΈ Π½Π΅ Π΅ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½ΠΎ тСстванС Π½Π° систСми Π·Π° виртуализация. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΡ‚ ΠΊΠΎΠ΄ Π΅ тСстван Π½Π° процСсор Intel i7-9700 Π² Ubuntu 16.04. ΠšΠ°Ρ‚ΠΎ цяло, ΠΌΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π½Π° Π°Ρ‚Π°ΠΊΠ° Π΅ тСстван Π½Π° процСсори Π·Π° настолни ΠΊΠΎΠΌΠΏΡŽΡ‚Ρ€ΠΈ ΠΎΡ‚ фамилията Intel Coffee Lake ΠΈ Skylake ΠΈ ΡΡŠΡ‰ΠΎ Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌ Π·Π° ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ процСсори Xeon ΠΎΡ‚ фамилията Broadwell.

ВСхнологията Ring Interconnect сС появи Π² процСсори, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Sandy Bridge ΠΈ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ няколко Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π½ΠΈ шини, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° изчислитСлни ΠΈ Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ ядра, ΡΡŠΡ€Π²ΡŠΡ€Π΅Π½ мост ΠΈ кСш. Π‘ΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π° Π°Ρ‚Π°ΠΊΠ° Π΅, Ρ‡Π΅ ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° чСстотната Π»Π΅Π½Ρ‚Π° Π½Π° ΠΏΡ€ΡŠΡΡ‚Π΅Π½Π½Π°Ρ‚Π° шина, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ с ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² Π΅Π΄ΠΈΠ½ процСс забавят Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π΄ΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ процСс. Π§Ρ€Π΅Π· ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° подробности Π·Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Ρ‡Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ инТСнСрство, атакуващият ΠΌΠΎΠΆΠ΅ Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ причинява забавянС Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ° Π΄ΠΎ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² Π΄Ρ€ΡƒΠ³ процСс ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Ρ‚Π΅Π·ΠΈ забавяния ΠΊΠ°Ρ‚ΠΎ страничСн ΠΊΠ°Π½Π°Π» Π·Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° информация.

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

ОсвСн Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° слСди ΠΎΡ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Сксплойт Π·Π° ΠΏΡŠΡ€Π²ΠΈΡ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° уязвимостта Spectre (CVE-2017-5753) ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π°Ρ‚Π°ΠΊΠΈ срСщу Linux систСми. Π•ΠΊΡΠΏΠ»ΠΎΠΉΡ‚ΡŠΡ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ·Ρ‚ΠΈΡ‡Π°Π½Π΅ Π½Π° информация ΠΎΡ‚ страничСн ΠΊΠ°Π½Π°Π», Π·Π° Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈ супСрблок Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈ inode Π½Π° Ρ„Π°ΠΉΠ»Π° /etc/shadow ΠΈ Π΄Π° изчисли адрСса Π½Π° страницата Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°, Π·Π° Π΄Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅ Ρ„Π°ΠΉΠ»Π° ΠΎΡ‚ кСша Π½Π° диска.

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

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