360潘剑锋:世界上存在没有漏洞的手机吗?

简介:
     CVE-2016-0844,这串毫不性感的代码是一个漏洞的名字。

通过这个漏洞,黑客可以拿到 Android 手机内核最高权限,在主人不知情的情况下翻看查看聊天记录、银行卡密码、随时静默拍照、向任意号码发信息、打电话。

为此,谷歌向这个漏洞的发现者——冰刃实验室——发去了一封致谢函。如果你是网络安全爱好者,冰刃(IceSword)这个字眼一定在你心中占据着一席神坛。2004年,这款几乎可以查杀所有木马的软件在圈子里声名鹊起,引起了各大网络安全公司的注意。而它的作者,竟然是一位在校的学生。他就是潘剑锋。

冰刃的简洁和灵性散发出一种出只有黑客们才可以欣赏的美。如今在各大论坛上,还依然有诸多仰慕者追随着潘神的名号,传扬着他的传说。而潘神却低调地走出光环之外,修炼至今。

冰刃实验室,正是他的回归。

360潘剑锋:世界上存在没有漏洞的手机吗?

【IceSword 冰刃软件截图】

{潘神的迷宫}

潘剑锋坐在雷锋网(公众号:雷锋网)编辑对面,一脸平静地说,其实这个漏洞并没有太多可说的,只是一个新的“系统提权漏洞”而已。

事实上,“系统提权漏洞”是拿到Root权限的最后也是最难的一跃,在谷歌的评价体系里毫无争议地属于高危级别漏洞。根据谷歌的致谢数据,每年这一级别的漏洞致谢仍是屈指可数。但在潘神眼里,这种形式的漏洞是一个经典形式,他只是为这个漏洞家族又添了一个新丁而已。这大概像一个学霸,看到大家都考95分,自己又有什么可高兴的呢?

对于这个曾经把对X86操作手册倒背如流,对系统内核技术如痴如醉的“技术宅”来说,他的目标并不是找到那个最坚固的攻城武器,而是制造出无人可破的防御系统——一个让图谋不轨的黑客永远迷失的迷宫。

对系统底层技术的了解,增加了他制定这个目标的底气。他把操作系统被拆分为逻辑背后的一组组代码。就好像一位建筑家,可以把摩天大厦拆分成钢筋水泥肌理下的每一条砖。

既然如此,他必须解释一个终极问题——漏洞因何而存在?

360潘剑锋:世界上存在没有漏洞的手机吗?

【Android 系统内核,一般指最底层的 Linux Kernel】

{漏洞的本质}

任何程序都是交互的过程:输入信息,得到反馈。而从本质上来说,这些交互可以被拆分为“一问一答”,也就是“输入输出”的单元。

黑客往往通过构建一些异常的输入。只要程序处理不正确,就会产生相应的问题,例如造成程序的崩溃。而通过精心构造提问的方式,可以实现意想不到的效果,甚至让程序走入你制定的逻辑。

这是漏洞的基本逻辑。

当然,现在越来越完善的系统对于绝大多数的“问题”都能够给出毫厘不差的“答案”。只有在极其特殊的情况中,才会出现漏洞。例如:

某次会议规定,与会者必须喝光面前的水才能离开,而偏偏有一个迟到的童鞋没有听到这个规矩,在杯中留了半杯水。当会议结束后,有机器人自动把所有杯子重新填满。这时,在原本没有喝光的水上面再加一杯水,就会造成溢出。整个桌子都会因此被打湿,设定好的程序就会发生错乱,漏洞出现。

某个电梯规定,不能同时容纳两个人。所以每当一个人进去之后,应当首先锁好电梯的门。但是如果一个人忙得晕头转向,忘记锁门,就可能出现第二个人突然闯进来的结果。这样一来电梯就会发生坠落。漏洞又出现了。

虽然没有锁门、没有喝水,这样的“失误”发生概率非常小,然而它们发生的条件却是确定的,只不过这种条件相当苛刻,在正常的运行过程中几乎不会发生。所以,寻找漏洞变得很简单:只要把一个程序运行过程中的所有“偏执”的可能性都一一尝试,就可以排查掉所有意外发生的条件。这种情况下,这套系统不就成为了一个没有漏洞的完美系统吗?

