"vivo公司分享了其在移动终端DevSecOps安全开发实践中的经验,强调了从软件成分分析的角度来构建安全开发能力,涵盖了自研代码和三方组件,包括开源组件和三方SDK。安全开发实践架构涉及编码与构建阶段的安全编码规范、源代码安全扫描、三方组件的安全评估和管理,以及安全环境检测等。此外,还提到了编码安全、供应链安全,并介绍了用于自动化安全检测的工具如ApkCheck和PNC平台,以及vSword智能终端安全点检平台。"
移动终端DevSecOps安全开发实践的核心是将安全性融入整个软件开发生命周期,从源头减少安全漏洞。vivo的安全组件负责人提出,软件成分可大致分为自研代码和三方组件,这两部分都需要针对性的安全策略。
对于自研代码,vivo强调了安全编码规范的重要性,旨在提升开发人员的安全意识和能力。通过实施本地代码静态安全检查和自测动态检查,可以在编码阶段及时发现并修复不安全的代码。此外,使用安全组件提供基础安全能力,以快速解决业务中可能出现的安全问题。
供应链安全是另一个关注点,vivo通过安全评估和管理平台对引入的三方组件和开源组件进行管控。安全工程师会采用静态分析和动态分析方法进行安全评估,出具评估报告,并对第三方厂商的整改结果进行复核,确保安全问题得到闭环处理。
编码与构建阶段的安全措施包括安全与隐私代码扫描,如增量代码扫描和全量扫描,使用SAST静态扫描和动态扫描工具,以全面覆盖潜在的安全问题。同时,通过成分安全扫描,利用SDK基础信息、指纹信息和安全信息建立的知识库,进行三方SDK的安全审查。
在应用测试与整机测试阶段,vivo使用了如ApkCheck这样的自动化平台,它结合静态分析和动态分析,多维度检测Android应用的安全风险。PNC隐私与合规自动化检测平台则基于法律法规,实现对移动App的隐私与合规风险的检测。vSword则集成多种安全工具,提供智能终端的安全点检能力。
vivo的移动终端DevSecOps实践展示了如何通过系统化、自动化的方式,将安全开发贯穿于整个软件生命周期,确保产品在功能和性能的同时,具备高度的安全性和合规性。