安全,从写第一行代码开始!

文章作者:从墨

伴随5G时代的脚步渐进,物联网发展也将成井喷式增长,“网络安全”这个老生常谈的话题似乎进入了新阶段。数据是天使?还是魔鬼?归根结底,没有安全保障的物联网终将不可持续发展。

近日,2019第二届世界物联网安全峰会在京召开,新思科技软件质量与安全部门高级安全架构师杨国梁出席大会并发表演讲。 期间,CSDN记者特别采访了杨国梁,共同聊了聊在物联网发展的背景下,怎样从全生命周期角度构建整体安全体系以及如何在软件发布之前确保其安全等诸多问题。

安全,从写第一行代码开始!_第1张图片 新思科技软件质量与安全部门高级安全架构师杨国梁​​

物联网安全要从代码抓起

根据研究机构IDC报告,2020年物联网市场规模将达到17,000亿美元,设备将有200亿台。快速发展的物联网行业,同时也产生了很多新问题,其中物联网信息安全成为关键。例如最近爆出的几则新闻,谷歌旗下智能家居公司Nest摄像头遭黑客攻击、智能手表可成为黑客攻击的目标、蓝牙设备也可能被入侵等。

过去以往,用户是用防火墙、入侵检测等安全措施,本质是采用安全软件来确保用户安全,主要通过对用户边界防护来实现;但在物联网时代,软硬件360°的围绕在用户身边,个人财产风险、甚至生命风险,都可能取决于物联网设备。这个时候,当出现问题之后再去做出补救,可能为时已晚。

“设计缺陷、安全漏洞和弱密码等是造成物联网威胁的主要因素。”杨国梁表示,针对目前企业在软件产品研发过程中可能存在的重功能、轻安全的现象,新思科技的做法是把安全防护前置,融入到软件开发过程中,帮企业开发出安全的软件。这样企业不再依赖于边界防护的方法,因为系统本身就是一个足够健壮的系统。

为了解决物联网的安全问题,新思科技提供了一整套的贯穿物联网生命周期的安全工具,从需求设计到研发测试、交付运维等全面保障物联网安全,这包括Polaris、Seeker、Coverity、Black Duck等一整套解决方案。

在采访的过程中,杨国梁特别介绍了Coverity产品。据了解Coverity是一款静态代码分析工具,是新思科技软件质量与安全部门的主打产品之一,该工具主要是为企业的软件开发提供在整个SDLC(软件开发生命周期)过程中检测和修复缺陷所需要的东西。它能够完全的满足企业应用安全开发团队日益增长的三大需求:可扩展性、多种编程语言和框架支持,以及全面的漏洞分析。

他讲到,网络安全是一个快速变化的动态市场,客户需求日新月异,为了帮助用户更有效地应对挑战,Coverity每年都会进行两次重大升级,以及一些小修小补升级。

把安全威胁从开始就排除

如今开源被认为是全球最伟大的共享经济,软件作者将源代码开放,全球码农们可以自行使用、复制、散布、研究和改进。正因为在开源的世界里“无边界”、“无国界”,开源代码必然一样存在安全隐患。

新思科技近日发布了《2019年开源安全和风险分析》(OSSRA)报告。2019年OSSRA报告中最值得注意的开源风险趋势包括:

  • 开源采用率大幅提升。2018年审计的代码库中96%包含开源组件,每个代码库中平均有298个开源组件,2017年则为257个。
  • 开源许可证冲突可能会使知识产权面临风险。68%的代码库包含某种形式的开源许可证冲突,38%的代码库包含没有可识别许可证的开源组件。
  • 废弃组件的使用很常见。85%的代码库包含过去四年以上老式的组件或者过去两年没有开发的组件。如果一个组件处于非活跃状态或者无人维护,也就意味着没有人正在处理其潜在的漏洞。
  • 许多组织未能修补或更新其开源组件。2018年黑鸭审计中确定的漏洞的平均年龄是6.6年,略高于2017年 。这表明补救措施没有显著改善。2018年扫描的代码库中有43%包含超过十年以上的漏洞。国家漏洞数据库(National Vulnerability Database)显示2018年增加了16,500个新漏洞,其明确的修补流程需要扩展以适应增加的披露的漏洞。
  • 并非所有的漏洞都相同,但许多企业甚至没有解决那些风险最高的漏洞。超过40%的代码库包含至少一个高风险开源漏洞。

