OpenStack安全实用指南

以下是过去几年在OpenStack中发现的几个严重漏洞,它们成了通用漏洞枚举(CVE)。

什么是OpenStack?

OpenStack是一个开源软件平台,最初于2010年开发,允许组织构建和维护公共和私有云。OpenStack使在基础设施即服务(Infrastructure-as-a-Service,IaaS)模型中创建具有计算、存储和网络组件的云基础设施成为可能。它是为灵活性、大规模可扩展性和企业级安全而设计的。

OpenStack允许云运营商部署处理各种云管理任务的虚拟机(VM)。它提供了一个基础设施,允许云用户快速、轻松地配置和取消配置云组件和资源,并能够快速地上下扩展资源以满足其当前需求。OpenStack的所有方面都可以通过API以编程方式访问,以促进云自动化。

最近的OpenStack安全漏洞

OpenStack是用于大规模部署企业资源的关键任务系统。因此,它是攻击者的主要目标。由于OpenStack项目是开源的,攻击者可以相对容易地研究其代码并发现漏洞。以下是过去几年在OpenStack中发现的几个严重漏洞,它们成了通用漏洞枚举(CVE)。

请记住,存在更多漏洞,其中一些可能尚未发现。最大的危险是OpenStack部署中可能存在一个新的“零日”漏洞,你或OpenStack贡献者都不知道。这需要一种主动的方法来保护OpenStack工具集中的应用程序。

CVE-220-26943

这是OpenStack blazar-dashboard组件的一个问题。由于使用了Python eval()函数,被授予访问Horizon的Blazar仪表板的用户可以在Horizons主机上触发代码执行。这可能导致对Horizon主机的未经授权访问危及Horizons服务。该漏洞会影响所有设置。

受影响的版本:1.3.1、2.0.0、3.0.0及更早版本

受影响的设置:OpenStack用户使用blazar-dashboard插件运行Horizon仪表板。

CVE-2021-20267

openstack-neutron的默认Open vSwitch防火墙规则中发现了一个缺陷。任何控制连接到虚拟交换机的服务器实例的人都可以发送精心编制的数据包,并欺骗网络上另一个系统的IPv6地址,从而导致拒绝服务(DoS)。另一种可能性是,发往其他目的地的流量可能被攻击者拦截。

受影响的版本:Openstack-neutron版本15.3.3、16.3.1、17.1.1及更早版本。

受影响的设置:使用Open vSwitch驱动程序的部署。

CVE-2021-38598

在基于Netfilter的平台上使用带有ebtables-nft的linuxbridge驱动程序时,可能会发生硬件地址欺骗。任何控制连接到虚拟交换机的服务器实例的人都可以发送精心编制的数据包,并欺骗网络上另一个系统的硬件地址。这可能会导致拒绝服务(DoS),或者在某些情况下,截获用于其他目的地的流量。

受影响的版本:16.4.1之前,17.1.3之前的17.x,18.1.1之前的18.x的Openstack-neutron版本。

受影响的设置:基于Netfilter的平台上带有ebtables-nft的Linuxbridge驱动程序。

CVE-2021-40797

在openStack-neutron的路由中间件中发现了一个问题。经过身份验证的用户可以发出包含不存在控制器的API请求,这可能导致API工作人员消耗过多内存,导致API性能不佳或拒绝服务。

受影响的版本:16.4.1之前的,17.2.1之前的17.x,18.1.1之前的18.x的Openstack-neutron版本。

受影响的设置:OpenStack-neutron。

CVE-22-23452

在openstack-barbican中发现身份验证缺陷。此漏洞允许具有管理员角色的任何人向另一个项目容器添加秘密。此漏洞可使网络上的攻击者使用受保护的资源并导致拒绝服务。

受影响的版本:Openstack barbican 14.0.0及以下版本。

受影响的设置:使用openstack-barbican机密管理REST API。

OpenStack安全:4项关键最佳实践

1.OpenStack身份验证

身份验证在生产OpenStack部署中至关重要。OpenStack身份服务Keystone支持多种身份验证方法,包括用户名和密码、LDAP和外部身份验证方法。身份验证成功后,身份服务为用户提供后续服务请求的身份验证令牌。

