跳转到主要内容
Chinese, Simplified

信息安全漏洞继续成为头条新闻。 2017年和2018年初,Equifax甚至IRS等几个主要组织成为利用安全漏洞的黑客的牺牲品。

攻击速度很快,从发布常见漏洞和暴露(CVE)的一天开始。有时,零天。你如何保护自己?

应用程序安全性测试至关重要,必须正确完成。这意味着遵守推荐的应用程序安全准则,并使用最新的工具和技术。

到目前为止,您很可能熟悉应用程序安全性的两种最突出的技术方法,其中包括引人注目的首字母缩略词:SAST,用于静态应用程序安全测试,检查应用程序的已知编码缺陷实例的源代码;动态应用程序安全测试(DAST)会在您的应用程序运行时探索它,以寻找黑客可以从外部找到的相同缺陷。

在这里,我们仔细研究三种新兴的应用程序安全工具,通过在代码中引入工具来进一步实现这一点 - 交互式应用程序安全测试(IAST),运行时应用程序自我保护(RASP)以及Code Dx产品独有的新技术我们称之为混合应用安全测试(HAST)。

每个人都使用类似的技术在您的应用程序中插入特殊代码 - 我们称之为“检测”您的代码,宇航员的工具监控方式以监控他们的健康状况 - 为应用程序安全测试提供非常不同的好处。您需要了解每个之间的差异,以便您可以正确利用它们并创建一个合理的应用程序安全策略。

互动应用安全测试(IAST)的兴起


IAST结合了检查代码的SAST理念和正在运行的应用程序的DAST视图,但它们在应用程序运行时同时执行。虽然SAST工具谈到从“内部”测试应用程序和从“外部”测试DAST工具,但IAST工具谈到“从内到外”进行测试。

IAST工具将应用程序代码(称为“代理”)安装到应用程序中,以便在应用程序运行时监视应用程序,扫描安全漏洞。代理收集应用程序中的数据,可以识别SAST和DAST工具遗漏的安全漏洞。

IAST工具的好处包括:

  • 报告的误报较少
  • 提供更全面的应用程序代码覆盖,因为它在应用程序中工作。它涵盖:
    • 整个应用程序源代码
    • 运行时控件
    • 配置信息
    • 第三方库和框架
    • HTTP请求
    • 数据库查询
    • 后端连接信息
  • 很容易融入开发过程
  • 提供可扩展性
  • 为开发人员提供即时反馈,以便立即解决问题

IAST工具的缺点是:

  • 它们会对应用程序性能产生负面影响:因为它们会为代码添加工具,所以它们会改变代码的执行方式。
  • 它是一种较新的技术,因此可能仍会出现其他问题或缺点。

然后是运行时应用程序自我保护(RASP)


最近的一项发展是RASP  - 运行时应用程序自我保护。据预测,在2018年至2022年期间,RASP的全球市场将以近50%的复合年增长率(CAGR)增长。

顾名思义,RASP技术在应用程序运行时为其提供安全保护 - 与IAST提供的检测相反。 RASP通过在应用程序中安装代理来利用与IAST相同的技术;不同之处在于代理的使用方式。 IAST工具会查找安全漏洞,而RASP会监视应用程序是否存在攻击,并在感知到攻击发生时保护应用程序免受攻击。

RASP不会影响应用程序的设计。它为部署中的应用程序添加了一层保护,检查正在执行的每条指令,并确定任何给定的指令是否实际上是攻击。

它可用于简单诊断或自我保护:

  • 诊断使用意味着发现攻击时会发出警报或警报。
  • 自我保护意味着它实际上会停止导致攻击的执行。

RASP的优点是:

  • 在应用程序运行时为您的应用程序提供额外的保护层。它被许多人视为比旧的Web应用程序防火墙(WAF)更好的保护层,因为RASP存在于应用程序内而不是外部。
  • 适合更快的开发周期。
  • 允许您巡视意外输入。
  • 如果发生攻击,提供有关攻击的更详细信息 - 这意味着您可以更快地解决问题。

这种新兴技术的缺点是:

  • RASP工具位于应用程序服务器上,从而降低了应用程序性能。
  • 由于法规或内部策略阻止安装其他软件或锁定的基础架构(如平台即服务(PaaS)),并不总是可以在生产中部署RASP代理。
  • 使用RASP会导致错误的安全感。您可能会想,“我们不需要担心应用程序安全性,因为我们的运行时应用程序自我保护会让我们保持安全。”事实并非如此。如果RASP确实发现问题,则仍需要修复,这可能意味着在您处理应用程序时使应用程序脱机。

RASP不会取代应用程序安全性测试。它是一种更新的技术,可以增强标准的应用程序安全测试过程,但不能防范所有漏洞。

现在,混合应用安全测试(HAST)


IAST和RASP是很有前景的技术,但正如所指出的那样,它们都会对它们在为用户运行时如何影响应用程序产生问题。为了在开发过程中获得运行时知识的安全性好处,但不会影响用户,我们设计了一种混合方法,在动态测试期间使用代理技术获取运行时代码执行洞察,并结合这些见解通过静态测试,可以更快,更轻松地找到并修复攻击者最容易访问的漏洞。

我们已经将这种混合应用程序安全测试(HAST)称为整体应用程序安全测试过程的一部分。 HAST合并并关联SAST工具和DAST工具的结果,将您的工作重点放在最重要的漏洞上,并为应用程序安全测试带来巨大好处。

SAST工具可识别潜在的漏洞。结果需要与DAST工具发现的问题交叉引用,以确定潜在的漏洞是否是可利用的威胁。

HAST实现了这一点,结合并关联了两种工具的结果。您可以确定哪些漏洞真正可以被利用,并且应该位于补救列表的顶部。

通过在应用程序中安装代理,HAST再次使用与IAST和RASP相同的技术。在进行DAST渗透测试时,代理在正在运行的应用程序中工作,并确定哪些DAST发现与哪些SAST结果相关联。

最新版本的Code Dx Enterprise现在提供HAST。有关这项新功能的更多信息即将推出。

这些新的应用程序安全测试工具可以更好地进行应用程序安但它们并不能取代SAST和DAST工具。

正确的应用程序安全测试策略使用SAST,DAST,IAST,RASP和HAST来识别漏洞,确定漏洞的优先级,并提供额外的防御层保护。

但您仍需要修复找到的问题,这需要修复过程。使用正确的工具可以为您提供全面的覆盖,并通过自动关联结果来简化整个过程,以帮助您识别需要立即关注的结果。

随着新工具和技术的出现,您需要自学,了解如何确保应用程序的安全。

原文:https://codedx.com/how-iast-rasp-and-hast-enhance-appsec-code-dx-blog/

本文:

讨论:请加入知识星球或者小红圈【首席架构师圈】

Article
知识星球
 
微信公众号
 
视频号