写点什么

专访“白帽黑客”吴石:两次破解特斯拉的腾讯安全科恩实验室这次为什么瞄准物联网?

2020 年 9 月 16 日

专访“白帽黑客”吴石:两次破解特斯拉的腾讯安全科恩实验室这次为什么瞄准物联网?

两次成功入侵特斯拉自动驾驶系统,甚至可以在远程无物理接触的前提下操控汽车, 将特斯拉的中控大屏和液晶仪表盘更换为自己实验室的 Logo,并收到马斯克亲笔签名的致谢信;远程破解宝马多款车型;连续五年参加国际顶级黑客大赛 Pwn2Own 并获得十六个单项冠军,斩获三个 Master of Pwn 称号,创造了世界最好成绩,这到底是一个怎样的团队?本文,InfoQ 有幸独家采访到创造上述事迹的腾讯安全科恩实验室负责人吴石,这个“全球发现漏洞最多的人”所带领的实验室瞄准的未来方向是什么?


凭着“挖漏洞”拿下微软 offer,搞实验室被腾讯收购

去微软是因为我当时发现的漏洞比较多,被腾讯收购是在拿下 Pwn2Own(全世界最著名、奖金最丰厚的黑客大赛)冠军之后。


在加入微软之前,吴石在一家校办企业工作了六年,因为觉得继续呆下去没办法实现自己的梦想就毅然辞职。


“我本身是数学系的,但对挖漏洞特别感兴趣。”辞职后的吴石花了一年时间在家专职找漏洞,并将其中高价值的安全问题提交到回收安全漏洞的第三方厂商,这些厂商会利用漏洞信息制定他们的 IPS 规则,同时将信息与微软等厂商共享——所谓高价值漏洞,就是影响较广、不需要什么前置条件、默认开启的漏洞,比如 windows 漏洞、浏览器漏洞等。这类漏洞如果被黑客恶意利用,造成的影响是巨大的。



在这期间,吴石一个人发掘超过 100 个 Safari 的 CVE(“Common Vulnerabilities & Exposures”,公共漏洞和暴露)漏洞。他曾创造过单年申报微软漏洞数量全球占比 10%、独自发掘 15 个 iOS 漏洞的成绩,这个数字甚至比同期苹果自家研究人员发现漏洞(6 个)还要多。就这样,吴石被微软注意到了,微软的一位技术总监直接给了吴石一份 Offer。


我对这份 offer 很满意,因为基本不限制我做任何事情,不用坐班,每年 20 多个可用漏洞的 KPI 只用一个月就能完成,还顺便买了套房。


2012 年,吴石受到几位已离职的微软同事的邀请,开始担任 keenteam 的技术顾问,这是世界范围内由厂商官方确认发现计算机漏洞数量最多、最了解突破现代安全保护技术的专业安全团队之一。


我们当时主要是希望找到苹果手机越狱的方法,可惜这个目标没实现,但是我们凭借着当时的研究成果去打了一场 Pwn2Own,拿到了冠军。


那一年的 Pwn2Own,keenteam 攻破了当时苹果最新的 iOS 7.0.3,成为国内安全领域的第一个世界冠军。获奖当天,世界知名的安全企业法国 Vupen 通过推特公开祝贺(Vupen 曾在多届类似赛事中拿到冠军),本次比赛受到了中国、美国、日本、英国、法国、韩国等媒体的高度关注,同时引起了腾讯的关注。2014 年,keenteam 被腾讯收购。


在此之后,keenteam 迎来了两年的独立发展,做了很多尝试,虽然技术过硬,但吴石坦言当时也没什么盈利模式,很多产品当时在市面上是可以找到雷同商品的,基本属于很难卖出去的那种,当时的一个尝试是在 Android 手机上利用漏洞获得比较高价值的权限,防止病毒、木马对手机做破坏,这对腾讯的手机管家特别有帮助,keenteam 的相关成员也在之后不久全部被腾讯收编,成立了如今的腾讯安全科恩实验室,吴石也正式成为腾讯 15 级科学家。


