TrustZone不再安全 白帽黑客任意指纹解锁华为P9Lite

来源:雷锋网 2016-10-24 10:49:00

来自美国的安全研究团队Shellphish在GeekPwn大会上展示了通过篡改TrustZone里的指纹验证模块,任意指纹及皮肤接触即可解锁华为p9Lite手机的技术。

他们利用了HUAWEIP9Lite中Trsutzone的漏洞,实现手机的信息泄露,并在华为信任运行环境中进行本地提权,从而获得从0权限到root到Trustzone的代码执行权。通过利用这些漏洞,攻击者不仅能获得安全区的敏感数据,还能直接进入支付等最高权限场景。

这个漏洞也可以被用于攻击HUAWEIP9系列的更早的型号(比如P8Lite)。任何使用HUAWEITrustZone的HUAWEI设备很可能都受到这个漏洞的影响。指纹识别搭配TrustZone作为最新的手机安全技术,曾被视为手机安全的最后一道防线。但是现在黑客突破了这道防线,令TrustZone的分区保护形同虚设。

除了华为P9lite任意指纹解锁的破解,在此次GeekPwn白帽黑客大会上,传奇黑客Geohot现身讲述他从黑客转型人工智能研究的心路历程,身残志坚的小霍金“StephenChavez“现场攻破自己所乘坐的医疗轮椅。

锤子科技M1手机发布会圆满结束,然而科大讯飞火了。

其实在业界,像科大讯飞这样默默发力行业解决方案的公司并不在少数。英特尔作为智能行业执牛耳者,最近将智能行业中默默领先的公司聚在一起,探讨智能行业的下一个变革。

2016年10月21日,英特尔2016中国行业峰会在珠海成功举办。除了英特尔公司行业解决方案集团中国区总经理梁雅莉、全球行业总经理Shannon,科大讯飞联合创始人、讯飞研究院副院长王智国以及北京大学国家发展研究院教授薛兆丰,还有华为、珠海习悦等企业一并受邀参展。

如果你在会场,一定会惊叹于竟然有这么多创新者在积极勾画我们未来生活的模样。

中国拥有60个以上城市交通拥堵极其严重。但其实,交通拥堵的治理应首在预防,即能根据道路的现有交通状态预测分析出短时间内的交通状态变化趋势,并对可能出现的拥堵现象进行红绿灯的调控,以避免拥堵或缓解拥堵程度。因此,如何建立长效模型对交通拥堵进行及时预警是城市智能交通系统优化的研究热点。

比如说:一套能够根据车辆和行人自动调节的红绿灯控制系统。

珠海习悦最新产品,“DeepTrafficEye”向我们展示了公共交通的智慧模样:

珠海习悦对海量1080P交通视频进行云端的深度学习神经网络计算,可以实时提取出每辆车的车速、转向及角度、车量密度、车流量等信息。借助大数据分析,率先实现了交通路况的实时感知,并自动调节红绿灯进行相应的诱导。

公司非常自豪地介绍,他们是目前中国唯一一家将最新的深度学习技术大规模应用在交通分析上的公司,并且在模型中考虑了交通中行人的因素。“其实中国很多地方政府都想要改造交通状况,我们希望这套系统可以把公共交通变成真正服务人,而不是让人去适应。试想一下,如果老人在过马路的时候摔倒了,我们的绿灯会贴心地为他们多等待一会,而这些都是自动实现的。”想要达成这个目的,仅靠传统的智慧交通的方案还远远不够。行人才是影响交通的重要因素。

“DeepTrafficEye”在国内率先将行人数量及动作行为作为信号灯智能调控的主要考虑因素之一。这在之前的技术当中是不可想象的。传统方式只能做到基于车辆的调控而无法实现对行人数量及行为的判断。该技术在目前人工智能和智慧交通领域当中的公司中是史无前例的。

产品创立之初,为了真正解决复杂环境下的交通问题,大家就对这套系统提出了几个基本要求:

(1)为保证系统稳定性,所采用车辆、行人检测算法的复杂度应与画面中的车辆、行

人数目无关。

(2)针对不同环境,检测算法支持三种运行模式,即正常模式,高灵敏度模式,灾难

模式。

(3)针对常见的干扰因素,包括但不限于恶劣天气、车辆反光交叠、辆阴影交叠、车

距近(在画面中重叠)、画面抖动、路面抛洒、遮盖物,具有对应的补偿或校正算法。

