当前位置: 首页 > 科技观察

解码API安全-挑战、威胁和最佳实践

时间:2023-03-23 10:33:18 科技观察

1.PreambleAPI为当今大多数数字体验提供支持,API安全仍然是大多数CXO最关心的问题。虽然数字化转型继续推动API跨行业采用,但恶意威胁行为者比以往任何时候都更关注API。API安全的当前状态与组织的需求之间存在很大差距。组织经常被难以理解的攻击面所困,并且缺乏构建防御的正确策略。本文的目的是讨论当今API生态系统面临的不同挑战和威胁。并提供保护API的最佳实践。2.API安全面临的挑战API是数字体验的核心。移动应用、WEB网站和应用的核心功能、微服务架构、监管机构的要求等都离不开API的支持。据Akamai统计,API请求已占到所有应用请求的83%,预计2024年API请求命中数将达到42万亿次。同时,针对API的攻击成为应用程序的首选恶意攻击者。与传统的WEB形式相比,API具有更高的性能和更低的攻击成本。Gartner预测,到2022年,API滥用将成为最常见的攻击方式。API安全问题之所以如此严重,主要是因为API安全面临以下挑战:(1)应用和逻辑上云暴露更多攻击面随着云计算技术的广泛应用,越来越多的SaaS被迁移上云就是将API暴露在云端,同时为更多的用户提供服务。与传统数据中心的单点调用相比,东西向和南北向都可能成为API的攻击面。(2)创新强调速度和灵活性,忽视构建API安全。敏捷开发模式是当今主流的开发模式。敏捷开发强调个体和交互、工作软件、客户合作以及对变化的响应。虽然它提高了创新的速度和灵活性,但对于如何构建API安全性却缺乏合适的方法,这使得在软件构建过程中很难将API安全性考虑在内。(3)API接口对外不可见,存在各种潜在的攻击风险。由于API是程序员写的,除了写代码的程序员,很少有人知道这些API的存在。缺乏维护的API通常很容易被忽视。然而,恶意攻击者可以利用网络流量、反向代码、安全漏洞等多种手段,寻找不设防的API并进行攻击。(4)组织往往低估API风险,导致安全措施疏漏。人们通常假设程序会按照想象的流程运行,这导致严重低估了API攻击的可能性和影响,因此没有采取足够的保护措施。此外,第三方合作伙伴系统的API很容易被组织忽视。3.API面临的安全威胁据权威报告,针对API的攻击是针对HTML应用的三倍。攻击手段依然普遍,Json、XML等基于解析器的攻击和第三方API集成带来的风险越来越大。综合分析,API攻击类型包括:(1)凭据攻击据统计,2018-2020年期间,将发生1000亿次凭据盗窃攻击,并且攻击的复杂度和数量每年都在持续增加。凭证盗窃攻击的成本将高达2280万美元,平均每30秒就会有一名凭证盗窃受害者。攻击者通过购买、钓鱼、漏洞利用等方式获取API登录凭证,然后利用僵尸网络访问客户站点API,窃取客户数据或个人信息。(2)可用性攻击当API端点暴露于外界时,攻击者可以使用DDOS或攻击API解析器,导致API无法提供相应的服务。对于DDOS,除了部署常规的Anti-DDOS设备外,还需要注意伙伴API的DDOS攻击容忍度。如果仅依靠合作伙伴的安全措施,原始API将得不到保护。针对API解析器的攻击更具针对性,可能导致哈希值冲突或反序列化异常,从而拒绝API请求。(3)漏洞利用攻击漏洞利用是所有应用程序都面临的安全威胁,API也不例外。通过在API函数参数、Json、XML等payload中嵌入恶意代码,实现目录转换、命令注入、SQL注入、XSS、绕过身份认证授权等常见API攻击手段,达到窃取敏感信息的目的数据或破坏系统的目的。此外,API攻击已被工具化。攻击者可以使用工具收集用于攻击的域名和API列表,然后使用其他工具查找或删除敏感数据。4、API安全防御的最佳实践API安全防御是一项系统工程。与侧重于访问控制、签名、速率调整、加密等特定技术手段的传统防御相比,新的安全实践更侧重于API治理,新的解决方案和系统化的措施来持续进行API安全审查。(1)API治理首先对所有API进行全面的文档管理。为了避免API频繁变更的困难,建议使用开源的自动化管理工具,在API变更时添加描述性说明,自动生成最新的API文档,同时自动检测流量,发现并分析未知或更改API以快速响应基于API的攻击。其次,梳理API之间的调用链,梳理API之间的调用关系,发现僵尸API,防止漏掉安全保护措施。这一步也可以通过工具来完成。最后,对API进行契约测试和白盒测试,降低出现漏洞的可能性。(2)新的解决方案针对API面临的安全威胁,可以采用新的解决方案来提供安全保护。包括使用先进的BOT检测,实现登录前验证,拦截API未授权访问;部署API网关,用于API请求的认证、授权和访问控制;使用正负安全模式验证API参数的合法性;发现API流量行为,提供与WAF/DDoS等快速集成的工具。(3)持续API安全检查从发现、防护、分析三个维度,制定API安全检查清单,持续对API进行安全检查,发现隐患,制定策略,落实防护。在发现维度,检查API开发、测试和部署的安全措施是否完备。在防护维度,检查用户身份、DDOS攻击防护措施、数据校验黑白名单是否完备。在分析维度,检查API风险评估和API审计日志是否足够。五、展望随着信息技术的飞速发展,API安全保护也在不断演进。API安全防护最初解决的是非法输入、DOS攻击、认证绕过等攻击。今天,保护的重点是缓冲区溢出和XSS。、SQL注入等漏洞防护,安全防护措施也从单一的漏洞防护升级为网关和应用系统防护。未来,多向量、自动化工具、武器化的人工智能攻击将成为API攻击的主流。相应地,安全防护措施也需要加强系统化、自动化、深度学习、智能化能力,以系统应对系统化、智能化防护的智能化演进。【本文为专栏作者“安安牛”原创文章,转载请通过安安牛(微信公众号id:gooann-sectv)获得授权】点此查看作者更多好文