现代应用需要一套高级功能,才能充分保护其整个威胁面。Web应用防火墙(WAF)仍发挥着作用,但随着应用不断演进且API持续存在,还需要更多功能来监控、跟踪和保护整个应用面,包括日益庞大的API连接网络。
WAF在支持API安全方面的一些潜在局限
虽然WAF是保障API安全的重要工具,但并非所有WAF都具备同等能力,部分WAF在保护API方面存在局限。这些局限可能包括:
- 处理复杂的API授权:API通常采用比Web应用中传统的基于会话的身份验证更复杂的授权机制。WAF可能难以处理OAuth 2.0、JWT(JSON Web Token)或自定义的基于令牌的身份验证等复杂授权方案。
- 分析协议和有效负载差异:API可以使用多种协议(REST、GraphQL、SOAP)和有效负载格式(JSON、XML),其数据结构和模式各不相同。WAF对这些差异的解析和验证支持可能有限,进而可能导致可见性受限,并在威胁检测中产生更多误报或漏报。
- 速率限制:API速率限制对于防范滥用行为和API资源耗尽至关重要。由于API请求具有动态特性,并且需要根据API特定参数实施速率限制,WAF可能难以准确限制API流量速率。
- 深入了解API特有攻击:API容易受到参数污染、API特有的注入攻击或API滥用等特定攻击手段的影响。WAF可能缺乏专门的规则或启发式方法,因而难以有效检测和缓解这些API特有攻击。
- API管理功能:WAF主要侧重安全,可能缺少API治理、文档管理、版本控制和开发者门户功能所需的全面API管理能力。
增强WAF的API安全能力
需要注意的是,虽然WAF仍是应用安全的基石,也是保护API的基础层,但仅靠WAF还不够。出于成本、复杂性以及对如何充分保护API存在错误认知和理解偏差等多种原因,各组织正在考虑并实施各种方法。许多组织使用API网关来增强现有WAF,以创建、管理和发布API,同时实施使用策略并控制访问。这是一个良好的起点,但API安全态势仍存在许多缺口。
那么,下一步该怎么做?如何应对未知API和影子API?如何实现精细的API端点控制?对于不一定由组织控制的第三方API,又该如何处理?我们先来看看未知API,也就是影子API带来的挑战。为了全面保护API,组织可能会寻找专门的API发现和漏洞检测工具,将其纳入现有方案。
看出问题会如何发展了吗?情况很快就会变得非常复杂。一些拥有充足预算、专业知识和资源的组织倾向于采用同类优选方案,但对大多数组织而言,拼凑不同的解决方案来覆盖API安全威胁面,只会让一项重大的安全挑战持续存在,那就是复杂性。增加更多单点解决方案很快就会变得难以维系,更不用说还会给有效监控和可见性带来很大困难。
WAAP如何助力实现全面的应用和API安全
这正是Web应用和API保护(WAAP)解决方案的用武之地。应用安全生态系统本已十分复杂,何必再叠加更多可能来自不同供应商、且无法有效关联洞察的独立技术?WAAP产品正是由此逐步演进和发展而来。现代WAAP解决方案将传统Web应用防火墙(WAF)的功能与监控和保护API所必需的专用功能整合到一个统一的解决方案中(通常以SaaS形式交付),可满足基于微服务的现代多云和混合应用环境的部分安全需求。
关于WAAP及其API监控和保护能力的常见误解
人们对WAAP存在一些误解,认为它们缺少提供全面API安全所需的功能。您可能听过的一些错误说法包括:WAAP无法持续监控和跟踪API并识别异常;缺乏高级学习能力,无法跟踪新增和不断变化的应用及API端点;或者无法跟踪和辨别最终用户的意图。
这些说法并不属实。许多现代WAAP解决方案(例如F5 Distributed Cloud WAAP)都具备AI和机器学习能力,可支持API自动发现、架构强制执行、用户和API异常检测等关键API安全功能。许多仅提供API安全功能的单点产品依赖带外分析,而WAAP解决方案可通过单一内联方案分析应用和API流量并进行阻断。无需将数据流式传输或镜像到其他一个或多个解决方案,从而避免延误威胁分析、检测和缓解。
如需进一步了解F5 Distributed Cloud WAAP及其API安全功能,请访问我们的网站,并观看简短的演示,了解该解决方案的实际运行效果。
关于作者

相关博客文章
Thingbot正转变为攻击平台
Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。
借助F5全新Quick Start,在AWS上快速开展业务
在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。