{世界上所有的回答}

好了,接下来我们要做一件浪漫的事,问出“这个世界上所有的问题”。

面对一个系统,我们原则上可以画出它的“控制流图”。也就是说,假设我们的计算能力无限,对于每一个逻辑,我们输入不同的值,计算出在怎样的值下面,系统会给出怎样的回答,把这些回答归纳为所有的可能性,再进一步对每一种可能性重复如上的操作。

如此一来,我们就可以画出巨幅的逻辑树,见到一个分叉路口就尝试每一个可能,最终我们的足迹会遍及逻辑树的所有枝杈,把从一个原点开始的所有可能都囊括进去。

360潘剑锋:世界上存在没有漏洞的手机吗?

【逻辑树示意图】

潘神解释,这种方法被称为“约束求解下的具体执行”,在这种情况下,会把所有的情况——哪怕是概率极小的事件——都进行预演。从而排查是否存在程序错乱的情况,进而发现漏洞所在。

然而,这样的计算远不像说起来这么简单。潘神说:

看到岔路,计算什么情况下往左跑,什么情况下往右跑。是一个特别难于解决的问题。而且如果完全计算所有逻辑上的可能性,对于数十万行代码的操作系统来说,时间要求过大。纵然在理论上成立,在现实中也没有可能实现。

所以,潘神实际上给出了一个悲伤的答案:

我们没办法穷尽世界上所有的问题,也就没办法验证世界上所有的答案。

在现实世界里,安全仍然必须有所取舍。用有限的资源去对抗无限的可能。而正因为安全是一个无法抵达,只能无限接近的顶峰,它才变得无比迷人。

  
 
  本文作者: 史中

本文转自雷锋网禁止二次转载, 原文链接
目录
相关文章
|
8月前
|
安全 Linux 网络安全
购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
【2月更文挑战第16天】购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
54 1
|
8月前
|
安全 Linux 网络安全
手机登录服务器用root和administrator做登录名,都提示别名已存在
【2月更文挑战第5天】手机登录服务器用root和administrator做登录名,都提示别名已存在
74 8
|
安全 Java 5G
iPhone SE 或 3 月发布:苹果最便宜 5G 手机;许多攻击者开始利用 Log4j 漏洞 | 思否周刊
iPhone SE 或 3 月发布:苹果最便宜 5G 手机;许多攻击者开始利用 Log4j 漏洞 | 思否周刊
181 0
|
SQL 安全 算法
手机IOS-APP渗透测试漏洞防护方案
目前在国内很多项目都有手机端APP以及IOS端,但对于安全性问题无法确保,常常出现数据被篡改,以及会员金额被篡改,或是被入侵和攻击等问题,接下来由Sinesafe渗透测试工程师带大家更深入的了解如何做APP的安全防护以及漏洞检测原理机制。
378 0
手机IOS-APP渗透测试漏洞防护方案
|
Web App开发 安全
RIM发警告 部分黑莓手机存在安全漏洞
黑莓手机制造商RIM(Rearch inMotion)近日发出警告说,部分使用黑莓手机中的BlackBerryApplication WebLoader(程序传输器)和MicrosoftInternetExplorer(IE)浏览器的用户需要特别注意手机的安全。
839 0
从三星到摩托罗拉、华为,“万元手机”还能存在多久?
每当提及智能手机市场,似乎总是“老生常谈”。毕竟自2007年iPhone发布之后,智能手机就开启了至今为期10年的高速进化之路。在这10年中,智能手机行业可谓百花齐放,呈现出多元态势:国产手机强势崛起、高中低端机型市场各擅胜场、屏幕/系统/配置等不断进化……而在看似变无可变的当下,部分手机厂商似乎将目标对准了高端市场。
1718 0
|
Web App开发 安全 测试技术
手机验证码常见漏洞总结
0X00 前言   手机验证码在web应用中得到越来越多的应用,通常在用户登陆,用户注册,密码重置等业务模块用手机验证码进行身份验证。针对手机验证码可能存在的问题,收集了一些手机验证码漏洞的案例,这里做一个归纳总结,在测试中,让自己的思路更加明确。
2178 0

热门文章

最新文章