全球新消息丨想低成本保障软件安全?五大安全任务值得考虑
2022-07-19 06:06:04来源:今日头条
应用程序的快速交付并非安全的敌人,尽管现在看起来似乎如此。随着企业持续采用云服务和基础设施,安全却逐渐被抛之脑后,这是不可取的——尤其是现在持续集成/持续交付流水线已成为攻击者的主要目标。
在应用程序上线后仅仅扫描其安全漏洞是远远不够的。安全的左移方法应该在DevOps团队开始开发应用和配置基础设施的时候就启动,这样就可以在漏洞影响范围更广和修复成本更昂贵之前解决它们。这就是 DevSecOps 的核心原则。
通过安全左移,企业可以在用户受到影响之前识别错误配置和其他安全风险。云计算在实现 DevOps 方面发挥了很大作用,因此保护云环境和工作负载可以捍卫 CI/CD 流水线的安全,最终保护客户的安全。
(资料图片)
以下是 DevOps 团队在进行安全左移时应该考虑的5个重要安全任务:
1、 与安全团队协作。安全左移是一个重大改变。除了设置合理的流程以及使用合适的工具之外,企业必须重新思考他们的运作方式,在 CI/CD 流水线中更早地引入软件测试流程、工具以及相关专业知识。DevSecOps 并不是简单地将安全责任塞给开发人员,而是改变角色和期望,并结合使用合适的工具,实现安全和开发的平衡。安全从开发周期的开始就应该拥有比较高的优先级,而不是在 SDLC 后期才开始重视。
2、 实现频繁的自动化测试。安全左移需要尽早且频繁地测试,通过自动化的代码测试,开发人员在工作时就会收到安全问题的提醒,这样他们能够在软件进入生产环境前纠正问题。扫描漏洞的自动化工具可以降低人工测试中可能出现的人为错误的机会,并扩大了覆盖范围,以检查更多的软件。代码在开发过程中的每个阶段都会被扫描,因此到 SDLC 后期不会积压大量待审查的代码。
安全左移的策略需要将一个或多个工具集成到 CI/CD 流水线中以寻找已知的漏洞以及识别其他安全问题。通常会使用的工具类型包括静态应用安全测试(SAST)、动态应用安全测试(DAST)、交互式应用安全测试(IAST),密钥检测和软件成分分析(SCA)。当然,在决定将哪些新工具引入你的流程之前,你应该首先评估你现有的工具。
3、 在流程中进行渗透测试。虽然自动化测试是 DevSecOps 的必备条件,但仅靠自动化仍然可能存在无法发现的潜在问题。例如渗透测试等手动安全评估可以通过模拟网络攻击来检查应用程序的安全性。这类额外的测试可以将安全风险降到最低并且可能捕捉到自动化测试无法检测到的问题。
在进入生产环境之前,请一位安全工程师来帮助你审查软件并进行渗透测试以确保所有潜在的问题都已经得到缓解。与其在被攻击者利用之后才知道漏洞的存在,不如直接覆盖所有的基础代码并对其进行额外的测试。
4、 保证你的软件是最新的。始终采用最新版本的软件是网络安全的核心。开发人员必须确保他们所使用的软件(操作系统、应用程序框架以及第三方库等)保持在最新版本,这意味着安全补丁也处于最新状态。无论是来自供应商还是开源社区的软件,下载软件更新是保护软件安全的重要步骤。
5、 寻找安全培训的机会。开发人员并非安全专家,但他们在安全应用程序的生产中具有关键作用,因此开发人员也应该了解安全编码和测试的基本知识。随着对软件需求的攀升,开发人员应该考虑根据他们的具体角色和需求进行安全培训。适当的培训和支持可以为你提供所需的背景信息,以产生即实用又安全的代码。
谈及软件安全,没有任何灵丹妙药可以完全确保你的代码永远安全无虞。通过采用这些实践,您能够发现更多漏洞并且在代码部署前就打上补丁。