OSSN/OSSN-0033
< OSSN
一些启用 SSL 的连接未能执行基本的证书检查
总结
在许多地方,OpenStack 组件使用 Python 2.x HTTPSConnection 在端点之间建立 SSL 连接。这并未提供使用 SSL 时应有的许多保证,并使连接容易受到潜在的中间人攻击。
受影响的服务 / 软件
所有 OpenStack 服务,Havana, Icehouse, Juno
讨论
安全的 SSL 会话依赖于 X.509 证书的验证。基本的检查包括
- 证书颁发机构信任验证
- 证书吊销状态
- 证书过期时间
- 证书主题名称匹配
HTTPSConnection 类在大量位置使用,并且未能检查证书是否由有效的机构签名。如果没有此检查,后续检查(其中一些在上文中突出显示)在很大程度上是无效的。
结果是,攻击者如果能够访问依赖于 HTTPSConnection 的两个端点之间的网络流量,可以轻松创建一个 HTTPSConnection 将其视为有效的证书——允许攻击者拦截、读取和修改本应由 SSL 加密的数据流量。
建议的操作
一些项目已经更新了他们的代码以提高安全性,而另一些项目则没有。OSSG 建议云部署者检查此说明的“参考”部分中提到的错误的修复状态,以查看他们需要的项目是否已更新。
联系方式 / 参考文献
- 作者:Robert Clark, HP
- 此 OSSN: https://wiki.openstack.org/wiki/OSSN/OSSN-0033
- Launchpad Bugs
- OpenStack Security ML:openstack-security@lists.openstack.org
- OpenStack Security Group:https://launchpad.net/~openstack-ossg