从随心所欲到正式收编,这个“全球发现漏洞最多”的男人也开始为管理团队操心,毕竟整个团队聚集了很多优秀的白帽黑客,而优秀的人大抵是极具个性的。吴石表示,腾讯安全科恩实验室内部由少量的项目管理同学和研发团队组成,包括车联网研发团队、移动安全研究团队、IoT 研发团队和倾向于基础安全性研究的团队,这个团队又分为通用软件漏洞挖掘模式研发的团队和研究软件漏洞利用方案的团队。


“一开始,我们内部成员在选择方向上是自由的,但后来发现这样的效果并不好,很多人大学毕业后加入腾讯安全科恩实验室,对于研究方向是迷茫的,大多数情况下,我们会给成员一个引导,更倾向于让他们研究一些与未来相关的领域,比如 5G、物联网安全、工业互联网安全等,我们内部虽然有组织架构,但大家往往是跨组织互相交流,成员自发成立学习兴趣小组,内部也会定期开展学习活动,由资深的研究员分享论文和成果。”


先后攻破特斯拉、宝马,收到马斯克亲笔致谢信

虽然吴石本人在安全领域风生水起,但对大众而言,熟知腾讯安全科恩实验室是从他们攻击特斯拉开始的…


2016 年 9 月 21 日,腾讯安全科恩实验室正式宣布,他们以远程无物理接触的方式成功入侵了特斯拉汽车,这在全球尚属首次。简单来说,他们的研究人员只需坐在办公室,就能完成对特斯拉的远程控制。


整个过程花了两个多月的时间,有多位研究人员参与,团队使用一辆 2014 款 Model S P85 进行安全研究,同时还在一位朋友刚购买的新款 Model S 75D 上进行复测,两者均安装了最新版本固件,证明该项研究可以影响特斯拉多款车型。


此次攻击通过特斯拉车辆的互联网络实现,这是他们能够实现远程无物理接触的前提。理论上,全球范围内的任意一款特斯拉车型都有可能遭遇此类攻击,毕竟大家的系统都是同一套。


入侵成功后,腾讯安全科恩实验室可以将特斯拉的中控大屏和液晶仪表盘更换为实验室 Logo,此时用户任何触摸操作都会失效。当然,该漏洞带来的危害远远不止于这种小把戏,他们能做的事大致分为两类,分别是车辆停车状态和行进状态的远程控制。


“这个事情其实特别简单,我们还是 keenteam 的时候 CEO 买了辆特斯拉,被腾讯收购后这辆特斯拉作为公司资产带过来了,当时不想浪费,就研究了一下。”



2017 年 6 月,整个团队再度破解特斯拉 Model X 系统,远程控制刹车、车门、后备箱,操纵车灯以及天窗。研究人员通过 Wi-Fi 与蜂窝连接两种情况下均实现了对车载系统的破解,通过汽车的网络浏览器来触发计算机漏洞,发送恶意软件,实现黑客攻击。


“2016 年的时候,我们自己做了个攻击用的网站,通过让特斯拉内置的浏览器访问我们做好的网站就可以黑掉中屏,这仅仅是第一步,中间就是需要找一些关联漏洞,整个攻击链路比较长。2017 年的情况差不多,我们做了一个伪 Wi-Fi 热点,wifi 自动连上后就会给一个攻击代码,直接通过 Wi-Fi 或者蓝牙来攻击整个特斯拉的系统。”



搞定特斯拉之后,整个团队也收到了汽车工业界一些人的质疑,大意为即便能搞定类似特斯拉这种造车新势力,也搞不定奔驰、宝马这种品牌。于是,吴石又带人搞定了宝马。


2018 年 5 月,腾讯科恩安全实验室的研究人员在宝马多款车型中发现了 14 个安全漏洞。该研究项目时间为 2017 年 1 月至 2018 年 2 月,随后他们向 BMW 报告了这些问题,并获得全球首个“宝马集团数字化及 IT 研发技术奖”。


说实话,特斯拉还是自动驾驶圈安全系数较高的

这番操作过后,腾讯安全科恩实验室在汽车安全领域声名鹊起。


