内容简介:对于攻击者而言,如何用最低的成本,获取最好的攻击效果是他们一直追求的,如果还能让自己不易被发现,那再好不过。近几年,通过软件供应链污染来达到恶意攻击的手段,就因为上面这个原因而频频被使用。2015年9月,XcodeGhost 事件爆发,当年这个所有iOS程序员都会用到的开发工具,让超过 4000个不同版本的苹果应用被感染,该事件影响了中国近一亿苹果手机用户,由此,软件供应链安全问题开始广受关注。
对于攻击者而言,如何用最低的成本,获取最好的攻击效果是他们一直追求的,如果还能让自己不易被发现,那再好不过。
近几年,通过软件供应链污染来达到恶意攻击的手段,就因为上面这个原因而频频被使用。
2015年9月,XcodeGhost 事件爆发,当年这个所有iOS程序员都会用到的开发工具,让超过 4000个不同版本的苹果应用被感染,该事件影响了中国近一亿苹果手机用户,由此,软件供应链安全问题开始广受关注。
▲图片来源:freebuf
雷锋网编辑先以小偷入室偷窃,来打个不太恰当的比方。
之前小偷进你家偷东西,可能需要先把小区门禁卡给搞定,再把单元门禁卡给搞定,最后通过各种方式把你家的锁撬了,然后才能趁你不在的时候偷走东西。
但现在,小偷可能在盖楼或者你装修的时候就顺便留下若干通往你屋子的暗道,并且在暗处装上了各类摄像头和监听设备。
他清楚地知道你每时每刻在干些什么,有哪些重要的隐私信息,知道你家中最值钱的东西放在哪里,什么时候来你家才能不被发现……你家今天没丢东西,并不意味着小偷现在没能力进来,只是直击要害的时机还未到。
即使有天你发现家里丢了东西后,也无法通过小区的摄像头获取任何小偷的信息,更没法像传统破案一样通过撬锁等痕迹来寻找蛛丝马迹。
放在网络安全领域,这种“行窃”手法在恶意攻击中越来越流行,从棱镜门到 XcodeGhost,从惠普驱动键盘记录后门到 Xshell 后门,从 python pip 源污染到 VSCODE插件钓鱼……软件供应链安全事件不仅频繁发生,而且威力巨大。黑产有时不再花巨资去搞 0day,就能以“四两拨千斤”的手法,获得高额回报,事情发生后,还往往能溜之大吉,很难追溯。
针对很多软件从源头就被恶意“污染”的现状,阿里巴巴从今年 3 月到 10 月,举办了一场软件供应链安全大赛,近日,作为主要组织者之一的阿里安全资深专家杭特,花了整整一个下午的时间,跟雷锋网编辑详细地聊了聊这场大赛举办的深层次的原因,以及目前软件供应链安全所面临的困境。
▲阿里安全资深专家杭特
我们生活在一个布满代码的危险世界
除了水、空气、阳光,还有一样东西正在成为我们的刚需---软件。
我们智能手机里面那些五花八门的应用、正在遍布各个角落的 IoT设备、未来终将普及的无人驾驶汽车……近10年以来,全世界的 程序员 正编写并复用的海量软件,极大地改变了我们的生活。
据不完全统计, 目前开源软件的数量已经超过5300亿行,在全球2000强的公司里面,所用的普通构件中,每家至少有 50000 行的开源代码。
换句话说,如今我们所使用的很多产品和应用,都是“站在巨人的肩膀上”,开源和闭源软件在供应链中,正扮演者越来越重要的角色。
但这个巨人到底可靠不可靠?
在文章开头频出的安全事件背后,来自北京大学软件与微电子学院的张世琨教授带来了这样一组数据: 在 JAVA 构件的下载中,存在的已知安全漏洞的概率是十六分之一,在旧版本的构件当中,包含安全漏洞的可能性更大。
这些漏洞并非全部由恶意代码构成,但其背后的隐患已不容忽视。
目前现状是,需要分析的对象数量越来越多、规模也越来越复杂,但分析人员人数有限,水平层次不齐,准确性无法保证,由于人员流动更是会带来无法估量的损失。
大量安全人员的时间都耗费在了重复性的劳动当中,各种低级别的漏洞分析和逆向占用了他们大量的精力,很多时候更像是纯体力的劳动。
比如以下这种场景:
▲图片来源:阿里聚安全
杭特介绍,对于恶意代码的检测,除了少数通用的工具,(IDA、Ollydbg等等),绝大部分工作都需要人工分析。对于刚入门的同学,人工逆向打怪升级还有些成就感,“读了这些文件”,“发了这些数据”,“哦,原来是这么回事”,但随着时间的推移和技能的提升,逆向工作就成了纯粹的体力劳动,每天只能反反复复的运行程序、设置断点、获取接口数据、修改数据、写分析记录,大量的时间耗费在这些并没有创造力的繁琐工作里,而黑产所带来的指数级增长的威胁,却越来越难以对抗。
那面对海量需要检测的对象,这些重复的工作可否通过自动化的 工具 实现,来更有效率地应对恶意攻击?
正是抱着想法,阿里举办了这样一场业内少有的,赛程如此之长的软件供应链安全大赛。(2018年2月-3月;2018年3月-4月将举行软件供应链安全测试赛,4月-9月举行分站赛,10月份举行总决赛,奖金总额150万元)
举办大赛的深层原因
针对软件供应链安全的现状,美国早已开始谋篇布局。
前面提到,人类编写新软件的速度要远快于人工检查的速度,近年来优秀安全人才也处于供不应求的状态,所以自动化发现软件漏洞已经成为网络安全技术发展的趋势之一。
2016年8月,美国国防部先进研究项目局(DARPA),就举办了世界首届机器与机器对抗的网络攻防大赛(CGC),大赛中所使用的自动化的技术,不仅要找到软件的 bug,而且要保证这些 bug 是可被利用并入侵计算机的漏洞。
在比赛过程中,参赛团队需构建自动化系统,对有缺陷的程序做自动加固和相互攻击,这些系统不仅要能够抵抗外来攻击,还需同时反击对手。
这说明,在大洋彼岸的美国,已经将这种自动化的检测和攻防列为国家战略,并对此进行了大手笔的投入和长期发展的规划。
换言之,这些顶级安全研究人员所共同积累的自动化攻防的技术,会在 DARPA 的长期支持下逐渐完成技术积累,为未来大规模替代人工做准备。
在杭特看来,CGC比赛的难度和所分析对象,综合来看要超过各类 CTF 和 PWN。
▲CGC属于右上角的区域
他告诉雷锋网编辑,针对软件供应链安全的挑战,美国有完善的流程标准NIST-800-161,也在高大上的VET项目投资了近5000万美金,可惜的是,目前国内这块还是空白。
好了,说完了国外的情况,我们把目光投向这次阿里举办的软件供应链安全大赛。
这次大赛为什么是阿里来搞?
首先我们来看,作为一个拥有多元生态的互联网公司,阿里麾下的各类服务已经涵盖了我们生活的方方面面。
这些服务中,几乎每项都离不开各类软件的支撑,无论是源码编写、源码编译,还是软件分发、软件下载、软件更新等诸多环节中,都面临有海量的恶意代码检测任务。
杭特透露,他们也曾经做过一个针对软件供应链安全的实验,在供应链的某个节点上插入恶意代码,由此所造成的后果确实极大地超出他的预期。(对于编辑再三追问的实验细节,他并没有透露)
如果这种技能被黑产大规模掌握后,他们将不必再花大价钱来买 0day 漏洞就可以达到理想的攻击效果,由此攻击成本将大为降低,安全人员所面临的挑战愈加严峻。
雷锋网发现,其实阿里本身在自动化的攻防上已经开始布局,不久前,阿里安全所研发的自动化逆向机器人 TimePlayer 已在公开报道中出现过,这次所举办的软件供应链安全大赛,也是期望能够以生态的形式提升行业的自动化检测能力。
路漫漫其修远兮
虽然这场大赛是阿里来主办的,但软件供应链安全的问题需要多方来共同解决。
在8月22日阿里所主办的网络安全生态峰会的软件供应链安全分论坛中,雷锋网 (公众号:雷锋网) 发现了来自公安部、工信部、高校和企业等单位和机构的领导专家。
由此来看,其实国家相关部门已经意识到问题的严重性并且开始探讨解决方法。
在会上,来自公安部的相关领导透露,公安部有一个产品销售许可证的管理职能,目前也正在改革销售许可的管理制度,在软件等级保护中,他们 增加了软件供应链安全方面的要求,重要行业部门使用的重要的源代码会进行更加严格的安全检测,他们也借大赛的机会想了解如何更有效的检测和防范威胁。
但针对软件供应链安全,自动化的检测和攻防将会面临一个漫长的过程。
来自腾讯的杨勇坦言,攻防双方的对抗永远是一个此消彼长的过程,不仅是安全人员在研究这块,黑产在自动化的攻防方面也在研究如何绕过,所以未来就像军队的建设一样,拼的不仅是技术的高度,更重要的是持续的投入和不间断的研究。
“到底对这个公司能造成什么样的危害,它通过这种攻击拿到的资源,能给这个产业或是社会造成什么样的危害?”杨勇认为,对这些还缺乏系统性的评估,通过这场大赛,也是想对安全隐患进行更清晰和准确的刻画,但这仍然需要很长的路走。
时光到回1960年,当时国际象棋计算机系统已可用,但它花了30多年才在1997年战胜世界冠军卡斯帕罗夫。而计算机安全的复杂度要比国际象棋高n个数量级,未来仍然荆棘密布。
但比认识困难更加重要的,应该是立马行动起来,也许正像一句谚语所言“种树的最佳时间是在20年前,下一次种树的最佳时间是今天”。
雷锋网原创文章,未经授权禁止转载。详情见 转载须知 。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- C++11 新特性总结(相比 C++98)
- Wi-Fi 6 与 5G 相比哪个更快?
- 什么是Spark,与Hadoop相比,主要有什么不同?
- OpenGL* 性能提示:相比图像,纹理具有更出色的渲染性能
- 为什么Scala相比Kotlin失去了动力? - Quora
- 荣耀高管详解方舟编译器:相比安卓拥有3大优点
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python Algorithms
Magnus Lie Hetland / Apress / 2010-11-24 / USD 49.99
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it......一起来看看 《Python Algorithms》 这本书的介绍吧!