(4)车辆跟踪算法可以在三维空间中重建所有车辆的移动轨迹和速度。

对于从业者而言,这套系统最核心的竞争力是:

车辆检测识别

(1)高精度的车流量检测,准确率大于等于98%。

(2)车型分类((1)中、小、微型载客汽车;(2)大型载客汽车;(3)中,轻型载

货汽车;(4)重型载货汽车;(5)摩托车。)

(3)车速的估算。

(4)车辆追踪,实时跟踪每一辆车在画面中的移动。

(5)车辆行为识别,车辆转弯,换线等车辆动作的检测与识别。

行人检测识别

(1)实时地统计交通路口不同运动方向的行人流量,人数密集警告。

(2)检测统计十字路口正在等待的行人数量。

(3)行人追踪,实时跟踪每一个人在画面中的移动。

(4)行人行为检测。在人行道上,逗留过久、行人倒地、不遵守交规横穿马路等行为。

这家做了智慧交通系统的珠海习悦,其本质是一个计算机视觉解决方案公司。系统用到的视频识别追踪技术脱胎于西安交通大学的国家教育部重点实验室”,除了交通领域,单独来看习悦的计算机视觉方面的产品也让人颇为惊叹。

习悦公司在本次展示了其最新的手势识别、人脸识别、物体识别产品。记者在现场体验了习悦展示的人脸识别产品,该产品具有:“多人脸检测(10人以上)”、“年龄识别”、“性别识别”、“情绪识别”、“人脸朝向识别”、“视线识别”等多项功能。同时识别速度很快,让人惊叹,物体识别和人脸识别的速率都达到ms级别。

习悦公司的陈谷雨表示,公司专注于人工智能核心“深度学习”神经网络技术,具有完全自主知识产权的人工智能系列产品已经大量运用在机器人、智能硬件上。业务同时涉猎云端和终端。云端业务聚焦于智慧交通领域,终端业务则剑指物体检测、行为检测、手势识别、人脸识别技术智能硬件方向的应用。公司在深度学习领域,已经与Intel开展了深度合作,风起于青萍之末,欢迎更多的不同行业企业共同探讨未来人工智能的落地应用。

10月21日,教育部计算机类教学指导委员会、中国计算机学会教育专委会将2016CNCC期间在山西太原举办“面向计算机系统能力培养的龙芯CPU高校开源计划”活动,在活动中,龙芯中科宣布将GS132和GS232两款CPU核向高校和学术界开源。那么——

龙芯开源的CPU核性能如何?

以往将CPU开源的公司有哪些?

开源CPU核又会带来哪些影响呢?

开源的CPU核性能如何?

CPU核也叫微结构,是决定CPU性能、安全、功耗、成本的最重要因素,日常我们所说的双核、四核、八核芯片,其实是将2、4、8个CPU核的接口互联并集成到一片硅片上,像Intel的Haswell、ARM的CortexA72、AMD的Zen、龙芯的GS464E都是CPU核。在设计CPU的过程中,80%以上的功夫都用在CPU核上,因此,如何设计一个高性能的CPU核可以说是CPU设计中的关键技术之一。

目前,除了龙芯、申威、飞腾等老牌设计单位拥有自己设计的高性能CPU核之外,国内大多数IC设计公司依旧处于购买国外的IP“攒”出一个SOC的阶段,拥有自主设计CPU核的单位屈指可数。而龙芯本次将两款CPU核向高校和学术界开源,可以使学术界以龙芯的CPU核为基础开发产品,并以龙芯的CPU核为模板学习怎样设计CPU核。

龙芯开源的CPU核为GS132和GS232。GS132为单发射32位结构,采用三级静态流水结构,性能于ARMCortex-M0/M3/M4相当。主要用于石油、电力、钻探、智能水表和智能电表。GS232为双发射32位结构,采用五级动态流水线结构,性能于ARM9和ARM11相当,在龙芯1A、1B、1C、1E中使用,主要用于各种嵌入式产品,在智能家电、人造卫星、工控等领域都有使用,像HS3700画质芯片就购买了GS232的授权,该芯片被用于海信的智能电视。

Sun曾经将T1、T2开源

1985年,Sun成功研究出了Sparc精简指令集CPU,再辅助以基于Unix开发的服务器系统,使Sun在工作站和服务器领域崭露头角,并逐渐可以对抗惠普和DEC这样的传统中式小型计算机。1992年Sun推出了市场上第一台多处理器台式机SPARCstation10system,1993年Sun进入财富500强,至2001年Sun在全球拥有五万雇员,市值超过两千亿美元。