2019 年 3 月 29 日,腾讯安全科恩实验室(Keen Security Lab)在官方推特上发布了一篇关于特斯拉自动驾驶安全漏洞的文章链接,题目是《特斯拉 Autopilot 的实验性安全研究》,重点关注在视觉 AI 模型对抗研究、Autopilot 系统架构与网络安全等方面。以特斯拉 Model S(软件版本 2018.6.1)为对象,针对其搭载的 Autopilot 系统进行安全研究,腾讯安全科恩实验室取得了以下三个研究成果。


1.雨刷的视觉识别缺陷


特斯拉 Autopilot 系统借助图像识别技术,通过识别外部天气状况实现自动雨刷功能。腾讯安全科恩实验室通过研究发现,利用 AI 对抗样本生成技术生成特定图像并进行干扰时,该系统输出了“错误”的识别结果,导致车辆雨刷启动。



特斯拉自动雨刷功能的视觉神经网络


2.车道的视觉识别缺陷


特斯拉 Autopilot 系统通过识别道路交通标线,实现对车道的识别和辅助控制。腾讯安全科恩实验室通过研究发现,在路面部署干扰信息后,可导致车辆经过时对车道线做出错误判断,致使车辆驶入反向车道。


3.遥控器操控车辆行驶


利用已知漏洞在特斯拉 Model S(版本 2018.6.1)获取 Autopilot 控制权之后,腾讯安全科恩实验室通过实验证明,即使 Autopilot 系统没有被车主主动开启,也可以利用 Autopilot 功能实现通过游戏手柄对车辆行驶方向进行操控。


“我们团队花了差不多一年的时间实现远程控制,这个成本是非常高的,所以特斯拉其实是安全系数相当高的一款车,如果人机接口继续增加(比如智能召唤功能出现)必然需要在远端或者车上开一个服务端口,这样肯定会增加被攻击概率,但相对来说,特斯拉是非常安全的。”


对于自动驾驶领域的汽车安全性问题,吴石认为关键要看系统复杂度,越复杂越容易出现安全问题,看似简单的系统往往非常难以攻破,一般厂商都会模拟攻击的方式来提高安全性,但这个工作量非常大,现在可以通过机器学习的方法来防范攻击,但因为是一个比较新的领域,所以大部分厂商还没有这样的概念,这也导致自动驾驶目前在信息安全方面比较弱。


因此,吴石带着团队搞出了 sysAuditor,这是一款对嵌入式系统(物联网设备、手机、汽车)进行安全基线审计的产品,采用线下私有化部署,确保客户固件数据更强隐私保护,主要面向汽车、手机、物联网设备制造商。车厂研发部门可以对车载系统的安全性进行检测,对车端系统的设计、配置、编码缺陷和安全漏洞进行自动化分析。虽然某些复杂问题或高级漏洞可能还需要安全研究员的人力介入,但“绝大多数问题都已经能够通过平台系统自动化完成了”。


这一次,黑客瞄准了物联网

当黑客瞄准了某一目标时,这意味着该领域的安全问题必须要引起重视了,吴石及腾讯安全科恩实验室的过往战绩也证明了这一点。


“自动驾驶只是一部分,我们最主要还是研究汽车这个工业产品本身的安全性,通过做这样一个攻击演示,让厂商和消费者也能够了解自动驾驶在安全上还是很有问题的,需要被高度重视。”


如今,物联网风起,各种类型的硬件设备在可预见的未来会爆炸式增长。从 PC 时代到移动时代,吴石这群人对浏览器、Android、iOS 研究得已经足够多了,当整个时代继续向前,显然到了物联网和工业互联网的时代。


采访中,吴石表示随着 5G 技术的成熟,业界出现了很多低成本的物联网设备,这些设备的安全性非常有问题,而且严重到会影响整个互联网的安全。一方面,设备本身拥有更多的入口和控制方式,这为用户带来操作便利性的同时也形成了更多攻击面。IoT 设备的严重碎片化现象以及设计开发人员安全意识薄弱,都会导致出厂的固件中存在着各种各样的漏洞。


