如何使用人工智能保护API的安全

数字转型是基于一种可驱动新的操做模型的API,提供对业务逻辑、应用程序和数据的直接访问。虽然这种访问对于员工,合做伙伴和客户来讲很是方便,但它也使API成为黑客和恶意网络的攻击目标。随着愈来愈多的攻击和漏洞,扩展安全性如今变得愈来愈重要。数据库

现有的解决方案(例如访问控制,速率限制等)提供基本保护,但不足以彻底阻止恶意攻击。今天的安全团队须要识别并响应动态变化的攻击,这些攻击利用了各个API的自我漏洞而提升了攻击的成功率。想一想在将来,人工智能能够检测API以及其余泄露数据的异常行为,自动阻止对整个API基础架构的攻击,并设计完善解决方案是多么值得期待的事。此方法为IT基础架构提供了深刻的可见性,并使安全团队可以在识别出恶意行为时当即采起行动。api

API违规

2019年,澳大利亚最大的房地产估价公司LandMark White发生API漏洞,致使房产估价细节和客户信息泄露。在这种状况下,原本只供内部使用的API却能够从公司域外访问。安全

这些漏洞致使了不一样程度的公司违规行为,包括帐户被接管,私人信息和照片被盗以及信用卡号码的提取。在这次违规行为以后,该公司的良好声誉遭到破坏,他们的客户和银行合做伙伴急忙寻找其余替代品。服务器

从泄露到发现漏洞整个过程持续了数周或数月才被检测到,同时其余相似的违规行为已经花了将近一年时间才能彻底解决。除LandMark White外,到目前为止许多人信息还是没有保障的,这是一件十分危险的事情。要了解如何防范这些威胁,咱们必须首先了解API所带来的潜在漏洞。cookie

图片描述

API漏洞

许多企业目前依靠不充分的安全措施来保护其API。虽然API管理工具提供了一些重要的安全功能,包括身份验证和速率限制,但这些作法一般没法阻止专门为违反API及其提供访问权限的数据和系统而构建的攻击。网络

1.不完整的验证

缺乏权限审查是最近一系列API违规中反复出现的漏洞模式。这些丢失的权限审查会在生产API中暴露漏洞。在某些状况下,彻底缺少访问控制已经使API信息暴露,使得具备基本技能的不良行为者能够进行恶意攻击。架构

在Facebook,USPS和Verizon / LocationSmart的状况下,黑客使用特定账户对API行为进行反向工程,以识别至少一个漏洞,该漏洞能够在没有正确凭证检查的状况下提供对来自其余账户的数据的访问,并且将全部这些都假装成像普通用户。这种技术有可能提供对大量帐户的访问,并已成功用于破坏某些银行和保险公司。框架

若是调用API的应用程序时,可能不会暴露上述漏洞。由于经过跳过客户端应用程序(例如,Web应用程序)并直接调用API来观察数据和控制流,是会得到恶意访问的。客户端应用程序极大地限制了经过用户界面限制使用API​​的方式,依赖应用程序可能会提升些许安全性,尤为是在API层的应用程序以外未执行测试时。机器学习

除了访问控制以外,API安全性还必须包括内容验证。在2019年初发现(已经修复)的Kubernetes的API服务器事件,向咱们展现了这种缺少安全性内容是致命的。整个事件起始是被受权向Kubernetes API服务器发出补丁请求的用户能够发送过量消耗的特别补丁。这种处理过程当中的资源上传,致使API服务器上遭受到服务(DoS)攻击。工具

利用此类漏洞能够极大地破坏服务,若是传入的JSON补丁包含超过10,000个操做,则Kubernetes API服务器修复包括返回413类型错误。这种类型的内容验证很容易在API网关中配置,但它常常被遗漏,由于这样作须要超越自动生成的JSON模式,这些模式只定义简单的规则类型,须要人工干预才能识别特定验证的须要,并确保正确的配置和测试。

图片描述

2.API缺少可见性

就目前来看,API数量的激增只会增长其漏洞。API的部署速度比以往任什么时候候都要快,并且不少不一样的团队在某些状况下,要求创新、减小摩擦和创造新收入流的持续压力会致使API不可用的意外影响。

所以,许多利益相关者报告其组织部署的全部API缺少可见性,这并不奇怪。事实上,许多API相关的漏洞已经被发现几个月,甚至是几年,这进一步说明了总体API设计缺少可见性。

此外,一些API并非公开的,可能只被视为整体项目的实施细节。这使他们会被从安全性的角度隐藏起来,但反过来又致使缺少特定的安全考虑因素。在其余状况下,从组织的不一样部分出现的API可会由于异构平台致使不一致的安全策略。

不管如何,这些API可能与公共API同样容易受到攻击,由于它们一样容易被黑客反向设计。为弥补这些差距,咱们须要清楚地了解须要保护的内容,对API流量的深刻洞察为改善网络安全提供了起点。

图片描述

3.超越Token验证的思考

验证Token并验证请求用户的身份一般不足以支持API基础结构。在API层应用粒度访问控制的能力不只符合逻辑,并且随着API成为访问开发人员的数据的最经常使用渠道,它将成为常态。

此外,定义应容许我的请求哪些数据的规则不只由API提供商定义,还由用户定义。这些决策容许用户在涉及他们拥有的数据时限制应用程序,所以用户API的管理策略与核心API安全性概念紧密相关。

API基础安全的核心是审查和治理流程的定义,更新的API必须通过审核,首先要肯定问题的答案,包括:

  • 访问API须要哪些权限?
  • 谁是预期的请求者?
  • 该服务将利用哪些数据库和数据进行读写?
  • 该API与之交互的其余服务是什么?
  • 输入和输出参数是什么样的,它们应该如何被限制?

