使用F5 Advanced WAF保护GraphQL API

F5生态系统 | 2021年8月31日

API现状

过去几年,许多组织一直在推进数字化转型,而新冠疫情加快了这一进程。

API在这一转型过程中发挥着重要作用。作为数字化转型的一部分,其中许多组织如今表示自己是“API优先”型组织。“API优先”型组织在设计应用时,会先设计API,再以这些API为基础设计应用的其余部分。这样,应用便可利用其基础API与其他应用通信并从中检索信息。

这些组织通常会开发和使用API,以支持与外部组织的合作关系,缩短开发时间、降低开发成本,并增强内部系统、工具和团队之间的互操作性。

F5 Labs的《2021年应用策略现状报告》指出,API也是应用现代化的基石,可用于帮助改造和更新传统应用,使其支持更新、更具模块化特性的应用语言、工具和平台。此外,无论是正常API还是恶意API,如今都占据了Web总流量的绝大部分。

这就是API这把“双刃剑”的第一面。

API这把“双刃剑”的另一面是:据Gartner预测,到2022年,API滥用将成为最常见的攻击途径。攻击者意识到,API可能存在漏洞,甚至未受到某些组织的保护,因为这些组织依赖数据和信息的开放流动,在其应用与其他应用之间共享数据和信息。有时,这只是疏忽,却为攻击者提供了一个可快速、轻松入侵应用的入口。应对这种情况需要采取专门措施,例如原生支持行业使用的所有API协议和技术。

GraphQL API

GraphQL是一项相对较新的API技术,过去几年发展迅速,并持续受到关注。GraphQL由Facebook于2012年内部开发,现已成为Linux Foundation的一部分,正在解决REST API面临的重大挑战。越来越多的组织开始采用GraphQL而非REST或SOAP来开发API。

这些挑战包括数据获取不足和过度获取、无需新增API端点即可加快前端开发(GraphQL仅使用一个端点)、利用GraphQL查询实现出色的后端分析,以及采用结构化的模式和类型系统。

去年,GraphQL的行业采用率已超过22%1,覆盖了创新采用生命周期中的创新者、早期采用者和早期大众群体。

预计未来几年,GraphQL将成为API领域的主流标准之一。

GraphQL安全

然而,GraphQL的迅速发展和广泛采用也很快引起了网络攻击者的注意。其中一些攻击者已开始利用GraphQL生态系统中的漏洞,并着手开发相应的攻击工具。

针对使用GraphQL的API,攻击技术既包括传统的SQL注入,也包括利用GraphQL规范披露API相关数据并借此牟利的新型攻击。

此外,还出现了利用基于GraphQL构建的API快速耗尽服务器资源的新型拒绝服务(DoS)攻击方法。

从Advanced WAF v16.1开始,F5原生支持保护GraphQL API。

首先,F5开发了对GraphQL流量的原生解析功能,以便应用Advanced WAF攻击特征。

一方面,此方法会在有效负载的正确位置检测攻击(对值运行攻击特征匹配);另一方面,它还会避免因在GraphQL请求的错误部分运行攻击特征匹配而产生误报。

其次,F5会创建GraphQL策略模板和内容配置文件,并将其纳入应用安全策略。

在这个新的内容配置文件中,用户可以配置参数的总长度和值长度,并根据策略对其加以限制。

此外,还可以配置最大结构深度,以消除可能导致DoS攻击的递归GraphQL查询;还可以配置最大批量查询数,以限制单个HTTP请求中不同GraphQL查询的数量。

还可以强制限制内省查询,否则此类查询可能帮助攻击者了解API结构,从而提高其成功入侵应用的可能性。

API结构配置文件

为应对此问题,F5还新增了对声明式策略配置的支持,并可使用Behavioral DoS功能防御大流量DoS攻击,以及使用F5 Advanced WAF中的DataGuard功能过滤响应。

总而言之,GraphQL为创建和管理API提供了新方式,有助于推动现有传统应用的现代化,并支持数字化转型。但一如既往,更多威胁会利用任何新技术中的薄弱环节发起攻击,稍有不慎便可能措手不及。

立即使用F5 Advanced WAF保护GraphQL API!

如需了解更多信息,请查看我们在DevCentral上发布的文章以及我们的YouTube Lightboard Lesson视频。

1 2020 年 API 现状报告,Postman

分享
标签: 2021

相关博客文章

F5纪念2021年世界艾滋病日
F5生态系统 | 2021/12/01

F5纪念2021年世界艾滋病日

值此世界艾滋病日,F5郑重承诺,将与员工、客户、社区和合作伙伴共同努力,消除社会对HIV感染者仍然存在的污名与偏见。

Thingbot正转变为攻击平台
F5生态系统 | 2018/11/29

Thingbot正转变为攻击平台

Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。

借助F5全新Quick Start,在AWS上快速开展业务
F5生态系统 | 2018/11/20

借助F5全新Quick Start,在AWS上快速开展业务

在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。

为什么声明式模型对NetOps自动化至关重要?
F5生态系统 | 2018/04/30

为什么声明式模型对NetOps自动化至关重要?

为什么声明式模型对NetOps自动化至关重要?阅读F5博客,了解基础设施即代码如何简化网络扩展。

开源聚焦:F5基础设施即代码与多云可管理性
F5生态系统 | 2017/11/16

开源聚焦:F5基础设施即代码与多云可管理性

开源聚焦:基础设施即代码与多云。阅读博客,了解模板和Terraform如何简化F5应用服务的部署。

破解IT“无解困局”的答案:私有云
F5生态系统 | 2016/09/12

破解IT“无解困局”的答案:私有云

破解IT“无解困局”的答案:私有云。阅读F5博客,了解本地部署的敏捷性如何化解安全与速度难以兼顾的问题。