源代码泄露的量级一直在刷新“史上大规模”。
据外媒报道,上周包括微软、Adobe、AMD、任天堂、华为海思、联想在内、横跨不同领域的50多家全球知名企业的源代码遭到泄露,且源代码遭泄露企业的名单还在不断增加中。
虽然很多遭泄露的源代码已由其原始开发人员公开发布,或在很久以前进行了最后更新,且Kottmann也应部分企业的要求删除了代码,但仍有部分源代码存在硬编码凭证,能够被不法分子用来创建后门程序,从而发动更加强大的恶意攻击。
不少安全专家将此次事件定义为有史以来大范围的一次源代码泄露事件,并表示:“在互联网上失去对源代码的控制,就像把银行的设计图交给抢劫犯一样。”
象征“产品生命线”的源代码,为何被泄露?
源代码指的是编写的最原始程序的代码,主要对象是面向开发者。而人们平常使用的应用程序都是经过源码编译打包以后发布呈现的。
对于一家企业来说,旗下产品的源代码就相当于产品的生命线。如果产品的源代码被其他开发者所掌握,除了能将产品完美“复刻”外,还可以通过阅读源代码的方式找到程序中存在的漏洞从而发起攻击。所以每当有源代码被公开,都将为企业带来巨大的损失。尽管开发团队还在加紧排查此次源代码外泄的主要原因,但有技术人员指出,目前有不少企业所使用的DevOps工具中存在配置错误、配置不当的情况,会导致源代码或其他重要数据泄露。
作为一款云原生、API所驱动的开发工具,DevOps凭借高效、便捷、可靠等优势,被云上企业广泛应用于业务开发和部署的过程中。但由于企业缺乏对异常API调用、SecretKey泄漏等云原生安全问题的检测手段,加上研发人员不当配置的因素,导致企业的源代码面临泄露的风险。
今年年初,某母婴零售企业的研发人员为方便开发,把代码上传到开源代码库-GitHub进行托管,其中有部分代码包含了公有云对象存储桶的域名。但因为安全配置不当,该存储桶开放了公有的读写权限,留下了安全隐患。
不法黑客爬取了这段代码和域名,并通过域名轻松访问了该存储桶。不巧的是,存储桶内还保存了公有云上数据库的外网访问域名以及端口。同时由于该企业的云数据库安全配置不当,导致端口直接暴露在互联网上,不法分子随即对数据库进行爆破攻击,不费吹灰之力就获得了该企业的大量数据和源代码,给企业和消费者都造成了严重的损失
随着产业互联网发展的步伐逐步加快,将有越来越多的企业在将业务和数据迁徙至云上的同时,将业务的开发工具切换成云原生的DevOps,以保证云上业务的开发效率并进一步实现自身数字化转型的目标。但如果缺乏对于云原生安全问题的检测和应对手段,企业就可能因遭到恶意攻击,导致核心数据和源代码被窃取的严重后果。
不当云配置成为导致,云上安全事件发生的主要原因
腾讯安全在7月举办的“产业安全公开课·云原生专场”中,腾讯安全高级工程师耿琛在直播中分享了自己的观点:实际上安全配置风险是导致云上安全事件发生的主要原因,也是云上企业最容易忽略的安全问题。
数据显示,大概有42%的云基础设施存在配置风险,76%的云上企业暴露22端口。“如果企业的22端口暴露在外,且存在弱口令的话,黑客就能够很轻易的攻陷企业的云上设施。” 耿琛表示。
除了需要关注木马、漏洞等传统安全威胁外,云上企业还需要具备针对异常API调用、SecretKey泄露等云原生安全问题的检测能力和手段。耿琛指出,现阶段黑客组织在攻击云上业务和系统的时候,会尝试在GitHub这类开源,对平台上泄露的密钥进行抓取。如果企业的API密钥泄露,那么其云上系统将毫无安全可言。
构建云原生安全体系,或是破局之道
尽管本次源代码大规模泄露的真正原因还在排查中,源代码泄露最终会对哪家企业造成何种程度的损失我们也无从得知。但本次事件仍为所有云上企业敲响了警钟,不当云配置和缺乏针对云原生安全问题检测手段,会成为源代码或其他核心数据泄露的直接原因。
随着我国企业数字化转型进程的不断加速,未来将会有更多企业迁移至云上,但传统安全体系不仅无法适应云上环境,更缺乏对云原生安全问题的应对手段。对此,耿琛建议企业应该以云原生的思路构建云的安全体系来应对云环境中的安全问题,而不是简单的将传统安全体系搬到云上。
“依照我们的实践经验,构建云原生安全运营体系需要云原生为中心,以安全左移、数据驱动及自动化为基本支撑。”耿琛表示,企业如果想要避免因不当云配置或云原生安全问题造成损失,最重要的就是安全左移和自动化这两点。
安全左移,指的是云原生安全运营体系首先应该具备事前感知安全威胁和配置风险检查能力,以构建安全预防体系的方式提升整体安全水平;而自动化则要求云原生安全运营体系需要具备对云原生安全问题自动检测、响应和处置的能力。
但是对于中小型企业来说,自行搭建云原生安全运营体系的难度较大,可以使用市面上较为成熟的安全产品。例如腾讯安全运营中心就可以通过自动化配置检查功能对云上配置风险进行自动化识别和评估,帮助企业杜绝不当云配置所带来的安全隐患。
此外,针对SecretKey泄露及异常API调用等云原生安全问题,腾讯安全运营中心中集成的Cloud UBA架构和泄露监测模块,会保持对用户异常行为和网络黑市的检测,减少因密钥泄露而导致的安全事故。