Thunderspy - ΠΏΠΎΡ€Π΅Π΄ΠΈΡ†Π° ΠΎΡ‚ Π°Ρ‚Π°ΠΊΠΈ срСщу ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅ с интСрфСйс Thunderbolt

Π Π°Π·ΠΊΡ€ΠΈΡ‚ΠΈ Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ относно сСдСм уязвимости Π² ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½Π΅ с интСрфСйс Thunderbolt, ΠΎΠ±Π΅Π΄ΠΈΠ½Π΅Π½ΠΈ ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅ Π“Ρ€ΡŠΠΌΠΎΡ‚Π΅Π²ΠΈΡ†Π° ΠΈ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»Π΅Ρ‚Π΅ всички основни ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π·Π° сигурност Π½Π° Thunderbolt. Π’ΡŠΠ· основа Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ са ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈ Π΄Π΅Π²Π΅Ρ‚ сцСнария Π·Π° Π°Ρ‚Π°ΠΊΠ°, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ, Π°ΠΊΠΎ атакуващият ΠΈΠΌΠ° Π»ΠΎΠΊΠ°Π»Π΅Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ систСмата Ρ‡Ρ€Π΅Π· ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΎ устройство ΠΈΠ»ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π°.

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈΡ‚Π΅ Π·Π° Π°Ρ‚Π°ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° създаванС Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Thunderbolt устройства, ΠΊΠ»ΠΎΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΎΡ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ устройства, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ систСмната ΠΏΠ°ΠΌΠ΅Ρ‚ Ρ‡Ρ€Π΅Π· DMA ΠΈ замяна Π½Π° настройкитС Π·Π° Π½ΠΈΠ²ΠΎ Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π°, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ пълно Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° всички Π·Π°Ρ‰ΠΈΡ‚Π½ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ, Π±Π»ΠΎΠΊΠΈΡ€Π°Π½Π΅ Π½Π° инсталиранСто Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° ΠΈ ΠΏΡ€Π΅Π²ΠΎΠ΄ΠΈ Π½Π° интСрфСйса към Ρ€Π΅ΠΆΠΈΠΌ Thunderbolt Π½Π° систСми, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ Π΄ΠΎ USB ΠΈΠ»ΠΈ DisplayPort прСнасочванС.

Thunderbolt Π΅ унивСрсалСн интСрфСйс Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€Π½ΠΈ устройства, ΠΊΠΎΠΉΡ‚ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π° PCIe (PCI Express) ΠΈ DisplayPort интСрфСйси Π² Π΅Π΄ΠΈΠ½ ΠΊΠ°Π±Π΅Π». Thunderbolt Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΎΡ‚ Intel ΠΈ Apple ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈ Π»Π°ΠΏΡ‚ΠΎΠΏΠΈ ΠΈ ΠΊΠΎΠΌΠΏΡŽΡ‚Ρ€ΠΈ. PCIe-Π±Π°Π·ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Thunderbolt устройства са снабдСни с DMA I/O, ΠΊΠΎΠ΅Ρ‚ΠΎ прСдставлява Π·Π°ΠΏΠ»Π°Ρ…Π° ΠΎΡ‚ DMA Π°Ρ‚Π°ΠΊΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ ΠΈ запис Π½Π° цялата систСмна ΠΏΠ°ΠΌΠ΅Ρ‚ ΠΈΠ»ΠΈ Π·Π° улавянС Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΊΡ€ΠΈΠΏΡ‚ΠΈΡ€Π°Π½ΠΈ устройства. Π—Π° Π΄Π° ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π°Ρ‚Π°ΠΊΠΈ, Thunderbolt ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈ концСпцията Π·Π° Π½ΠΈΠ²Π° Π½Π° сигурност, която позволява ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ само Π½Π° ΠΎΡ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΎΡ‚ потрСбитСля устройства ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° криптографско удостовСряванС Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠΈΡ‚Π΅ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° срСщу Ρ„Π°Π»ΡˆΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° ID.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ уязвимости позволяват Π΄Π° сС Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΠΈ Ρ‚Π°ΠΊΠΎΠ²Π° ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½Π΅ ΠΈ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΎ устройство ΠΏΠΎΠ΄ ΠΏΡ€ΠΈΠΊΡ€ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΎΡ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ. ОсвСн Ρ‚ΠΎΠ²Π° Π΅ възмоТно Π΄Π° сС ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° ΠΈ Π΄Π° сС ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡ΠΈ SPI Flash Π² Ρ€Π΅ΠΆΠΈΠΌ само Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° пълно Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π½ΠΈΠ²Π°Ρ‚Π° Π½Π° сигурност ΠΈ Π·Π°Π±Ρ€Π°Π½Π° Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π° (ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ са ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ Π·Π° Ρ‚Π°ΠΊΠΈΠ²Π° ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ†ΠΈΠΈ tcfp ΠΈ spiblock). ΠžΠ±Ρ‰ΠΎ бСшС Ρ€Π°Π·ΠΊΡ€ΠΈΡ‚Π° информация Π·Π° сСдСм ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°:

  • ИзползванС Π½Π° Π½Π΅Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΈ схСми Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€Π°;
  • ИзползванС Π½Π° слаба схСма Π·Π° удостовСряванС Π½Π° устройството;
  • Π—Π°Ρ€Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π½Π΅Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΎ устройство;
  • НаличиС Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚, ΠΊΠΎΠΈΡ‚ΠΎ позволяват ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π°Ρ‚Π°ΠΊΠΈ Π·Π° Π²Ρ€ΡŠΡ‰Π°Π½Π΅ към уязвими Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ;
  • ИзползванС Π½Π° Π½Π΅Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€Π°;
  • Π‘ΡŠΠ³ΠΎΠ²Π΅ Π² интСрфСйса Π·Π° SPI Flash;
  • Липса Π½Π° ΠΏΡ€Π΅Π΄ΠΏΠ°Π·Π½ΠΈ срСдства Π½Π° Π½ΠΈΠ²ΠΎ Boot Camp.

