Tesla 远程攻击复盘:从 DEF CON 23 到 FREE-FALL 的五年

导语:Tesla 是「轮子上的服务器」,也是车联网攻击最值钱的靶子。从 2015 年 DEF CON 23 的物理接触攻击,到 2017 年 Black Hat USA 的「FREE-FALL」远程 CAN 注入(Can Message Injection),五年时间,红队把「物理接触」这个前置条件彻底打掉了。


一、Tesla 攻击面全景

Model S/3/X 全车对外暴露的入口可以归成五类:

入口物理范围历史漏洞案例
Wi-Fi 客户端0–50 米(可被钓鱼 AP 拉到远处)Keen Lab 2019 Wi-Fi 栈溢出
蓝牙 / 钥匙0–10 米(Relay Attack 中继可拉到几百米)Tesla 蓝牙 Passive Entry 多次中继研究
蜂窝网络(4G)互联网公网FREE-FALL 2017 主入口
车机 App / 账户 API互联网公网TeslaMate / 第三方 App Token 多次泄漏
车内以太网(OBD 域)物理接触DEF CON 23 Lookout 2015

这五类入口,前四个都能从公网发起攻击。Tesla 在软件层的安全演进直接决定攻击者能走多远。


二、2015 DEF CON 23:Lookout 团队的「物理接触」攻击

CloudFlare 首席安全研究员 Marc Rogers(马克·罗杰斯)和 Lookout 联合创始人兼 CTO Kevin Mahaffey(凯文·马哈菲)合作,DEF CON 23(2015)公开了针对 Model S 的研究成果。关键事实:

  • 6 个漏洞集中在车机系统(CID, Center Information Display),覆盖车机命令处理、固件更新、SSH 调试接口等
  • 物理接触是前置条件——攻击者需要把笔记本电脑插入车内的以太网口才能走完攻击链
  • 攻击者拿到 CID root(Linux 根用户权限)后,可以控制仪表盘、门窗、悬挂升降
  • 在 < 8 km/h 速度下能切断动力,但车会紧急手刹
  • 在 > 8 km/h 速度下切断动力时,Tesla 设计了「自动切空挡 + 保留转向刹车控制」的兜底逻辑
Tesla 攻击概念图

两年后,Rogers 在公开演讲中说过一句话:「Tesla 的 OTA(Over-The-Air,空中升级)能力让他们 24 小时内修复了所有问题,而 Chrysler 因为没有 OTA,被迫召回 140 万辆车。」这是车联网安全史上第一次把「OTA 能力」和「漏洞修复成本」直接绑定的案例。


三、2017 Black Hat USA「FREE-FALL」:远程 CAN 注入的里程碑

腾讯科恩实验室(Keen Security Lab of Tencent)的 Ling Liu(刘陵)、Yuefeng Du(杜越丰)、Sen Nie(聂森)三位研究员,在 2017 年 Black Hat USA 大会公开了 FREE-FALL 研究。关键节点:

  • 2016 年 9 月:科恩首次实现 Tesla Model S 远程攻击
  • 2016 年 9 月:Tesla 紧急加码,引入代码签名(Code Signing)机制,对 FOTA(Firmware Over-The-Air,固件空中升级)包做签名校验
  • 2017 年:科恩再次突破,绕过代码签名,实现任意 CAN 帧远程注入
  • 2017 年 7 月:Black Hat USA 公开细节;同期推送修复固件 8.1(17.26.0)

FREE-FALL 这条攻击链是教科书级的:

  1. 通过 Wi-Fi 或蜂窝网络入侵车机 CID
  2. 利用车机系统的 0day 漏洞(CVE 多个)拿到 root 权限
  3. 从 CID 横向移动到 Gateway(车内网关 ECU)
  4. 在 Gateway 上绕过代码签名验证
  5. 通过 Gateway 向 CAN 总线注入任意帧
  6. 任意帧被动力域、车身域 ECU 接收执行——刹车、方向盘、车门、灯光都能动

演示中最出圈的是「Model X 灯光秀」——研究员让多辆 Model X 的灯光按预定节奏闪烁,实质是同时给多辆车的多个 ECU 下发任意 CAN 帧。整套攻击影响范围横跨 P85、Model X、Model 3 多个车型,可见科恩针对的是 Tesla 通用平台架构而非单点 bug。


四、五层攻击链架构图

层级组件攻击动作关键漏洞点
L1 公网入口Wi-Fi / 蜂窝钓鱼 AP / 4G 链路劫持车机无线驱动
L2 车机系统CID系统级 0day → root缺乏完整性校验
L3 车内网络CID ↔ Gateway横向移动信任域未切分
L4 签名验证Gateway 固件绕过代码签名签名实现缺陷
L5 总线执行CAN Bus注入任意帧缺 CAN ID 过滤
FREE-FALL 攻击链示意图