另一方面,由于 IoT 本身使用的操作系统数量多,使用的架构不统一,固件格式更是因厂商而异,常见格式数以百计,同时还存在着许多厂商自行设定的特殊格式。多样性给 IoT 设备带来定制化与差异化的便捷,同时也给安全自动化检测带来了挑战。


其实很多做物联网设备的厂商利润很薄,自然对安全是欠考虑的,这些便宜的硬件设备存在很多安全问题,最大的问题是利用了很多非常老的开源软件,这些软件存在的安全问题甚至已经被公布了,但厂商仍然没有做修复,毕竟即便是家庭路由器的部件升级都需要花费很多时间和费用,这就导致漏洞直接曝光在互联网上,黑客可以随意利用。”所以,腾讯安全科恩实验室希望解决这些安全问题。


针对此,吴石带领的腾讯安全科恩实验室推出了一款自动化固件安全扫描系统 IoTSec,系统通过对 IoT 设备常见攻击面、漏洞与安全风险模式进行建模,使用数据流、控制流以及静态污点分析等方法,对设备固件以及固件配套的源代码进行安全扫描。平台提供针多种目标的扫描检测能力,支持多种主流操作系统,支持常见主流 cpu 架构,在多个维度、最大化并尽量精准地识别设备中的安全风险问题并以报告的形式全面呈现并给出修复建议。


“我们之前测了大概 20 万固件,因为这些设备的格式千差万别,一半以上基本都可以解压成功,漏洞检测的准确率可以达到 80%到 90%以上。”


要想利用机器学习的方法实现自动检测,还必须拥有足够多且优质的数据。吴石表示,很多厂商都会在网站提供下载升级的 rom,尽管他们可能不乐意修复,所以并不主动推送,但对于严重的漏洞不得已也会修复,腾讯安全科恩实验室就把这些全部进行了打包,囊括进了检测系统。目前,该系统开通了网上的免费版https://iotsec.tencent.com/,可以免费试用。


自成立伊始,腾讯安全科恩实验室就开始对外输出安全能力。“那个时候,我们没想过赚钱,就是从手机开始,想弄明白手机内部长什么样子,那时候是跟华为的工程师合作,后面慢慢车联网的客户就多起来了,包括奥迪、宝马、上汽集团,广汽、东风等,再到如今的 5G、物联网,我们希望可以把积累的能力对外输出,包括物联网,我们还是愿意以合适的价格对外提供服务。


过去十年,吴石最感兴趣并且一直在研究的方向都是动态漏洞发现,利用很多机器去跑,跑出来的结果是一个实实在在的安全问题,这还是蛮有挑战的,对一个大型软件而言,把所有状态都跑一遍是不现实的,这就需要选择合适的算法和方式。面向未来,吴石希望可以继续加强这一部分的研究,通过将 AI 引入安全研究中来有效降低难度,并将这些能力和方法,比如 IoTSec 输出到全国各地,也是尽可能缓解安全领域的人才缺口。


“今年行业的人才缺口大概是 70 万,明年缺口要达到 100 万。目前高校每年能提供的安全专业的毕业生仅 5 万左右。另一个问题则是人才断层,你可以看到‘70 后’在企业乃至国家层面做安全的屈指可数,‘80 后’这一代就已经有了巨大的人才断层,因为当时安全行业非常苦,压根儿不挣钱,大多数高校也就没有设立安全专业。此外,国内安全领域炒得很热闹,看起来人也不少,但是这么多年下来能够行销全世界的安全产品几乎没有,被所有行业广泛采用的安全产品也乏善可陈。


此外,腾讯安全科恩实验室的工业控制系统在上海松江区也已落地,工业互联网的安全研究也将是整个实验室未来能力输出的一部分。


庆幸,这些顶尖的安全人员进入了腾讯安全科恩实验室,成为了最佳的白帽黑客。


采访嘉宾:


吴石,腾讯安全科恩实验室负责人


