Thunderspy — сСрия Π°Ρ‚Π°ΠΊ Π½Π° ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ с интСрфСйсом Thunderbolt

Раскрыта информация ΠΎ сСми уязвимостях Π² ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ с интСрфСйсом Thunderbolt, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Ρ‘Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ Thunderspy ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΎΠ±ΠΎΠΉΡ‚ΠΈ всС основныС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ обСспСчСния бСзопасности Thunderbolt. На основС выявлСнных ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π΄Π΅Π²ΡΡ‚ΡŒ сцСнариСв ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π°Ρ‚Π°ΠΊ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Ρƒ Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ локального доступа ΠΊ систСмС Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ врСдоносного устройства ΠΈΠ»ΠΈ манипуляции с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ.

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ Π°Ρ‚Π°ΠΊ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ возмоТности ΠΏΠΎ созданию ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Thunderbolt-устройств, клонирования Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… устройств, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ доступа ΠΊ систСмной памяти Ρ‡Π΅Ρ€Π΅Π· DMA ΠΈ пСрСопрСдСлСния настроСк ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ бСзопасности (Security Level), Π² Ρ‚ΠΎΠΌ числС для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ всСх ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹, блокирования установки ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° интСрфСйса Π² Ρ€Π΅ΠΆΠΈΠΌ Thunderbolt Π½Π° систСмах, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Ρ… пробросом Ρ‡Π΅Ρ€Π΅Π· USB ΠΈΠ»ΠΈ DisplayPort.

Thunderbolt прСдставляСт собой ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… устройств, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ°Π±Π΅Π»Π΅ интСрфСйсы PCIe (PCI Express) ΠΈ DisplayPort. Thunderbolt Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ компаниями Intel ΠΈ Apple, ΠΈ примСняСтся Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… соврСмСнных Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°Ρ… ΠΈ ПК. Устройствам Thunderbolt Π½Π° Π±Π°Π·Π΅ PCIe прСдоставлСны срСдства для Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° с прямым доступом ΠΊ памяти, Ρ‡Ρ‚ΠΎ создаёт ΡƒΠ³Ρ€ΠΎΠ·Ρƒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ DMA-Π°Ρ‚Π°ΠΊ для чтСния ΠΈ записи всСй систСмной памяти ΠΈΠ»ΠΈ Π·Π°Ρ…Π²Π°Ρ‚Π° Π΄Π°Π½Π½Ρ‹Ρ… с Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… устройств. Для прСдотвращСния ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ Π² Thunderbolt Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° концСпция ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ бСзопасности (Security Level), которая допускаСт ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ устройств ΠΈ примСняСт для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ соСдинСний.

ВыявлСнныС уязвимости Π΄Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ привязку ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ врСдоносноС устройство ΠΏΠΎΠ΄ Π²ΠΈΠ΄ΠΎΠΌ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° SPI Flash Π² Ρ€Π΅ΠΆΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ бСзопасности ΠΈ Π·Π°ΠΏΡ€Π΅Ρ‚Π° обновлСния ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ (для ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… манипуляций ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ tcfp ΠΈ spiblock). ВсСго раскрыты свСдСния ΠΎ сСми ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…:

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

Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ проявляСтся Π½Π° всСх устройствах, оснащённых Thunderbolt 1 ΠΈ 2 (Π½Π° Π±Π°Π·Π΅ Mini DisplayPort) ΠΈ Thunderbolt 3 (Π½Π° Π±Π°Π·Π΅ USB-C). Пока Π½Π΅ ясно ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² устройствах с USB 4 ΠΈ Thunderbolt 4, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ анонсированы ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅Ρ‚ возмоТности ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ. Уязвимости Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ устранСны ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². ΠŸΡ€ΠΈ этом для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΠΎΠ²Ρ‹Ρ… устройств имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ блокирования части ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, связанных с DMA, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Kernel DMA Protection, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ стала Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒΡΡ начиная с 2019 Π³ΠΎΠ΄Π° (поддСрТиваСтся Π² ядрС Linux, начиная с выпуска 5.0, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· «/sys/bus/thunderbolt/devices/domainX/iommu_dma_protection»).

Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ своих устройств ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Python-скрипт Spycheck, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ запуска с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root для доступа ΠΊ DMI, DMAR-Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ACPI ΠΈ WMI. Π’ качСствС ΠΌΠ΅Ρ€ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ уязвимых систСм рСкомСндуСтся Π½Π΅ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ систСму Π±Π΅Π· присмотра Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π² ΠΆΠ΄ΡƒΡ‰Π΅ΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‡ΡƒΠΆΠΈΠ΅ устройства Thunderbolt, Π½Π΅ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ свои устройства посторонним ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ„ΠΈΠ·ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ своих устройств. Если Π² Thunderbolt Π½Π΅Ρ‚ нСобходимости, Ρ‚ΠΎ рСкомСндуСтся ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Thunderbolt-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π² UEFI ΠΈΠ»ΠΈ BIOS (ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСработоспособности ΠΏΠΎΡ€Ρ‚ΠΎΠ² USB ΠΈ DisplayPort, Ссли ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Thunderbolt).

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