远程攻击 Android 蓝牙
在上周的CanSecWest安全会议上我论述了一种对Android4.3及其以上版本适用的蓝牙协议栈(Bluedroid)的远程攻击。这篇文章简单的描述了这个bug。 如果读者没有耐心的话,可以点这里直接观看攻击视频。 这个漏洞存在于Bluedroid的BLE数据包解析代码中。要测试这个漏洞,攻击者需要强制一名用户连接到恶意的BLE(蓝牙智能)设备上。连接时,该恶意设备会发布一个格式错误的GATT通知数据包,从而造成协议栈的崩溃。 这听上去好像有点牵强——攻击者能强制一名用户连接到设备上。但考虑到这样一个事实:很多Android的BLE应用会适时连接到任何广告设备上来确定其是否是与该应用程序相关联的设备。只要有应用是出于攻击的目的连接就可以成功。 但这个漏洞没有可利用性:崩溃是由一个FORTIFY_SOUCE检测错误所造成的。此外,该漏洞已在Android4.4以上的版本中被修复。 问题代码 问题代码可以在stack/gatt/gatt_cl.c中的gett_process_notification(614行)处被找到。这段代码用于解析通知包(BLE设备周期性的发送给BLE机主的消息)...