Уязвимостта засяга всички устройства, ΠΎΠ±ΠΎΡ€ΡƒΠ΄Π²Π°Π½ΠΈ с Thunderbolt 1 ΠΈ 2 (Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° Mini DisplayPort) ΠΈ Thunderbolt 3 (Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° USB-C). ВсС ΠΎΡ‰Π΅ Π½Π΅ Π΅ ясно Π΄Π°Π»ΠΈ сС появяват ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Π² устройства с USB 4 ΠΈ Thunderbolt 4, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅Π·ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ са анонсирани Ρ‚ΠΎΠΊΡƒ-Ρ‰ΠΎ ΠΈ всС ΠΎΡ‰Π΅ няма Π½Π°Ρ‡ΠΈΠ½ Π΄Π° сС тСства тяхното внСдряванС. УязвимоститС Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΈ ΠΎΡ‚ софтуСра ΠΈ изискват Ρ€Π΅Π΄ΠΈΠ·Π°ΠΉΠ½ Π½Π° Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ. Π—Π° някои Π½ΠΎΠ²ΠΈ устройства ΠΎΠ±Π°Ρ‡Π΅ Π΅ възмоТно Π΄Π° сС Π±Π»ΠΎΠΊΠΈΡ€Π°Ρ‚ някои ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с DMA, ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡŠΡ‚ DMA Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π° ядрото, ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° която Π·Π°ΠΏΠΎΡ‡Π½Π° Π΄Π° сС ΠΏΡ€ΠΈΠ»Π°Π³Π° ΠΎΡ‚ 2019 Π³. (с ΠΏΠΎΠ΄ΠΊΡ€Π΅ΠΏΠ°Ρ‚Π° Π½Π° Π² ядрото Π½Π° Linux, Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΉΠΊΠΈ с вСрсия 5.0, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅Ρ‚ΠΎ Ρ‡Ρ€Π΅Π· β€œ/sys/bus/thunderbolt/devices/domainX/iommu_dma_protection”).

ΠžΡΠΈΠ³ΡƒΡ€Π΅Π½ Π΅ скрипт Π½Π° Python Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ устройства Шпионска ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ изисква стартиранС ΠΊΠ°Ρ‚ΠΎ root Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ DMI, ACPI DMAR Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈ WMI. Π—Π° Π΄Π° Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚Π΅ уязвимитС систСми, Π²ΠΈ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌΠ΅ Π΄Π° Π½Π΅ оставятС систСмата Π±Π΅Π· Π½Π°Π΄Π·ΠΎΡ€ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΈΠ»ΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌ Π½Π° готовност, Π΄Π° Π½Π΅ ΡΠ²ΡŠΡ€Π·Π²Π°Ρ‚Π΅ Π½Π΅Ρ‡ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Thunderbolt устройства, Π΄Π° Π½Π΅ оставятС ΠΈ Π΄Π° Π½Π΅ Π΄Π°Π²Π°Ρ‚Π΅ Π²Π°ΡˆΠΈΡ‚Π΅ устройства Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ ΠΈ Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅, Ρ‡Π΅ Π²Π°ΡˆΠΈΡ‚Π΅ устройства са физичСски Π·Π°Ρ‰ΠΈΡ‚Π΅Π½ΠΈ. Ако Thunderbolt Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ, ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅ Π΄Π° Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ Thunderbolt ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€Π° Π² UEFI ΠΈΠ»ΠΈ BIOS (Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ нСработоспособност Π½Π° USB ΠΈ DisplayPort ΠΏΠΎΡ€Ρ‚ΠΎΠ²Π΅Ρ‚Π΅, Π°ΠΊΠΎ са Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ Ρ‡Ρ€Π΅Π· Thunderbolt ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€).

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

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