CAPEC-665
Exploitation of Thunderbolt Protection Flaws
An adversary leverages a firmware weakness within the Thunderbolt protocol, on a computing device to manipulate Thunderbolt controller firmware in order to exploit vulnerabilities in the implementation of authorization and verification schemes within Thunderbolt protection mechanisms. Upon gaining physical access to a target device, the adversary conducts high-level firmware manipulation of the victim Thunderbolt controller SPI (Serial Peripheral Interface) flash, through the use of a SPI Programing device and an external Thunderbolt device, typically as the target device is booting up. If successful, this allows the adversary to modify memory, subvert authentication mechanisms, spoof identities and content, and extract data and memory from the target device. Currently 7 major vulnerabilities exist within Thunderbolt protocol with 9 attack vectors as noted in the Execution Flow.
Soyutlama
Detailed
Tipik ciddiyet
Very High
Saldırı ihtimali
Low
Saldırıyı anla
Bu saldırı kalıbı nedir?
Uygulama akışı
Saldırı adım adım nasıl ilerler?
Explore
Survey physical victim environment and potential Thunderbolt system targets
Evaluate the target system and its Thunderbolt interface
Experiment
Obtain and/or clone firmware image
Kullanılan teknikler
- Disassemble victim and/or adversary device enclosure with basic tools to gain access to Thunderbolt controller SPI flash by connecting adversary SPI programmer.
- Adversary connects SPI programmer to adversary-controlled Thunderbolt enabled device to obtain/clone victim thunderbolt controller firmware image through tools/scripts.
- Clone firmware image with SPI programmer and tools/scripts on adversary-controlled device.
Parse and locate relevant firmware data structures and information based upon Thunderbolt controller model, firmware version, and other information
Kullanılan teknikler
- Utilize pre-crafted tools/scripts to parse and locate desired firmware data and modify it.
- Locate DROM (Device Read Only Memory) data structure section and calculate/determine appropriate offset to replicate victim device UUID.
- Locate ACL (Access Control List) data structure and calculate/determine appropriate offsets to identify victim device UUID.
- Locate data structure containing challenge-response key information between appropriate offsets.
Disable Thunderbolt security and prevent future Thunderbolt security modifications (if necessary)
Kullanılan teknikler
- The adversary-controlled Thunderbolt device, connected to SPI programmer and victim device via Thunderbolt ports, is utilized to execute commands within tools/scripts to disable SPI flash protections, modify Thunderbolt Security Level, and enable malicious SPI flash protections.
Modify/replace victim Thunderbolt firmware image
Exploit
Connect adversary-controlled thunderbolt enabled device to victim device and verify successful execution of malicious actions
Kullanılan teknikler
- Observe victim device identify adversary device as the victim device and enables PCIe tunneling.
- Resume victim device from sleep, connect adversary-controlled device and observe security is disabled and Thunderbolt connectivity is restored with PCIe tunneling being enabled.
- Observe that in UEFI or Thunderbolt Management Tool/UI that the Security Level does not match adversary modified Security Level of "None" (SL0)
- Observe after installation of Firmware update that within Thunderbolt Management UI the "NVM version" is unchanged/same prior to the prompt of successful Firmware update/installation.
Exfiltration of desired data from victim device to adversary device
Gereksinimler
Saldırının gerçekleşmesi için ne gerekir?
Ön koşullar
- The adversary needs at least a few minutes of physical access to a system with an open Thunderbolt port, version 3 or lower, and an external thunderbolt device controlled by the adversary with maliciously crafted software and firmware, via an SPI Programming device, to exploit weaknesses in security protections.
Gerekli beceri
- High: Detailed knowledge on various system motherboards, PCI Express Domain, SPI, and Thunderbolt Protocol in order to interface with internal system components via external devices.
- High: Detailed knowledge on OS/Kernel memory address space, Direct Memory Access (DMA) mapping, Input-Output Memory Management Units (IOMMUs), and vendor memory protections for data leakage.
- High: Detailed knowledge on scripting and SPI programming in order to configure and modify Thunderbolt controller firmware and software configurations.
Gerekli kaynak
- SPI Programming device capable of modifying/configuring or replacing the firmware of Thunderbolt device stored on SPI Flash of target Thunderbolt controller, as well as modification/spoofing of adversary-controlled Thunderbolt controller.
- Precrafted scripts/tools capable of implementing the modification and replacement of Thunderbolt Firmware.
- Thunderbolt-enabled computing device capable of interfacing with target Thunderbolt device and extracting/dumping data and memory contents of target device.
Tespit
Saldırının göstergeleri nelerdir?
Etki
Başarılı saldırı neye yol açar?
Etkilenen alanlar: Access Control
Etkilenen alanlar: Confidentiality
Etkilenen alanlar: Integrity
Etkilenen alanlar: Authorization
Savunma
Nasıl önlenir ve etkisi azaltılır?
Gerçek dünya