这些问题的答案会告诉咱们预备发布的新API应该采起哪些安全策略。

4.扩展旧的基础API安全性

即便有正确的基础,安全性也只能保持与其配置的程度至关而已。当配置受到人为错误的影响时,API漏洞使其通过测试并投入生产的风险随着API层复杂性的增长而增长。即便你已采起一切措施来防止它,仍然可能面临在API自己上暴露漏洞的风险。

例如,黑客常常经过网络钓鱼攻击窃取tokens,这些攻击容许他们构成合法的应用程序。此外,表明用户调用API的客户端应用程序也存在缺陷,而且在保密方面很是糟糕。这能够像经过查看应用程序的JavaScript代码或经过HTTPS代理查看API流量而进行反向破解API密钥同样简单。

例如,北卡罗来纳州立大学的一项研究代表,GitHub是一个用于调用API的应用程序机密宝库,超过100,000个存储库泄漏了API token和加密密钥。GitHub经过实施新的安全功能从提交到其平台的代码中扫描token来实现这一发现。

图片描述

攻击者还使用远程访问特洛伊木马来窃​​取凭据,如Mimikatz。而后,他们使用窃取的凭据来冒充用户并获取token。另外一个常见漏洞是受权服务器上的凭据填充,利用从先前漏洞中挖掘的凭证集合。

在每种状况下,攻击者都会利用用户调用客户端应用程序或受权服务器上的漏洞获取token,而不是API自己。这提出了许多问题,由于这些token彷佛是合法的,黑客看起来像一个有效的用户。这为用户数据“经过API泄漏”设置了台阶,即便有适当的访问控制策略和运行时实施,这些攻击除了那些涉及API自己漏洞的攻击,也不会被传统的API安全工具检测到,并且一般持续数月甚至数年。

安全团队能够投入大量精力教育用户和API开发人员关于客户端应用程序安全性和身份基础架构,但他们仍然可能面临生产API漏洞和凭据泄露的风险。API提供商必须在其安全措施中考虑这一点,不管API是内部仍是外部。但其实能够经过应用人工智能(AI)来加速攻击检测和自动阻止攻击。

将AI应用于安全性

安全团队能够根据用户一般展现的API行为来培训机器学习引擎。经过使用AI,团队能够识别好的和坏的流量,并在没有人工干预的状况下识别未遂的攻击和持续的攻击。

1.用AI检测非典型行为

每一个API调用时,访问token或cookie的数据以及某些操做的时间和顺序均可以提供给AI模型。在运行时,此机器学习引擎利用行为模型来识别潜在威胁的迹象,例如特定token或cookie是否在合法应用程序以外使用,数据是否被泄露或更改等。

利用基于AI的异常使用检测可显着加速威胁可见性,将攻击发现从数月转换为数分钟或数秒。检测到可疑API活动后,用于获取API访问权限的访问token或Cookie能够列入黑名单或撤销,当即中止在全部API端点上使用该token从任何一方进行访问。若是这些攻击背后存在相同的用户身份,则必须将用户身份自己列入黑名单并相应地进行标记。在没有人为干预的状况下实现这种类型的监视,攻击检测和阻止。

图片描述

2.使用API​​诱饵

API陷阱的使用也能够加速API黑客攻击的检测。这涉及添加伪造的API资源,这些资源会向请求者返回看似有效的响应。陷阱利用黑客倾向于以合法应用程序不具有的方式进行搜索,有效地转变为桌面以利用围绕典型黑客行为的知识。

当黑客陷入这些陷阱时,他们会当即获得承认。同时,他们的相关IP地址和访问token(若是他们当时拥有它们)会自动被视为已泄露并列入黑名单。陷阱侦听器可以识别出这些请求不可能从真正的应用程序传入,由于这些API资源不合法存在。这些安全措施不须要自定义规则或扩展配置。

3.阻止和修复

固然,检测只是解决方案的一部分,系统如何反馈一样重要。一旦发现客户私人信息(例如token)已被泄露,该信息必须当即被撤销或列入黑名单。此外,必须记录这些事件以供后续审核,而且必须通知安全信息和事件管理(SIEM)系统以应对接下来相似的状况。

应记录有关在检测和阻止受损凭据以前调用的方法和资源的详细信息,以报告形式提供的信息容许API提供者、DevOps团队或安全团队采起必要措施来修复或逆转攻击形成的损害。

图片描述

保护API的技术和工具

使用合适的技术和工具来保障API的安全性,是一种最易实现的举措。如今,有许多技术和工具能够最大程度上的保护API免受网络攻击和黑客入侵,最简单的就是用API gateway(API网关),经过流量过滤和节点监控等方式去防止未知的攻击和入侵。诸如国外的Amazon API Gateway(亚马逊旗下)、国内的 GOKU API GatewayEOLINKER 旗下)等都能轻松的实现网关系统的要求。在 API gateway 这个领域,也有一些开源框架在活跃,如 Netflix Zuul,基于 Nginx 的 Kong 等,目前关注较少,就不展开介绍了。在选择网关系统时,安全性、便捷性和本土化性须要特别关注的几个关键因素,这些网关都对API的安全性有必定的保障,使得私密的信息能免遭泄露。

结论

API安全性是数字化转型计划的重要组成部分,能够提升跨渠道的网络安全。在危机四伏的时代,采用以身份为中心的API安全基础设施是现代数字化转型战略的核心。为了确保API的安全性,还须要深刻了解API活动和AI驱动的漏洞检测。二者都须要在基本的API访问控制上进行分层,以捕获源自API漏洞的攻击,并在传统API安全系统的配置中修复人为错误的风险。

参考资料:Jinesh Thakkar,Secure APIs Using Artificial Intelligence

原文连接:https://dzone.com/articles/se...

图片来源:互联网

相关文章
相关标签/搜索