
CVE-2020-12351
Linux: L2CAPにおけるヒープベースの型混同 BLE実装向けPoC (CVE-2020-12351)
元のPoCは、Bluetooth Classicを介した悪意のあるL2CAPパケットの送信に焦点を当てています。しかし、私はBluetooth Low Energy (BLE)通信のみをサポートし、BlueZスタック全体(ClassicとLEの両方)を採用しているペリフェラルに対してテストする必要がありました。
L2CAPは、Bluetooth ClassicとBLEの両方の実装をサポートするためにホストスタックに存在する共通のプロトコルです。
BLEアダプターを搭載したLinuxマシン。内蔵アダプターがない場合は、外付けのものを入手できます。
1. Compile
gcc -o CVE-2020-12351 CVE-2020-12351.c -lbluetooth
2. Run
$./CVE-2020-12351 <BLE_Peripheral_MAC_Address> //MAC Format: FF:FF:FF:FF:FF:FF
Packet capture:
hcidump -i <hci0> -w CVE-2020-12351.pcap