设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 手机 公司 数据
当前位置: 首页 > 服务器 > 安全 > 正文

唐青昊:Marvel Team 这一年 | 黑客 2016

发布时间:2017-01-07 12:16 所属栏目:53 来源:雷锋网
导读:口述/唐青昊 应鑫磊 肖伟 文/史中小编 没有人喜欢孤独,黑客也一样。 我毫不讳言,曾经怀疑自己选择“虚拟化漏洞挖掘”这个方向究竟是不是正确。因为这几个字,如你所见,乍一看上去似乎不知所云。而直到今天,精专这个方向的安全团队,在全世界都不超过五

口述/唐青昊 应鑫磊 肖伟

文/史中小编

没有人喜欢孤独,黑客也一样。

我毫不讳言,曾经怀疑自己选择“虚拟化漏洞挖掘”这个方向究竟是不是正确。因为这几个字,如你所见,乍一看上去似乎不知所云。而直到今天,精专这个方向的安全团队,在全世界都不超过五个。

在2015年我组建Marvel Team,也就是漫威团队的时候,安全世界的江湖似乎还被浏览器漏洞和系统漏洞统治。但我学到的知识总是提醒我:随着云计算的爆炸,这些坐落在云上的虚拟主机中,隐藏着巨大的风险。

而2016年,我们在全世界面前, 揭开了这些风险的面孔。

唐青昊:Marvel Team 这一年 | 黑客 2016

Pwn2Own,是世界上顶尖的黑客破解大赛。

之所以说顶尖,是因为全世界能有资格报名参赛的黑客寥寥无几。比赛的规则很简单,你需要用一条链接,从网络的另一端“百步穿杨”击溃目标系统,拿下控制权。这些目标是:Edge+Win10、Safari+MacOS、Chrome+Android、Adobe Flash 等等。

这些浏览器或者系统,几乎每一个都在全球拥有数十亿用户。任何一个可以拿下他们的致命漏洞,都价值十几万美元(黑市上的价格更高),这个数字,也恰好是 Pwn2Own 对于漏洞的奖金数。没有十足的把握,不会有黑客报名 Pwn2Own。因为在比赛的现场,每人只有三次攻击尝试机会。从台上走下来的时候,你要么带着无上的荣耀,要么带着无比的屈辱。

有点遗憾,这么多年来 Pwn2Own 和我都没什么关系。直到今年的 Pwn2Own,主办方做出了一些有趣的改动,悄悄增加了一个目标:VMware Workstation 虚拟机软件。

我在电脑屏幕前看到这个消息的时候,正是春节前两天。那时距离比赛还有三周,而报名截止是比赛前两周。虽然只有一周时间,但机会从天而降,我们没有任何理由不去试试。

之前,我们把主要的精力放在了对开源虚拟化软件(QEMU、Docker 等等)的安全研究上。而对于封闭的商业虚拟化软件,包括我们在内的国际所有安全团队经验都不多。

漫威团队的十多个小伙伴,瞬间把研究方向都转向了 Workstation。在我的逼迫下,新年假期都抱着电脑工作,连放炮的动作都像是敲键盘打代码。

唐青昊:Marvel Team 这一年 | 黑客 2016

虽然之前对 VMware 有所涉猎,但是那些零星的研究根本不足以挖掘出漏洞。我们试图用其他虚拟化软件的脆弱点来套用到 VMware 上,但是都没有成功。

一周的时间,要想从零开始攻破如此复杂的系统,确实不太公平。安全研究这件事,属于科学研究的范畴。如果没有过硬的代码,即使你的意志再坚决,也无论如何都无法发起攻击。这是简单而残酷的道理。

直到报名截止,我们的研究进度还可以用惨烈来形容。团队小伙伴们独立找到三四个 Bug,但是一个 Bug 需要有成熟的利用方法,才能成为漏洞。显然,我们距离目标还十分遥远。无奈,我和我的兄弟们说,这次不打了。

事实上,在三月份的比赛上,全世界范围内,甚至没有一个团队报名攻击 Workstations。

据此,也验证了我的想法:攻击 Workstation 难度不小,全球黑客的进度都不是太快。但从另一个方面来看,我隐约觉得,世界第一的位置仍然在等着我们。

唐青昊:Marvel Team 这一年 | 黑客 2016

【VMware Workstation】

和 VMware 的“梁子”就是这么结下的。

从四月到七月,团队的主要任务就是,全面摸清 VMware Workstation 的代码结构。我们用了四个月的时间,证明了之前“一周拿下 VMware”的想法有多么天真。

商业软件的代码质量之高,深深震撼了我。虽然虚拟化软件的代码逻辑是相似的。但是对比开源软件的“粗制滥造”,VMware的代码简直就是艺术品。

有多变态呢?让我来告诉你。我们之前在社区虚拟化软件中找到的漏洞模式,在 VMware 中统统不存在。

