财新传媒

主题演讲:网络安全的主要问题及技术

2016年02月02日 09:56 来源于 财新网 | 评论(0

  演讲者:陈恺 中国科学院信息工程研究所信息安全国家重点实验室副研究员

  非常感谢有这么一个机会在这里和大家分享一些信息。

  这个报告讲的是网络安全里面的主要问题以及一些技术。这个题目非常非常的大,网络安全的内容非常多,所以说我讲的主要还是跟大家比较相关的一些问题。

  问题一:网络诈骗还有隐私泄漏。

  这个问题刚才大家讨论的也比较多。

  问题二:恶意代码上面的一些攻击还有一些防范。

  问题三:漏洞产生的一些危害,还有怎么去防范一些漏洞,这方面的一些技术。

  我这里有一个数据,2015年诈骗造成的损失相比2014年是1.5倍,非常多,人均损失达到了5000多块钱。我不知道刚才那位先生最后损失了多少钱,损失分为PC用户和手机用户,PC用户大概是4000多,手机用户达到了5000多。

  在这个里面我们又做了诈骗的一个分类,这个里面比较多的就是金融理财的诈骗,这个里面最后按举报金额来算的话,占了29%。大概有三分之一的比例都是因为金融诈骗,人均大概有3万多块钱的损失,这个数字就非常高了。

  这个是我的手机里面收到的一个短信了,尤其大家可以看第二条,像这个10086来的时候就通过一些伪基站的方法或者通过一些其他的方法(VOIP的一些方法)能够把这个号码变成10086,我收到的这个其实是一个假消息,这个假消息和正规的消息是放在一个列表里面的,更显示了这些东西太具有伪装性了。大家可以看到这个地址是10086,其实它是I0086,但是很多人不小心就点上了(尤其是一些老人家),它的消息也是很有诱惑力(积分可以兑换),如果大家直接领钱大家就注意了,这个可能会有假,有很多人会登录一下,然后输入用户密码,你的信息就泄漏了。

  这也是利用一些伪基站造成的一些信息,这个是假冒银行的95533,但是这个网址过于假了。

  还有一种诈骗现在也非常流行,叫做VOIP(大家可以打电话),比如说可以通过SKYPE打到任何一个号码上面,现在通过VOIP的电话越来越多了,打的过程当中可以伪造成其他任何一个人的电话号码去打,这个里面不光能伪造成其他人,还可以伪造成10086甚至公共的号码打电话,这样它带来的伪造性就更高了。

  大家可以想一想,是不是常有淘宝客服打电话,或者说京东、或者一些快递公司打电话说你有什么快递没有收,我是经常能收到这样的东西。但是他们来的电话经常看上去就是一个正规的电话,这怎么做到的?他有这些软件,所以使得它的伪造性非常高。

  另外就是说利用一个已注销的手机做诈骗,我有一个号码,但是这个号码我不想用把它注销了,但是这个号码一旦被别人拿到以后,这个号码由于跟他的微信、支付宝都做了绑定,所以说这个号码一旦落入坏人的手中将会非常危险。

  现在大家是怎么做的呢?我们看到经常有一些软件引导用户去标记,打过来的话这些软件可能会做提示,这个号码可能是有问题的,某个号码可能是诈骗电话、某个号码可能是来自于中介,有这样的东西可以做识别,这个东西挺好的,这个装上以后对于大部分人可能是受用的,但是有一些问题。这是举报平台,大家如果发现一些号码可以到这个上面去举报。当然有一个问题了,这比较大的问题是网络电话平台的VOIP,因为它能够假冒任何的一个号码,他假冒一个10086,不能说10086是假的,10086是真的,只不过它是假冒了。另外有一些改号软件,做的事儿跟VOIP基本上是一样的。第三个是他可以批量办很多卡,一张卡被大家举报了,其他的卡还没被大家举报,这时候前面的方法就不适用了。

  如果是把这个号码据报道网站上的时候也可能存在问题:

  问题1,诈骗号码如果不更新的话,在网站上一般三个月就被取消了,不认为它是一个诈骗电话。

  问题2,如果这个号码的用户主发现自己的号码放在网站上了,很有可能他自己去这个网站上重新改一下,说我申诉一下,我说这个号码不是诈骗号码,可能也就申诉成功了。这种方式造成了有时候诈骗电话根本没有办法识别出来。

  我们在这个里面也做了一些有意思的东西,帮助大家能识别出这样的电话,我们做科研不光是做一些理论,我们想做一些实际的工作,可以切实地帮助大家去防范一些这样的风险。

  我们发现了打电话过来,如果他用这样的VOIP或者他用这样的仿冒软件,它在是有软件的一些声纹特点的,如果我们能最后识别出这样的声纹特点,可能打电话打过来的过程中,我们就能够在一定程度上这通电话很可能就是可疑的,如果这个电话里面再有一些转账这样的关键字,那肯定是有问题的了。所以我们做了这样一件事儿,我们通过电话打过来的一个实时对比,最后通过声纹的特点,想办法把诈骗电话给识别出来,这是一个工作。

  第二个是它有时候是短信发过来的,这时候也可以进行识别,通过对短信进行分析,把一些特征库识别出来,最后拿一些URL的特征库,我们拿到了10万个URL的特征,最后通过这个也可以把短信里面的一些问题识别出来,这样就能够帮助用户去识别出一些诈骗的电话,还有一些诈骗的短信,是这样的一个工作。

  下面我讲一讲恶意代码,大家可能说我很小心,我不去理那些电话、我不去按有问题的按钮,但是恶意代码这个东西真的不好防,这是某一个恶意代码,它能够到你手机里面下载一些恶意的应用。

  这个是XCode,如果大家用手机(尤其是苹果手机)装了微信、装了百度云音乐、装了滴滴打车……那么你就中招了,可能很多人不知道。还有高德地图、12306,这些东西我想都是比较常见的应用。为什么会中招呢?因为这些应用很可能是真的从这些公司来的,你为什么会中招呢?中招的原因在于开发微信的软件可能有问题,大家知道一个开发者要拿编译器把源代码编译成可执行的代码放到手机里面去跑,如果这个编译器有问题了,编完后的代码就被编译器夹杂了一小块儿有问题的Code塞进去了,这个在9月份成为了非常著名的事件。因为大家意识到苹果非常安全,不太可能会有漏洞,尤其在于苹果里面可能特别小心,就用微信这些大公司的产品,最后都中招了,所以说这个逃不掉。

  这个恶意代码会做几件事儿:

  第一件事儿:把你的一些隐私信息传出去。

  第二件事儿:它有可能偷偷地在后面做点儿坏事儿,比如说下载一点东西或者在你的手机里面运行一点东西。你也不知道它下载的什么东西,你也不知道它会把你的什么东西传出去,但是它可以肯定的是,可以把你手机里面的像基带的MEI、手机的标识这些东西传出去。

  当然现在这个有办法可以处理。

  办法一:拿恶意代码杀毒器去杀,查杀恶意代码,这个有很好的工具,卡巴斯基、360、金山都很好。

  办法二:成立这样的响应中心,如果有这样的病毒就把它响应的东西拿出来,如果大家发现这个病毒就往上报就完事儿了。

  这里面也是有问题的,现在恶意代码检测主要有两个分支:

  分支一:特征码,他先分析一个恶意代码,恶意代码里面有什么特征拿出来就去匹配,匹配到就算有。

  分支二:恶意代码可能干很多坏事儿,可能有一个坏事儿就是从手机里面偷到短信发出去,他把这种坏事儿记录下来了,如果任何一个软件有这样的坏事儿,他就会把这个软件报道出来。但事实上这个东西很有可能是不够的,因为现在我们发现有一些恶意代码做事儿做得非常隐蔽,他把你手机里面的东西偷出来,但是他不通过网络传输,他通过一种特殊的编码通过声音传出去,但是人听不见的一种低分贝的声音传出去,或者说他把屏幕的某一个地方的亮度作为亮度和暗度的转换出去,这个没人想得到。所以说通过这种方式,一些新型的恶意代码、一些有特点的恶意代码用传统的方式根本找不到了。

  这是我刚才说的他们的一些问题,我们在这方面也做了一些工作,我们通过一些代码的比对,一些新的思想融进去,最后把它做出来,其实这个新思想很简单,最后达到的效果是能够找未知的恶意代码,能够效率很高地找到,非常快。因为如果是对这个行为分析大家都知道很慢,可能要个把钟头或者说要几天的时间才能分析出来,这个能不能快速地把它分析出来,这也是一个问题。

  我们怎么去找,我们发现这个恶意代码的作者,他为了简单,他会把自己的恶意代码放到某一个程序里面(尤其是放在一些比较流行的程序里面,像刚才说的微信或者说愤怒的小鸟),但是这个会造成一个现象,如果我们把一堆程序放在一块儿,如果我们发现两个程序长得比较像,但它们可能之间又有一点点些许代码不同,我们就把这个不同的代码拿出来,很可能它就是恶意代码。

  另外一个说是,如果我把一堆程序放在一块儿,这堆程序看起来不太像,可能一个是facebook,一个是愤怒的小鸟,它里面又有一些Code有相互一样的Code在里面,那一样的Code一定有问题,我们就通过这个简单的想法去找,搭了一套系统,最后我们找了120万个程序,包括了33个安卓市场,其中有40万个来自于官方的GooglePlay(我在美国的时候做的这个事情),最后我们通过这个方式去检测,在120万个软件里面我们发现了有12万个恶意代码(大概是10%),像Googleplay这么好的系统,之前大家认为它只有0.5%的恶意代码,但是我们最后查出来有7%的比例,这个在国内的安卓市场上的比例更高。有一些市场甚至达到了30%。这是说大家从这个市场里面下三个程序,其中有一个就有恶意代码,所以很难防得住。这是我们当时发表的一些论文,我们做科研把东西做出来,还得发表论文,这是30年来,中科院第一次在这个高水平上发表论文,也是中国第二次在这个高水平的会议上发表论文。

  我们不光发表论文,我们把这个东西拿出来用了,在去年8月份做出来的时候,被超过2000家媒体、网站翻译成数十种语言去报道我们做的东西,后来还把我们的方法放入美国的一些大学课程里面去。

  全世界每一个洲(除了南极洲和非洲)都有在用我们的东西,这是第二件事儿,是恶意代码的检测。

  第三件事儿我们做了一些漏洞方面的检测,大家可能想我不下软件了,但是这两种情况下都有可能会造成威胁,因为手机里面都有漏洞(尤其是未知漏洞),黑客通过这些未知漏洞的攻击,可能就能够把手机里面的东西偷偷地偷出去,这个是去年10月份的时候发现的,其实我们在8月份的时候就发现这个东西了,只要你用了百度(手机百度、百度地图……)都有这样的漏洞,存在的效果是拿一个手机,攻击者发现了你的手机,就能够对你手机进行攻击,他可以把手机里面的一段代码,把自己的一段恶意程序直接注入到你的手机之中,然后就开始跑,这一段恶意程序会把你手机里面的一些东西偷出来,还有一些其他的坏事儿。

  如果这个家伙不装各种应用,那是不是就安全了呢?也不一定,像这个漏洞现在是特别有名的一个漏洞,用户如果把自己的信息放在网站上,网站上如果用了一段开源的代码之后,它有一个漏洞被发现了,通过这个漏洞攻击者可以从服务器上把所有的信息下载下来,一旦下载下来手中有用户的数据的话,那你的信息就泄漏了,包括用户名、密码、网站上的一些其他信息,所以这件事情是非常严重的。

  现在物联网起来了,物联网里面也会有一些这个问题,像2004年云梯团队提出来的流量异常,发现了大量的设备被黑客攻击和控制。在2015年360的播报里面,也有这样的设备漏洞,在其他的平台上也公布了像小米手机、手环、电视、烤箱、豆浆机、洗衣机,都有可能会有这样的漏洞,这个漏洞无处不在。

  大多数的方法都是通过对这个程序做各种检测,这个就不说了,可能通过一些动态的、静态的方法做测试。

  这是我们也在这方面做了一些事儿,我们是通过一些软件的高效比对,因为如果一旦发现某一个程序里面有漏洞,那么是不是在其他的很多共有的、类似的程序里面也会有这样的漏洞呢?这是我们在做的一件事儿,但是这个东西很困难,因为要去比较表面程序是否相等,这个做的时候是非常困难的一件事儿,如果说要做100万个APP,大概要做134万年(很长时间),我们最后想了一些方法,这个细节就可以先略过。最后把这个时间大概做到了10个小时,把一个四次方量级一个很复杂的东西,最后缩小到一个线性的方式。

  我们最后在漏洞方面做了一些事儿,然后迅速去检测,包括安卓、iOS、云上的一些漏洞我们都做了,我们发现大概4万多个漏洞,之前的厂商最多就发现几百个,我们一下子发现4万多个,包括Facebook、百度、Skype、支付宝、微信、PayPal、Gmail这样的,影响的用户达到了数十亿。

  我们发表顶级论文,在CCS上面发表了40篇论文,这也是30多年来亚洲第一次有这样的一个论文发表。当时我们还拿了最佳论文奖之类的。

  前面就是介绍的一些现有的技术,还有我们想做一些事儿,包括了诈骗、隐私、漏洞、恶意代码这方面的事儿。在未来上面就是两,就像刚才徐主任说的,思想上一定要去重视它,是不是可能做一些防护,我们也想在技术上做一些帮助,帮助用户能够更好地去防范一下这些安全的威胁。

  提问:从技术角度来讲,像我们这种技术盲,真的听得比较困惑,有很多的恶意代码、漏洞、诈骗……我先问一个平时经常碰到的现象,在手机使用的过程当中会发现突然间死机了,你非得强制关机重启又好了,我想确认一下这种情况下是否算有病毒还是什么情况,如果要是有,那应该怎么处理?

  陈恺:这个问题很好,我前两天也碰到这个问题,我一直没时间弄,这个礼拜我真把我的手机看了一遍,真的是发现了一个问题,这个手机当时预装了很多的App,这个预装的APP里面很多都有问题,所以我把手机Root掉了,因为他预装的App是具有最高权限的,最高权限的App我作为普通用户是不能卸载的,我只能把它还原到预装的状态(或者升级),但是我不能卸载,我只有把手机Root之后才能卸载掉,所以我把手机Root掉了,然后我马上把手机切成非Root的状态(因为我知道Root非常危险),就在前几天出现一个事儿,手机特别慢,因为有一些软件老是提示我要升级,我一开始怀疑这个软件是为了要我升级,所以他把软件变得很慢,以至于我想去升级。但是当我真的去升级,就不慢了,就好了。

  这个可能是一个原因,升完级之后没过一个礼拜又慢下来了,我对这个比较了解,我就把手机接到电脑上,通过一些程序观察手机里面运行的指令或者程序,看看到底是什么东西。我就发现root我手机的那个程序,悄悄地启动了大概2万个进程,一个IE就是一个进程,相当于启动了2万个IE(非常非常地慢),而且启动的权限全都是Root,我不知道它在跑什么。

  这个说明了有一些软件很不安全,当时Root的软件是很大的一个知名公司的软件,但是它里面仍然会悄悄地做点儿坏事儿,这个坏事儿可能是用户不知道的。

  之前我有一些学生在这个公司里面做实习,他们当时说的是,谁能拿到用户的Root权限谁就拿到相当于手机里面的核武器,因为一旦拿到Root权限他就能够把手机控制了,做任何的按键操作、任何的信用卡、银行的操作,非常非常地危险,这就是说有一些大的厂商里面的东西还得小心。

  但是这个东西我就说用户有可能很难防得住,这也是没有什么办法。

  所以我们想做的一件事儿是,是不是能够做一点这样的程序,帮助大家做一些检测吧,谢谢。

  提问:对平常的老百姓(尤其是我们所有不懂科技的人)而言,我觉得其实最大的问题是专心诈骗很吓人,这个真的是技术上没有手段来控制吗?政策是一回事儿,我说技术上有没有什么手段。

  陈恺:技术上有手段,像刚才我说的,有一些手段能够发现这个东西是不是真的和假的。

  提问:我的意思是说从国家层面上。

  陈恺:其实也是有一些手段的,但是这个布局起来可能会牵涉到各个方面,就像刚才徐主任说的牵涉到很广,所以说这个布局没那么容易。但是有一些像假基站,现在国家已经有很多的政策去打击假基站。假基站很简单,就是国外买一个设备几百块钱,他把这个东西做一些配置,放在汽车里面他就开着这个车到处跑,那个机器在不停地往外发假的短信,就以95588这样的假的号码往外发送,这个放在机器里面不停地跑,这个本身就是非常难做的一件事儿。但是这个现在至少在技术上面,在科研界有一些方案能够提出来做,但是这也需要各个部门可能有一些配合在里面。

  提问:就是技术上还是有一些手段。像平常的认不是很懂的话,看到短信就会去点或者打开,这就需要各个部委去推动,技术上还是有办法的。

  陈恺:技术上有一些办法,但是这些办法到底是不是真的那么有效,这个还得做一些实验,因为现在技术上的办法很可能就是大家提出来的一些理论方法,觉得可行,但是真正还没有投付诸于实践,我相信只要能够付诸于实践,这个东西肯定会做得越来越好。

  提问:我本身就是一个安全从业者,所以说其实刚刚您提到的您是在研究所,我想问一下,因为我们目前接触的一类是这种国外的大厂商,对于我们这儿的一些终端的用户或者企业。

  或者是我们有一些主要服务对象是事业单位的公司,像现在有绿盟他们做这个东西,所以说我刚才看到研究所这边有对于这些恶意代码、恶意APP的快速对比,也有这种漏洞的快速检测,但是这些至少从我这边的话,因为我也是从业人员,我没看到咱们研究所的产品投入到市场,或者跟一些大的企业去合作,把这个理论付诸于事件,而只是说发表了一些论文,这是不是又回到了咱们原来学术界研究出来,放到那里的一个问题。

  陈恺:我觉得这个也说得很好,这个其实我们现在已经开始有一些实践了,包括刚才我们做恶意代码检测的网站,我们就把它公开在网站大家都用,所以现在有40多家国际上的厂商都在用我们的东西,现在像国内的高校他们会在用,也有一些公司在用,但是这个东西是去年8月份刚刚出来的,所以到现在才不到半年的时间,可能市场上并没有一个这样的标示标志它的产品出来,这可能是您需要一些企业,是不是能够做一些合作,能够把它的好处能够更好地带给社会、带给用户,帮助大家检测手机上的恶意程序,这是非常好的。

  我们也是在这方面做出努力,国家也在这方面做出努力,他们给了很多很好的政策,也是非常好。

  提问:其实第二个问题是关联着的,研究所这边的对象是像我们的中科院或者一些学生,拿博士论文在那儿研究,还是说我们也是服务于一些军工或者说这种大的一些国家的机关单位,来输出我们的理论,像一些加密算法什么的,因为对于你们研究所真的是,可能以前了解得比较少。

  陈恺:每个研究所的人可能做的事儿都不一样,因为每个人都不一样。

  对于我们来说,我们这边想做一点切合大家实际中的问题,你看我们刚才说的事儿,都是大家日常生活中碰到的一些事儿,就像把这些日常碰到的事儿总结起来。另外我们也想真正地把这个东西做好,真正做出来了之后,您可以看到我们也是发了论文,而且都是往最Top上面去发的,刚才说的这个都是国际上非常承认和认可的四大安全会议,都是往这方面去提。

  第一方面,我们想在这个理论水平上达到很高。

  第二方面,做出来的东西确实可用,就是能造福大家能够用起来的一样东西。

  这就是我们这个小组做的一些事儿。

  (本文根据现场内容整理,有所删节)