传输层安全性(TLS)使用X.509证书启用服务帐户和人工用户之间的身份验证。TLS的默认模式仅用于服务器端身份验证,但证书也可以用于客户端身份验证。

对访问云网络的特权用户帐户使用多因素身份验证。身份服务还通过Apache web服务器支持外部身份验证服务。部署在OpenStack中的服务器还可以使用证书来强制客户端身份验证。

通过使用强身份验证,你可以保护云用户免受暴力攻击、社会工程、网络钓鱼攻击、账户接管和许多其他网络威胁。

2.OpenStack备份和恢复

在云部署中,机器最终会过时,软件需要升级,并且会发现漏洞。必须有一种方便的方法来应用软件更改或更改配置。

备份和恢复是OpenStack安全策略的重要组成部分。为确保备份安全,请确保只有经过身份验证的用户和授权的备份客户端才能访问备份服务器,并始终使用数据加密选项存储和传输备份。

使用专用、加固的备份服务器。备份服务器日志应每天进行监控,并且只允许少数人访问。

最后,定期测试数据恢复。如果出现安全隐患,恢复操作的一个好方法是终止正在运行的实例,并从存储在受保护备份存储库中的镜像中恢复它们。

3.保护OpenStack API端点

任何使用OpenStack云的流程都是从查询API端点开始的,这使得API安全成为OpenStack部署的关键挑战。尽管公共和私有端点面临不同的挑战,但它们都是高价值资产,如果受到损害,可能会带来重大风险。

你可以强制特定服务使用特定的API端点。任何与其他服务的API通信的OpenStack服务都必须明确配置为访问适当的内部API端点,并且不应该访问其他端点。

应隔离API端点进程。隔离公共域中的任何API端点尤其重要。如果可能,API端点应部署在不同的主机上,以实现更好的隔离。

4.取证和事件响应

日志生成和收集是安全监控OpenStack基础设施的重要组件。日志提供了对管理员、租户和来宾的日常操作以及计算、网络、存储和其他云组件活动的可见性。

日志对于主动预防性安全和持续的合规工作非常重要,并且为事件调查和响应提供了宝贵的信息来源。例如,分析身份服务或外部身份验证系统的访问日志可以提醒你登录失败、登录频率、源IP以及发生异常访问请求的上下文。

识别这些类型的异常事件使识别和应对安全事件成为可能。然后,你可以采取措施来减少潜在的恶意活动,例如阻止IP地址、推荐更强的用户密码或禁用休眠用户账户。

以下是实施日志聚合和分析时的一些重要注意事项:

——有一种方法可以检测到没有生成日志,这表明服务失败或入侵者通过暂时关闭日志记录或更改日志级别来隐藏跟踪。

——获得应用程序事件的可见性,特别是应监视和调查计划外的启动和停止事件,以了解可能的安全影响。

——监视操作系统事件。应监视任何OpenStack服务系统的事件,如用户登录和重新启动。这些可以深入了解安全问题以及错误配置或不正确的系统使用。

——如果日志指示管理组件上有高负载,请检测高负载,部署其他服务器进行负载平衡,以确保高可用性。

——其他可操作事件。监视其他重要事件,如网桥故障、计算节点iptables刷新以及可能影响最终用户体验的无法访问的云实例。

结论

本文介绍了近年来在OpenStack项目中发现的一些主要漏洞,并提供了一些最佳实践,可以帮助你采取主动预防OpenStack安全的方法并防止下一次攻击:

——OpenStack身份验证使用TLS和多因素身份验证为OpenStack服务实现强身份验证。

——OpenStack备份和恢复为你的关键OpenStack组件使用专用、加固的备份服务器。

——安全的OpenStack API端点尽可能隔离API端点,并确保OpenStack服务只能访问明确允许其使用的端点。

——取证和事件响应确保你可以收集、可视化OpenStack系统中的日志并对其进行操作,以识别安全事件。

原文链接:

https://superuser.openstack.org/articles/openstack-security-a-practical-guide/

855982e3e332258f35d35cad4b55c192.jpeg

323c7f3d263d17788c7d17e67b8f3cd7.jpeg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值