20 年来一直从事网络安全方面的研究及开发工作。曾在浏览器领域、PC 软件领域的漏洞挖掘取得了系列研究性创新成果。其本人领导的科恩团队专注于移动互联网安全、车联网安全研究,与特斯拉、奥迪、宝马等主流车厂建立了合作关系,为消费者的出行安全做出了较大贡献。吴石还注重人才的培养,先后组建的 keenteam 安全研究团队、eee CTF 战队,以及现在领导的科恩实验室,培育出了数十位具有世界先进水平的研究员。团队在国内、国际安全大赛均取得了卓越成绩。在世界级的黑客大赛 pwn2own 上斩获了 3 个团体冠军,今年又在有“黑客世界杯”之称的 DEFCON CTF 上拿到了总冠军——这是中国战队第一次在这项国际顶级安全赛事上取得冠军。


2020 年 9 月 16 日 13:303446
用户头像
赵钰莹 InfoQ高级编辑

发布了 706 篇内容, 共 415.7 次阅读, 收获喜欢 2292 次。

关注

评论

发布
暂无评论
发现更多内容

阿里p8私藏MyBatis笔记,从入门到精通,纵享源码细节

周老师

Java 编程 程序员 架构 面试

我在阿里实习做开源

apache/dubbo-go

微服务 程序人生 云原生 dubbo dubbogo

苹果笔记本充不进电的解决方案

石云升

电脑故障 28天写作 3月日更

Python 分通道读取图像数据,取经之路第 4 天

梦想橡皮擦

28天写作 3月日更

Github霸榜半年的阿里并发编程速成笔记究竟有什么魅力?

程序员小毕

Java 程序员 架构 面试 并发编程

【LeetCode】逆波兰表达式求值Java题解

HQ数字卡

算法 LeetCode 28天写作 3月日更

寻找被遗忘的勇气(二十)

Changing Lin

3月日更

所谓生产力

ES_her0

3月日更

GitOps | 一种云原生的持续交付模型

xcbeyond

CI/CD gitops 3月日更

初识Golang之调用方法

Kylin

golang新手 3月日更

国内可用镜像站整理

小任

区块链溯源追溯系统开发,区块链公共服务平台建设方案

WX13823153201

区块链溯源追溯系统开发

老板要我开发一个简单的工作流引擎

Java小咖秀

架构 工作流 开发 工作流调度 工作流引擎

打通Jira与钉钉和企业微信不再难

YY哥-杨勇

MySQL如何选择主键

架构精进之路

MySQL 3月日更

蚂蚁二面:MQ消费端遇到瓶颈除了横向扩容外还有其他解决办法?

中间件兴趣圈

面试 RocketMQ 消息中间件

TCP 三次握手与四次挥手

insight

TCP 3月日更

[TcaplusDB知识库]TcaplusDB架构描述

TcaplusDB

数据库 nosql Tcaplus

基于SpringCloud,支持安卓、IOS、包含前后端等等完整网约车项目

Java架构追梦

Java 架构 面试 SpringCloud 网约车项目

这份1307页Android面试全套真题解析,源码+原理+手写框架

欢喜学安卓

android 程序员 面试 移动开发

2021年Java春招高级面试指南(1到5年Java面试者必备)

比伯

Java 编程 架构 面试 程序人生

2月看的9部电影和1本书

金龟换酒

电影 书籍

十步输出设计文档

Arvin

设计实践

配置引起事故复盘

风翱

3月日更

数据库备份真的很重要!很重要!很重要!

xiezhr

oracle sql MySQL 运维 数据备份

一口气面了腾讯两个部门!

我是程序员小贱

3月日更

翻译:《实用的Python编程》07_01_Variable_arguments

codists

Python

永动金融EGG公链去中心化社交平台与通证EFTalk全球正式亮相

币圈那点事

区块链

Github连夜下架!阿里新产Java全栈面试突击小册太香了

Java王路飞

Java 程序员 架构 面试 分布式

这些面试题你会吗?6年菜鸟开发面试字节跳动安卓研发岗,复习指南

欢喜学安卓

android 程序员 面试 移动开发

C++线程池ThreadPoolExecutor实现原理

Linux服务器开发

c++ 线程池 后端开发 Linux服务器开发 Linux后台开发

专访“白帽黑客”吴石:两次破解特斯拉的腾讯安全科恩实验室这次为什么瞄准物联网?-InfoQ