在刚刚结束的RSA 2017大会上,安全连接DevOps(开发运维一体化)成为大会的一个热点话题,有很多国外机构甚至已经有了DevSecOps(开发安全运维一体化)的实践。
DevOps作为软件开发过程管理领域的新思维,已经被越来越多的IT企业所接受。不得不说,DevOps所带来的业务效率提升是毋庸置疑的,“1天10次部署”、“15分钟从完成补丁到上线”已经逐渐成为更多企业用于评价开发和运维的新标准。
DevOps理念和标准的引入,对于整个软件开发过程中的工具和方法提出了更多的要求,尤其在自动化和速度方面的要求更是达到了前所未有的高度。安全测试工具自然也不例外,因此传统的应用安全测试(AST)必须做出调整和改变,以适应DevOps的需求。
“1天10次部署”、“15分钟从完成补丁到上线”,固然不是指从需求、设计,到开发、测试、部署这一整套流程,但通常至少都会涉及到对代码的修改(无论是问题修复,还是新特性的添加)。静态应用测试技术(SAST)作为应用安全测试领域最重要的技术之一,无疑也是与代码结合最紧密的应用安全测试技术,因此SAST工具的革新迫在眉睫。
360代码卫士作为国内领先的SAST厂商,对原有产品进行了系统地改造与升级,引入一系列开创性的新技术,以更好地适应DevOps时代的需求。
1. 全新的IDE插件检测解决方案:360代码卫士通过插件与IDE完美的结合,将开发团队使用SAST技术的门槛高降到最低;独特的轻量级快速检测技术,帮助开发人员在第一时间内发现代码中的安全隐患。IDE插件解决方案,能够帮助开发团队快速、高效、及时地进行修复安全问题,从而避免不必要的反馈、补丁以及回归测试,加速DevOps的整体发布流程。
2. 无缝对接CI/ALM系统:360代码卫士支持与Jenkins等持续集成系统、Svn和Git等版本控制系统的无缝链接,从而实现全自动的SAST检测触发;可配置的自动化结果反馈功能,用户可选择将结果呈现在360代码卫士平台上,或是导入JIRA等应用生命周期管理工具中。无缝对接持续集成系统、版本控制系统、应用生命周期管理系统,是实现SAST在DevOps中真正应用的核心基础。
3. 项目级增量分析技术:360代码卫士可基于Svn或Git地址定义项目,从而在持续集成的过程中,自动识别相同项目并启用增量分析技术;根据项目中变化的文件,基于依赖关系缓存进行变更计算,从而仅对项目中变更影响的部分进行静态分析。项目级的增量分析技术,契合了DevOps的小幅度、高频率的发布机制,大幅度提高了SAST的分析速度。
4. 审计信息携带技术:360代码卫士的审计信息携带技术,可以对同一项目的多次检测进行审计结果的传递,即第一次审计为误报的测试结果,在第二次的结果中不会重复出现。这一开拓性的技术,能够让安全审计人员聚焦于每次SAST中新增的安全缺陷,极大的减少了DevOps中人工安全审计所需的时间。
DevOps已经成为软件开发管理的趋势和方向,360代码卫士可以帮助企业在DevOps的流程中,顺利地融和SAST技术,在通往DevSecOps的道路上迈出坚实的一步。