云安全基础知识:保护你的Web应用程序
![](http://www.yyueer.com/sites/default/files/images/articles/How%20to%20secure%20your%20web%20apps%20against%20these%208%20cloud%20security%20risks.jpeg)
而云计算提供商,如Amazon Web Services (AWS),谷歌的云平台(GCP)和微软Azure提供健壮和可伸缩的服务,确保您的云环境也带来了独特的挑战。可以减少风险,解决这些八个常见的云安全漏洞和错误配置。
确保基于云的web应用程序需要一个理解的方式攻击者可以利用这些漏洞或发生在这些环境中。在这个博客中,我们探索这八种常见的云安全问题:
- 共同责任模型
- 常见的web应用程序漏洞
- 数据暴露和云资源错误配置
- 域名服务器(DNS)记录收购
- 不安全的api
- 软件供应链攻击通过依赖关系混乱
- 软件即服务(SaaS)应用程序的权限管理
- 资源枯竭和经济损失
此外,我们提供有帮助的最佳实践,以确保您的web应用程序,最后,对于站得住脚的客户,我们提供的概述如何站得住脚的。io Web应用程序扫描可以帮助。
云共享责任模型
云提供商为web应用程序提供多个托管服务和建立了他们的共同责任模型描述客户和云提供商共享安全责任。尽管这个模型可以略云提供商之间的不同,他们几乎所有共享相同的原则与所有的客户都负责两个关键方面:
- Web应用程序代码的安全:编写安全代码是客户的责任。云服务提供商不补丁代码漏洞存在。在某些情况下,一个云提供商可能提供服务来帮助减轻问题,如web应用防火墙(WAF)。甚至在一些软件即服务(SaaS)应用程序开发和维护由第三方供应商,责任可能降至客户,供应商,触发手动更新。
- 身份和访问管理:客户负责定义身份上下文的web应用程序,必须确定权限模型建立和应用给用户。
来源:成立,2022年11月
这些被忽视时,攻击者可以渗透客户的环境和造成严重破坏。在之前的博文,站得住脚的首席技术官格伦Pendley详细的三个关键外卖所有的信息安全领导人应该考虑的共同责任模型,以确保组织履行其安全义务作为模型的一部分。
常见的web应用程序漏洞
Web应用程序部署到云基础设施可以在应用程序部署本地遭受同样的漏洞。即使云提供商提供额外的安全服务,通常是可选的,并且需要一个高级配置,安全漏洞出现在一个给定的应用程序不会自动修补。
常见的web应用程序像SQL注入漏洞,代码注入,服务器端请求伪造(SSRF)或XML注入外部实体(XXE)仍然可以存在于应用程序和被攻击者利用。
然而,这些漏洞的影响可以在云基础设施更严重的攻击者可以达到其他云资源。这可能包括获得更多敏感信息或执行任意修改,根据他们的权限。
数据暴露和云资源错误配置
根据2022年的IBM数据泄露的成本报告,45%的数据破坏发生在云环境中学习。通过设计,云提供商提供服务,在大多数情况下,默认暴露在互联网上。由于开放的特性,用户需要配置额外的安全控制来限制对敏感数据的访问。
这取决于web应用程序使用云资源,接触可以来自不同数据源的数据:
- 开发基于cd和CI /文件:CI / CD DevOps工具自动化应用程序构建和部署。的常见设置CI / CD环境包括一个版本控制系统Git追踪变化,确保版本和发布管理。然而,根据工具和如何使用它,敏感信息如API密钥、用户凭证或私钥可以无意中硬编码到文件,然后与应用程序一起发布。利用公开的数据,攻击者可以访问内部系统和漏出私有数据。有不同的方法可能发生:
- 利用公共版本控制系统和存储库:例如,如果一个内部应用程序代码存储库公开GitHub,攻击者可以检索应用程序的源代码和敏感数据,用它来获得进一步影响云的访问客户。
- 故障排除敏感文件:如果部署链不正确排除包含机密信息的文件推到生产环境的时候,攻击者列举托管应用程序可以发现这些文件上的内容和滥用的敏感信息。
- 云资源错误配置:Web应用程序通常使用其他云服务来获得可伸缩性的好处,避免管理专用服务器的一些功能的应用程序。不幸的是,这些资源的错误配置可以引入风险给应用程序。这里有两个常见的错误配置的例子:
- 存储桶的权限:许多云提供商提供可定制的权限控制,使存储桶中的内容公开甚至未经身份验证的用户。如果权限配置不当,攻击者可以获取敏感数据,甚至推内容,允许攻击者恶意数据。微软BlueBleed最近的披露演示了这种错误配置的影响。此外,攻击者可能会破坏一个网站或注入恶意的资源,比如JavaScript内容,在每个用户的浏览器中执行上下文的目标web应用程序。
- 身份管理:有时云提供商提供身份管理等服务微软Azure广告或亚马逊Cognito。这些资源,即使云提供商提供的,需要一个精确的配置,以避免错误配置,攻击者可能被滥用。这篇文章描述了一个真实的场景亚马逊Cognito因为错误配置提供了一个攻击者袭击目标web应用程序没有任何暴露的机会注册功能。攻击者可以创建一个特权帐户在AWS租户托管web应用程序和获得AWS管理控制台。
DNS记录收购
DNS记录收购是当攻击者劫持一个目标域的子域。这发生在两个常见的情况:
- 共同的规范名称(CNAME) DNS别名配置在客户域名DNS区域创建一个内部域名针对第三方服务还没有配置为使用它。在这种情况下,攻击者会声称这子域第三方服务和主机自己的内容。
- 一个“A”DNS记录配置为目标的特定资源地址动态分配的云提供商,不再分配到这个资源。攻击者将执行多个声称,直到他终于结束了与目标IP地址分配给自己的资源。
根据服务和应用程序,DNS收购攻击可以从攻击者执行一个简单的内容注入获取敏感数据,甚至建立一个实际的网络钓鱼的应用程序。
下面的图表说明了这类漏洞,也是中描述微软文档随着建议缓解:
来源:成立,2022年11月
不安全的api
内部或第三方api通常用于处理web应用程序为基于云的应用程序逻辑,特别是当他们是建立在一个microservices架构。然而,这些api可能不符合安全的设计原则,从而直接影响应用程序的安全漏洞。
的打开Web应用程序安全性项目(OWASP)建立一个前十的最常见的漏洞列表api。这些包括:
- 不安全的直接对象引用(IDOR):利用一个IDOR漏洞,攻击者可以执行任意请求他们不应该能够访问对象。例如,如果一个web应用程序使用一个用户管理API,攻击者可能会更新另一个用户的信息,获得特权在目标应用程序或访问和泄漏敏感信息。因为IDOR漏洞可能出现在许多api,多租户的web应用程序更容易受到不利影响。
- API认证:通常第一个级别的安全性,API认证确保只有授权用户可以访问的API或其端点。大多数API依赖API密钥或令牌(JSON web标记是最常见的标记)执行身份验证。然而,如果API不执行为JSON web上强大的安全密码令牌签名或不正确验证令牌签名,攻击者可以模拟web应用程序用户和执行身份验证请求后端API。
软件供应链攻击通过依赖关系混乱
2020年12月,SolarWinds供应链攻击演示的重要性,确保你的软件开发环境和软件交付机制。SolarWinds攻击揭示出软件破坏其来源可以有灾难性的后果,尤其是大客户基础。
2021年2月,安全研究员Alex Birsan描述向量称为一个新的web应用程序攻击依赖关系混乱。Birsan包管理器依赖关系分析,说明可能对软件执行代码执行构建连锁声称包依赖性应用程序使用的但实际上不是包声称在公共注册中心检索来自的地方。
此外,类似的方法,WordPress插件混乱,被其他安全测试人员。这个测试显示,声称一个WordPress插件还可以使攻击者钩到WordPress脆弱的实例。
基于saas应用程序权限管理
基于saas应用程序云客户更容易管理,特别是在基础设施和应用程序打补丁。然而,许多SaaS管理员经常忽视了需要正确配置,确保必要的权限应用,特别是对于数据访问和身份管理。
未能正确执行权限有现实世界的影响,以下情况说明:
- Salesforce社区配置实例给客人用户更高层次的权限对象不应该访问,导致敏感信息被泄露给未经授权的用户。
- 一个很受欢迎的Atlassian Jira错误配置显示权限问题过滤器如何允许任何用户访问敏感信息,并使用它进行进一步的攻击,如现实的钓鱼活动。
- 漏水的帮助台表明,在默认情况下,附件作为公共Zendesk设置机票。这个默认权限设置意味着人可以访问的链接附件没有认证。
资源枯竭和经济损失
云基础设施用于有高度弹性的服务跨多个数据中心的分布式和缩放,甚至跨多个提供者,帮助客户减少拒绝服务(DoS)攻击的风险在他们的服务。
由于付费订阅模式,许多云客户根据他们使用的资源付费,包括CPU使用率,内存,存储和带宽使用情况等。如果攻击者利用这些资源,云客户买单的。
例如,攻击者可以利用存储桶大文件上传和房子,强行增加存储成本。
此外,攻击者可以运行了大量带宽成本利用的云功能,传输数据从给定端点。
尽管这种滥用的个人成本不一定很高,没有适当的监控,持续的攻击可能会导致巨额成本。
缓解外卖
云供应商可以提供各种安全服务以帮助客户保护web应用程序,但最终需要客户自己的云安全。
这里有一些有用的最佳实践,遵循自己的云web应用程序安全性:
- 定义每个演员参与和控制的责任的开发和托管web应用程序。
- 不断评估web应用程序和云资源的漏洞。
- 你所有的库存web应用程序组件和他们所使用的云资源。包依赖性分析必须审查的一部分,以确保所有这些依赖项预计与适当的版本并熟悉和信任的来源。
- 为所有的云资源配置权限和基于saas应用程序遵循最小特权原则,减少的风险暴露敏感数据未经授权的演员。
- 控制软件开发和部署链不敏感信息暴露给未经授权的演员。
- 执行强制评估所有microservice-based架构,以避免后端服务成为其他云客户资产受损或旋转。
- 确保日志web应用程序使用的每个组件执行和警报综述了检测潜在的滥用。
如何站得住脚的。io Web应用程序扫描可以帮助
Tenable.ioWeb App Scanning提供了一个全面的列表插件旨在帮助识别在web应用程序中使用云技术和相关的漏洞:
- 插件特定于云技术是为了检测web应用程序所使用的云服务和确定共同的问题,如数据曝光,CI / CD权限控制和SaaS应用程序配置错误。
- 插件主要专注于api检测到不安全的API使用在web应用程序中对具象状态传输(REST)和GraphQL技术。
插件添加定期支付安全风险相关的web应用程序在云环境中,常见的SaaS应用程序配置错误。
了解更多
相关文章
- 云
- 漏洞扫描