Sun以硬件起家,但成也萧何,败也萧何,对硬件的重视,使Sun忽略了软件的重要性,特别是没能对Wintel联盟拥有足够的警惕性。在90年代末,因互联网的兴起,加上Sun的工作站相对于DEC的小型机和IBM的大型机具有价格优势,这导致虽然Sun的中小企业市场份额不断被Wintel蚕食,但由于其工作站可以侵占DEC和HP小型机的市场,其盈利模式得以延续。但在互联网泡沫破裂后,加上Wintel联盟的倾轧,Sun服务器和工作站业务则难以为继,仅2002年上半年就营业额同比跌至3称,并从2001年的盈利9亿美元,跌至亏损5亿美元,随后Sun一蹶不振,在2009年被甲骨文以74亿美元收购。在被收购前,也许是为了放手一搏,或又是为了其他什么原因,Sun将UltraSparcT1、T2开源。

T1和T2到底如何呢?根据知乎网友“迪迦奥特曼”介绍,Sun开源了全套的RTL代码……拿着Sun开源的那套东西,做一些自定义修改,可以跑FPGA。学术圈里面已经有几个拿着OpenSPARCT1成功流片的项目,所以流片是肯定可行的…..不过T1、T2单核性能非常差,T1相当于上世纪80年代末期的水平,而T2相当于90年代早期的水平。所以千万不要指望T1和T2能有什么商业竞争力。OpenSPARCT1/T2现在最大的价值是帮助学术圈中的研究者们快速搭建一个原型系统,并且能感受一下2002~2005年时的工业级代码长什么样子。知乎网友“迪迦奥特曼”还表示,T2的源码存在BUG,至于是故意埋进去的,还是开源的时候没有处理好导致的无心之失,他就不知道了。

另外,据说国防科大在充分借鉴T1和T2的源代码后,先后开发出了飞腾1000和飞腾1500,两款芯片分别被用于天河1号和天河2号。

IBM的OpenPOWER

Power诞生于1990年,并斩获过多项世界第一——全球第一个双核CPU,全球第一款刀片服务器CPU,第一个战胜国际象棋冠军加里·卡斯帕罗夫的电脑深蓝所采用的CPU,第一个量产主频超过5G的CPU,第一个高超线程的CPU,以及第一个5000针的CPU,以及第一个封测成本比硅片成本还高的CPU,第一个单芯片量产价格突破10万美元的CPU......其应用范围曾经涵盖过小型、中型、大型主机,从高端到低端的工作站都可以看见Power的身影。

此外,Power还曾占据服务器市场三分之二的市场份额。而IBM也凭借Power巩固了自己科技巨人的地位,不仅在CPU研发上有着乱序执行的基础框架、寄存器重命名等一些列先驱性贡献,在科研上曾经一度成果斐然——在2001年,IBM获得美国专利和商标局授权专利数量高达3411项,比HP、Intel、Sun、Microsoft、Compaq、Dell、Apple、EMC、Oracle、EDS、Accenture和AOL在内的12家最大的美国IT业公司加在一起还要多。

但就在IBM和Power芯片光芒四射的同时,Intel却利用与微软结成联盟,并充分借力戴尔、康柏等整机厂,以Wintel联盟的方式在市场上大杀四方,加上IBM太过于任性,更倾向于服务土豪用户,没能细分和精耕市场,对市场和研发的综合掌握能力都不及Wintel,使Power空有一身高性能却难以抵挡Wintel联盟的侵蚀——从PC到工作站、服务器Power、Sparc等架构CPU的市场份额逐步被X86架构CPU蚕食。

与此同时,由于软件厂商若要兼容多种架构CPU的成本越来越高,造成软件厂商开始逐步放弃兼容一些架构的CPU——Power、Mips、Sparc、Alhpa等架构CPU先后被软件厂商抛弃,而原本性能最弱的X86芯片则依靠Wintel联盟和软件生态的优势笑到了最后。即便是曾经占据三分之二市场份额的服务器领域,低端服务器已然被Intel的X86芯片侵占,Power唯有在对可靠性、稳定性要求非常高,在决策上也非常保守的使用场景下,比如银行所采用的高端服务器市场寻找存在感。