五、Tesla 防御演化时间线

时间事件防御升级
2015-08DEF CON 23 公开6 漏洞 OTA 修复
2016-09Keen Lab 首次远程攻击引入代码签名
2017-07FREE-FALL 公开强化签名实现 + OTA 推送 8.1(10 天覆盖全网)
2019+Wi-Fi 栈 CVE 持续披露多层隔离 + 漏洞悬赏升级
2020+蓝牙 Passive Entry 中继研究UWB(超宽带)钥匙 + 中继检测

最值得说的两点:OTA 修复速度(24 小时覆盖全网)和漏洞悬赏诚意(单个 P0 漏洞 10 万美元起),让 Tesla 始终保持跟白帽社区的对话通道。


六、红队四点复盘

  1. 公网入口是第一道裂缝:物理接触的限制一旦被远程入口打破,剩下就是时间问题。FREE-FALL 证明了「物理隔离不是安全」
  2. 车内网络信任域要切分:CID 失陷不应该等于 Gateway 失陷,更不应该等于 CAN 总线失陷。零信任(Zero Trust)原则在车内同样适用
  3. 代码签名不是银弹:2016 年 Tesla 加了签名,2017 年就被绕过。签名算法、签名验证环境、签名覆盖范围,任何一环出问题都等于没签
  4. OTA + 漏洞计划是底牌:能不能在 24 小时内把全网车队的漏洞修完,决定了一次攻击是「事件」还是「灾难」

七、复现思路 + 探测 PoC

FREE-FALL 是封闭研究,没法在自家车库复现,但「远程入口探测」这一步完全可以做:

#!/usr/bin/env python3
"""Tesla 远程入口被动探测 PoC —— 仅做安全研究"""
from scapy.all import Dot11, Dot11Beacon, sniff
import sys

def detect_tesla_ap(pkt):
    if pkt.haslayer(Dot11Beacon):
        ssid = pkt[Dot11Beacon].info.decode(errors='ignore')
        # Tesla Service / Tesla Guest / TeslaWiFi 等常见 SSID
        if 'Tesla' in ssid or 'tesla' in ssid.lower():
            print(f'[+] Tesla AP found: {ssid} | BSSID: {pkt[Dot11].addr2}')

print('[*] Sniffing Wi-Fi beacons for Tesla SSIDs (Ctrl+C to stop)...')
sniff(iface='wlan0mon', prn=detect_tesla_ap, store=0)

这只是「看见 Tesla 在广播 SSID」,距离 FREE-FALL 还差十万八千里。但红队做车联网安全研究,永远从「能看到什么」开始。

⚠️ 警告:未经授权对真实车辆做渗透测试属于违法行为,所有研究必须在自有车辆或厂商授权环境进行。


八、现代启示

2020s 的车联网攻防已经不再是「能不能打下来」的问题,而是「打下来要多久」和「能不能被发现」的问题。Tesla 的安全演化给了行业三件事的范本:

  • OTA 速度——把漏洞修复从「召回」变成「推送」
  • 漏洞悬赏——把白帽从「对手」变成「外包安全部」
  • 车内零信任——把车内网络从「内网即安全」变成「每一跳都要验证」

Phase 4 第 13 讲《OTA 升级安全与 Uptane 框架》会专门拆 OTA 这条线,Uptane 是 TUF(The Update Framework,更新框架)在车联网场景的工程化实现。


九、思考题

  1. 如果你的目标是 Model 3 而不是 Model S,FREE-FALL 攻击链的哪一步会最先失效?为什么?
  2. 代码签名被绕过的情况下,整车 OTA 安全还有哪些环节可以做兜底?
  3. 蓝牙钥匙中继攻击(Relay Attack)和 FREE-FALL 攻击链相比,红队测试时哪个门槛更低?

素材出处

  • Marc Rogers & Kevin Mahaffey《How to Hack a Tesla Model S》DEF CON 23(2015)
  • Sen Nie / Ling Liu / Yuefeng Du《Free-Fall: Hacking Tesla From Wireless To CAN Bus》Black Hat USA 2017
  • Keen Security Lab Blog《New Car Hacking Research: 2017, Remote Attack Tesla Motors Again》(2017-07-27)
  • Keen Security Lab Blog《Car Hacking Research: Remote Attack Tesla Motors》(2016-09-19)
  • Kaspersky Daily《DEF CON 23: Researchers hack Tesla S — the company patches cars quickly》

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容