对于部署到云中的API驱动应用程序,企业应了解这些安全注意事项。它们根据用户需求进行扩展的能力彻底改变了应用程序的编写和部署方式。通常,这些分布式应用程序部署在Kubernetes平台上,以便于微服务容器的管理、编排和部署。DevOps团队投入大量资源来确保他们在Kubernetes基础设施平台上运行的应用程序安全可靠,不会被利用。这可能包括加固操作系统,通过跨集群的微分段防止横向移动,以及通过严格的RBAC控制来限制访问以防止未经授权的访问。然而,这只是成功的一半。从Kubernetes平台向上移动,部署的API驱动的应用程序有自己的安全问题类别,需要不同的方法来实现适当级别的安全保护。API驱动的应用程序的兴起催生了一类新的API漏洞,现有的应用程序安全产品无法保护这些漏洞。隐藏在底层API中的漏洞可以暴露等待被利用的弱点,从而暴露关键业务数据。随着企业转向API经济,网络犯罪分子已经注意到并正在开发新的攻击媒介以加以利用。需要一种新的方法来摆脱专注于保护单一应用程序的应用程序安全,并专注于API驱动的应用程序如何运行以提供适当级别的保护。以下是企业在评估API安全解决方案时应考虑的一些关键标准。1.API可见性和监控:你无法保护你看不到的东西他们。他们和他们做什么。在当今复杂的威胁环境中,这给企业带来了重大的安全风险。为了防范安全风险,企业必须了解其API程序的所有方面及其相关的安全挑战。这可以更好地帮助领导者通过适当的缓解策略改善其组织的安全状况。大多数企业公开许多内置API并将它们开源给客户和合作伙伴。它们由不同的团队发布,使用不同的应用程序堆栈和不同的程序。因此,很难跟踪和了解潜在风险在哪里。以下是企业应考虑的一些关键API可见性挑战:未知API:隐藏、弃用或隐藏的API可能不在安全团队的可见范围内,通常使他们得不到保护。这些API可以传输敏感数据并危及组织的合规地位。API参数:API漏洞(例如批量分配)允许攻击者将用户配置文件更改为“管理员”,从而导致权限提升,从而可能导致欺诈、数据丢失。敏感数据暴露:在响应代码或错误消息中暴露机密或敏感数据可用于窃取数据或作为大规模攻击的侦察形式。业务逻辑缺陷:应用程序业务逻辑缺陷可以使不良行为者通过帐户接管、抓取、创建虚假帐户和其他形式的API滥用来实施欺诈。在寻求解决这些常见的API安全挑战时,提出问题以评估和降低风险级别会有所帮助。有许多问题需要考虑:我们拥有的API的目的是什么?谁是API所有者?哪些API需要符合法律或法规?我们如何监控API中的漏洞?导致我们不合规?我们如何测试和衡量API监控的有效性?2.API安全:不同类型的应用程序安全大多数有Web应用程序的企业都会有一个WebApplicationFirewall(WAF)来进行安全保护。然而,随着企业不断扩展其API驱动的应用程序,他们发现传统的WAF不能很好地适应单体应用程序的需求,并且无法满足现代API驱动的应用程序的需求。由于API驱动的应用程序的编写非常独特,这使它们成为一类独立的可利用漏洞,与OWASP排名前10位的网络同类漏洞截然不同。有效保护整体Web应用程序漏洞免受OWASP十大Web漏洞影响的安全方法在API世界中并没有很好地转化。使用传统的网络安全方法很难防御BOLA(损坏的对象级授权)和批量分配等关键API漏洞。越来越多的客户意识到,部署WAF来保护他们的API就像在枪战中拿着一把刀,这是一种劣质和错误的武器。一种新的API安全产品已经出现,它取代了Web应用程序防火墙,并且更符合保护API驱动的应用程序免受利用的特定要求。这些API安全解决方案是围绕应用程序的日常行为方式构建的。在机器学习(ML)的支持下,这些安全解决方案专注于学习应用程序行为和发现异常活动。构建应用程序机器学习模型可以为发现嵌入在数百个微服务中的固有业务逻辑缺陷和API漏洞奠定基础。用户驱动的流量为机器学习模型的开发提供动力,并捕获应用程序的微服务如何协同工作以交付应用程序业务逻辑。如果企业正在寻找API安全解决方案,应考虑以下三个标准:发现:识别企业环境中的所有API。理想情况下,API安全工具应该知道定义允许的API请求的API参数。例如,API应该只允许用户使用255个字符的字符串进行响应。通常,未经验证的API响应可用于利用应用程序漏洞。学习:API安全工具应该能够从用户驱动的流量中学习API行为。这允许API安全解决方案的机器模型理解定义正常应用程序行为的所有细微差别。通过警报向安全运营团队显示用户行为的轻微和突然偏差。适应:大多数在敏捷环境中开发的现代应用程序都会发生快速变化。API安全解决方案应该能够自动调整其安全模型以持续适应所有新变化,以确保应用程序安全始终与DevOps同步。3.威胁分析:在网络攻击发生时进行检测当网络犯罪分子从应用程序中窃取敏感数据时,他们会采取必要的预防措施来逃避检测。为了对抗它们,需要威胁分析来检测访问您的应用程序的用户之间的恶意活动。从应用程序中获取的数据的质量和广度将决定企业的安全保护级别,并影响企业检测到即将发生的网络攻击的速度。随着应用程序变得更加复杂和分布式,更多地了解应用程序的内部工作原理、它的工作方式、业务逻辑以及与其他第三方技术合作伙伴的交互变得更加重要。在应用程序内的所有点收集数据交互可确保它具有所有用户与应用程序交互的全面视图。数据集越丰富,就越容易将恶意用户交易与合法用户交易区分开来,并使您的安全团队能够尽快发现数据泄露。API安全平台应使安全团队能够:威胁搜寻:安全分析师可以在数据湖中搜索正在进行的活动。跟踪攻击者:当攻击者深入您的应用程序时,您可以跟踪杀伤链活动,例如侦察或扫描活动。事后分析:安全分析师可以获得事后取证,以了解网络攻击如何利用应用程序的业务逻辑或漏洞。结论快速变化的API驱动的应用程序有助于加快上市时间,但也会解锁可被网络犯罪分子快速利用的API漏洞。能够很好地保护单体Web应用程序的应用程序安全产品不能很好地扩展以保护API驱动的应用程序。由于更复杂和分布式应用程序架构的快速变化,对API安全性的要求与市场上现有的应用程序安全产品有着根本的不同。在评估API安全解决方案时,重要的是要关注解决方案如何提供可见性、它对应用程序的理解程度以及威胁分析的质量和深度。获得专门针对API应用程序的适当应用程序安全解决方案将帮助企业更好地抵御不断增加的API驱动的网络攻击,这些攻击旨在利用企业最有价值的资产——数据。
