定义

应用程序安全 (AppSec) 是在整个软件开发生命周期 (SDLC) 中用于识别、修复和防止应用程序漏洞的流程、实践和工具。应用程序安全涉及大量的工具和方法,但这些工具和方法的目标是相同的:识别弱点和漏洞,并在它们被利用之前进行修复。


为什么应用程序安全很重要?

如今,每个企业都是软件企业,无论企业是直接向客户销售软件还是依靠软件来运营。软件的安全性对于最大限度地降低业务风险至关重要。强大的 AppSec 策略是降低业务风险并帮助建立对软件安全性信任的唯一方法。


AppSec 转型:将安全构建到 DevOps 中的三大方法

探索快速实现安全的三种方式

云应用程序安全、Web 应用程序安全和移动应用程序安全有什么区别?

所有类型的应用程序安全都有相同的目标:识别、缓解和防止漏洞。各种类型之间的区别在于在何处、何时以及如何实施安全测试、实践和方法。

移动应用程序安全:移动应用程序安全侧重于 Android、iOS 和 Windows Phone 等各种平台上的移动应用程序的软件安全状况。涵盖在手机和平板电脑上运行的应用程序,涉及评估应用程序在其所运行平台环境中的安全问题、开发时使用的框架以及预期的用户集(例如员工与最终用户)。

移动应用程序安全测试涉及以恶意用户试图攻击的方式测试移动应用程序。有效的安全测试始于了解应用程序的功能以及此应用程序处理的数据类型。静态分析动态分析和渗透测试相结合,用于发现因这些技术未有效协同使用而漏掉的漏洞。

云应用程序安全:云应用程序安全是一个策略、流程和控制系统,使企业能够在协作云环境中保护应用程序和数据。云安全围绕关键的活动,包括识别和管理访问权限、数据保护、基础架构安全、日志记录和监控、事件响应以及漏洞缓解和配置分析。

Web 应用程序安全:Web 应用程序安全是构建网站使其按预期运行(即使网站受到攻击)。它涉及一系列设计到 Web 应用程序中的安全控制,以保护其资产免受潜在恶意代理的影响。像所有软件一样,Web 应用程序不可避免地带有缺陷。其中一些缺陷构成了可以利用的实际漏洞,从而会给公司带来风险。Web 应用程序安全可防止此类缺陷。它涉及在整个软件开发生命周期 (SDLC) 中利用安全开发实践和实施安全措施,以确保解决设计级缺陷和实现级错误。所使用的测试包括 DAST、SAST、渗透测试和运行时应用程序测试 (RASP)。


何时应执行应用程序安全测试?

这个问题无法简单回答。测试需求和时机因应用程序、商业模式和环境而异。但是 DevSecOps 的现代模型能够尽早且尽量频繁地在 SDLC 中促进测试。您的最佳做法应该是尽可能地进行测试,以帮助尽早发现问题,以便在问题变得更为严重之前进行补救,以免后续付出时间、金钱甚至返工。


哪些工具用于应用程序安全测试?

AppSec 工具多种多样,每个工具都有自己的特定用例和功能。最常见的一些工具包括:

  • 动态应用程序安全测试 (DAST):这是一种自动化的应用程序安全测试,对于必须遵循监管安全评估的面向内部的低风险应用程序最为适合。对于中风险应用程序和微小变更的关键应用程序,使用 DAST 和手动 Web 安全测试是查找常见漏洞的最佳解决方案。
  • 静态应用程序安全测试 (SAST):这种类型的测试可以通过自动和手动测试技术进行。它能够识别错误,而无需在生产环境中执行应用程序。还能让开发人员扫描源代码并系统地发现和消除软件安全漏洞。
  • 渗透测试:这种手动应用程序安全测试最适合关键应用,尤其是那些正在经历重大变更的应用程序。这种评估涉及业务逻辑和基于对手的测试,以发现高级攻击场景。
  • 软件组成分析 (SCA):这种类型的分析有助于团队管理在应用和容器中使用开源和第三方代码所带来的安全、质量和许可证合规风险
  • 交互式应用程序安全测试 (IAST):交互式应用程序安全测试有助于在 DevOps 流水线内自动执行 Web 安全测试。IAST 能够自动重新测试已识别的漏洞,并验证它们是否真实,是否会被利用。它比传统的动态测试更准确,并提供 Top 安全漏洞的实时视图。

 

Application Security, Explained  | Synopsys

Synopsys 如何提供帮助?

Synopsys 提供一套全面的 AppSec 解决方案。Synopsys 连续六年荣获应用安全测试魔力象限领导者地位。Synopsys 行业领先的解决方案提供了值得信赖的专业性,必将满足您的需求。

探索我们完整的解决方案套件,了解更多信息。