报告显示开源软件的使用本身并不是问题,实际上这对软件创新至关重要。但是未能积极主动地鉴别和管理任何与开源组件使用有关的安全和许可证风险,可能极具破坏性。虽然风险因素仍然存在,2019年OSSRA报告数据表明,在Equifax数据泄露之后,开源风险意识的提高和商业软件组件分析解决方案的成熟度已经取得了进展:

  • 企业在管理开源安全漏洞方面正渐入佳境2018年审计的代码库中有60%包含至少一个漏洞,相比2017年的78%已经改善不少。
  • 总体而言,开源许可证合规性也得到了改善。2018年审计的代码库中有68%包含有许可证冲突的组件,2017年则为74%。

杨国梁介绍说,目前新思科技的Black Duck软件组成分析解决方案,已经能很好地解决开源软件这些问题。通过识别、保护、管理和监测这四个阶段,就能够准确的查找到所有在用的开源组件,确认其中有无不当的开源许可,再通过安全策略有效保障开源软件的安全性。

新思科技不仅在对开源软件的检测中能够有效的帮助到开发者,同时针对开发流程也是开发者的得力助手。不同于传统的代码检测公司,他们都是在产品研发完成之后再进行代码的检测和修复,修复之后,还要再重新进行验证流程,检测周期非常长。发现漏洞或问题,就要从头查起,找到问题所在。 

例如,新思科技通过Polaris软件完整性平台帮助安全和开发团队更快地构建安全、优质的软件。基于Polaris软件完整性平台,企业开发团队可以在开发早期检测和修复漏洞,并且在整个软件开发生命周期(SDLC)中集成和自动化全面的安全分析,在整个应用程序组合中全面管理应用程序安全风险。

“通过开发者在编写代码的同时,就对代码的安全性以及功能的交互性进行检测,开发人员可以在任何时间、任意代码模块开发结束之后来进行检查,一旦发现有严重安全问题就可以及时修正,时效性大大提升。”杨国梁讲到,Polaris软件完整性平台的四大优势:早期风险发现和迁移;从检测到预防向左推移;简单和灵活地运营;综合风险报告能够有效的帮助到开发者,让其在不影响开发进程的情况下,设计出一个安全高效的软件系统。

随着5G技术的加持,物联网将不可避免地进入一个野蛮生长时期,企业在当前的物联网基础阶段,必须保证所写下的每一行代码都是安全的。

新思科技让“鱼和熊掌”都可兼得

正如前面所提到的,软件企业往往为了性能而忽视了安全,要不就是为了安全就降低了性能。物联网快速发展下,企业更应该将安全作为软件开发的前提,不断的提升软件性能和服务。

“新思科技所定义的软件完整性包括软件质量和软件安全两部分,只有这两个都做到了,软件才是真正意义上的完整。”杨国梁表示,如果要研发出高质量、安全可靠的软件,企业就要把安全深度融入到整个软件开发生命周期(SDLC)。通过将自动化安全监测机制加入到需求、设计、研发、测试、发布整个流程中,从而确保软件的质量。

他谈到,新思科技构建出完整、安全、高质量的SDLC解决方案,把领先的测试技术、自动化分析以及专家结合到一起,创建出强大的产品和服务组合。该组合能够让企业开发出定制的程序,用在开发流程的早期发现并修复缺陷和漏洞,从而最大限度降低风险并提高生产力。

目前,高科技、物联网、设备商、互联网等行业市场的前沿客户和第一梯队的客户接受程度非常高,对于软件安全越来越重视,通过白盒测试、开源管控、黑盒测试、灰盒测试、甚至交互测试等强化软件质量和安全。特别是金融行业客户已经在主动实现SDLC(Security Development Lifecycle)了。业界基本都已经达成共识,要从软件开发源头就开始注重安全防护能力。

技术的变幻莫测,让企业的发展充满了新的改变机遇;但不管怎么变化,“安全”则是永恒不变的。当诸多产品和技术在周围应用时,我们需要做的就是时刻“重视”安全,主动打造坚实的安全机制,从第一行代码打地基开始,构筑一个安全可靠的软件大楼。

你可能感兴趣的:(物联网,安全)