面对一个封闭软件,就像走进一幢漆黑的房子。我们必须一点点摸清结构,并且试图分析出哪些是承重墙,哪个墙上有可能存在裂缝。由于代码封闭,我们必须用逆向的方式来进行代码审计。面对几百万行代码,工程量可想而知。更可怕的在于,连续几个月没有突破,团队中弥漫出一些绝望的气息。

我没办法责怪那些在最艰难的时候离开团队的人。毕竟谁都没有办法预测未来。

说到这,有必要介绍两位童鞋:肖伟和应鑫磊,他们是漫威团队的重要成员。实际上,他们非常年轻,去年在团队实习,今年才正式从学校毕业。从学校忙完毕业正式入职,已经到了七月。

先来说说肖伟。

在今年四月,肖伟作为主力发现了开源架构 QEMU 中的致命漏洞:传送门。仅仅通过这一个漏洞就可以实现从虚拟机到宿主机的逃逸。这个漏洞也巩固了漫威团队在虚拟化漏洞挖掘领域的“江湖地位”。从七月开始,他加入了 VMware 研究大军。

虚拟机逃逸,是一种“隔山打牛”的气功。因为我们身处虚拟机中,却要对宿主机的内存数据施加影响。所以有很多参数的变化,经常超出我们的控制范围。为了最大程度上影响宿主机的内存数据,最好的入手点就是这些被虚拟化出来的硬件。传送门漏洞,就是坐落在虚拟显卡上的漏洞。

肖伟挽起袖子,准备大干一场。他从虚拟网卡下手,没过多久就发现了一些漏洞。但是,这些漏洞虽然跳出了以往的思路,却都是拒绝服务的漏洞,不能对 Workstation 施行“越界读写”,也就是不能造成致命的打击。功夫不负有心人,终于,一个越界读的漏洞被他揪出来了。但是,如何利用这个漏洞,又让大家犯愁。就在大家冥思苦想漏洞利用的那几天, VMware 放出了 Workstation 的最新版更新。在最新版中,他们居然丧心病狂地修复了漏洞!也就是说,远在千里之外,他们同样发现了同样的问题。

我再一次意识到:在临近的赛道上,不仅有其他黑客团队,还有一支强大的对手——VMware 自己的工程师团队。

唐青昊:Marvel Team 这一年 | 黑客 2016

事情似乎回到了原点。

这时,轮到应鑫磊登场了。他从哈尔滨工程大学毕业加入团队时,正是今年七月。他面对的,是一些同事们发现的零星漏洞。之前的童鞋们绞尽脑汁,都没有找到对这些漏洞的利用方法。

不能被利用的漏洞,放在我们手中的意义不大,还不如尽早交给 VMware 官方,让他们尽早修复。正当我准备安排报告这个漏洞的时候。事情出现了变化。

应鑫磊在大学期间是一个 CTF“赛棍”,而 CTF 比赛非常接近真实的攻击流程。入职不久,他突然发现了这个漏洞从另一个角度的利用方法,可以用来“控制程序流程”。

在攻击中,控制程序流程可以作为漏洞利用的第一步棋。如此说来,这个本来快被我们放弃的漏洞,居然成为了攻击的基石。就像一个扫地僧,突然成为了大和尚。

这个成果第一次给了我们几个月来久违的兴奋感,所有的成员都被打了一针鸡血,尤其是应鑫磊本人。

转眼到了九月,应鑫磊正在接受每个 360 新同事都要参加的“飞扬训练营”培训。这个培训接近一个月。应鑫磊白天参加培训,晚上还在不断地尝试调优漏洞代码。

他说,直觉告诉他第二个漏洞就隐藏在这一段代码中,但是无论如何总是摸不到。那段日子,他经常调代码到早晨七点,而九点钟训练营又开始了。训练营最后一天结束后,他终于顶不住了,向我申请休息一下。

而就在休假回来的第一天,一扇华丽的大门被应鑫磊“重炮轰开”!

利用这个漏洞,我们可以做到“越界读”宿主机的内存片段。这样,VMware Workstation 这个黑屋子的“墙缝”第一次清晰地展示在我们面前。

我们需要做的全部,就是构建一个足够特殊的内存布局,让核心的信息泄露出来。然后利用这些核心信息,完成致命一击。

这个时候,我们得知,在十一月初举办的 PwnFest 破解大赛上,Workstation 同样是目标项目之一。我似乎已经可以看到 VMware Workstation 被全球首次攻破的场景。站在机器后面的人,是我们。

这场比赛,我们决不能再次错过。

唐青昊:Marvel Team 这一年 | 黑客 2016

【唐青昊(左)和肖伟(右)】

一直到十月底,应鑫磊的全部任务都集中在攻击方法的尝试上。

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读