正是昔日曾经辉煌的Power有着日渐被边缘化的趋势,如果IBM依然完全独占Power,其他IT公司根本不会基于Power构建基础软硬件。因此,IBM选择了联合Google、NVIDIA、TYAN、Mellanox成立了OpenPOWER联盟和OpenPOWER基金会试图力挽狂澜,旨在通过开放合作的模式,将IBM的Power硬件资产与软件堆栈,以及第三方联盟伙伴的软件堆栈深度结合,在芯片设计、系统设计与开源软件三个层面推动Power生态环境的发展与壮大。

不过,相对于Sun开源T1、T2后,大家都可以免费下载源码不同,要获得Power的源码,要付出不菲的代价,以2014年IBM向中国大陆中晟宏芯授权Power8源代码为例,为了拿到Power的全套代码和工具,据小道消息称,中方为此支付了2亿美元左右的费用。

学术界将收益于龙芯CPU开源

一直以来,我国计算机领域的教育更多的还是教学生如何“用”计算机而不是“造”计算机,这直接导致国内IT人才结构失衡,应用开发型人才充足,但底层基础系统研发人才却极度匮乏,使中国庞大的IT产业建立在国外软硬件系统平台之上。

龙芯将CPU核向高校和学术界开源,则给予在校大学生一个很好的学习实践平台——龙芯中科资助大学老师基于龙芯平台设计实验课程,使学生可以在真实的(而不是简化的)CPU上运行真实的(而不是简化的)操作系统,在龙芯实验平台上启动操作系统并进行性能分析。在流水线设计方面,让学生把GS132的三级静态流水线改造成五级静态流水线。在TLB和Cache设计方面,让学生在五级GS132处理器核上按MIPS32规范实现TLB及Cache,运行通用操作系统,进行有/无Cache的性能分析。在双发射结构设计方面,把GS132处理器核改造成双发射CPU,进行单发射和双发射性能比较。在动态流水线设计方面,在GS232基础上改写部分模块(如乘法器、保留站等)进行静态单发射、静态双发射、动态双发射的性能分析。

(龙芯教育实验平台)

此外,龙芯还研发了CPU实验平台、操作系统实验平台、并行处理实验平台等数款龙芯教学平台,通过为高校提供完整的线上、线下实验环境,助力教学改革和计算机专业学生的系统能力培养,实现“设计真实处理器,运行真实操作系统”。

总之,正如知乎网友“迪迦奥特曼”对OpenSPARC的评价:OpenSPARCT1/T2现在最大的价值是帮助学术圈中的研究者们快速搭建一个原型系统,并且能感受一下2002~2005年时的工业级代码长什么样子。龙芯将两款CPU核开源的影响和作用也大致与OpenSPARC类似。

助推软件生态建设

目前,在龙芯3A3000已经成功流片的情况下,就党政军办公市场而言,龙芯最大的问题已经不是CPU的性能不够用,而是缺乏软件生态的支持,而软件生态建设单凭龙芯自己是很难做起来的,必须依靠众人拾柴火焰高的模式,发动合作伙伴、开源社区、以及创客群体共同建立。这时候适当的将两款CPU核向高校和学术界开源,有助于让广大在学生学习如何围绕龙芯进行开发,在莘莘学子毕业后,自然能掌握围绕龙芯进行开发的相关技能,这有助于龙芯软件生态建设。

不过,将CPU核开源并不意味着一定就能把生态建立起来,以往也有一些IT公司将自己的CPU开源,比如SUN就曾经将自己的CPU开源,国防科大还下载了源代码,并以此为基础开发了飞腾1000和飞腾1500,这两款CPU还被用于天河1号和天河2号。不过即便如此,也无法挽救SPARC逐渐被边缘化的命运,其生态至今也没能建立起来。

在去年年底,ARM将Cortex-M0处理器开源,并以优惠的授权费帮助初创厂商加快芯片开发进程。另外,还有risc-v这样的开源产品,而且有越来越火的趋势——linux、gcc、llvm甚至bsd类操作系统都开始支持risc-v......正由于开源的CPU核并非只有龙芯,单纯希望依靠将CPU核开源就能建起软件生态的想法显然是不切合实际的,要对生态建设起到积极作用,一方面需要长时间的持续投入,另一方面也需要企业、高校联合协同,密切配合。

结语

龙芯之所以将两款CPU核开源,一方面是为了配合国家计算机专业课程的教育改革,另一方面也是为了培养一批能给龙芯做基础软硬件开发的新鲜血液,并借此丰富龙芯的软件生态和产业链。不过,最后究竟能取得怎样的效果,还有待时间的检验。

点击查看原文

相关链接