跳转到: 导航, 搜索

OSSN/OSSN-0034


重启 memcached 会丢失已撤销的令牌列表

总结

当使用 Memcached 作为 Keystone 令牌后端部署云环境时,存在安全隐患:重启 Memcached 会丢失已撤销的令牌列表,可能导致在令牌已被撤销后,恶意令牌/用户仍然可以访问系统。

受影响的服务 / 软件

Keystone, Memcached, Havana, Icehouse, Juno

讨论

如果 Memcached 服务在撤销列表持久化到磁盘之前停止或崩溃,存储在 Memcached 中的已撤销令牌列表可能会丢失。

未来可能有一些方法来缓解此问题,例如在多台机器上运行 Memcached,以确保在 Keystone 服务器发生故障时的冗余。在集群环境中,只有当所有 Memcached 机器都关闭时才会出现问题。这需要 Memcached 后端之间的数据复制,而 Keystone 目前尚不支持此功能。

Memcachedb 也是一种潜在的缓解此问题的方法


注意: 某些部署可能会有意响应 https://bugs.launchpad.net/ossn/+bug/1179955 清空 Memcached - 在考虑如何解决此问题时,请谨慎操作。

建议的操作

将安全信息存储在易失性内存中存在根本性问题。如果您的部署具有严格的安全要求或依赖于最新的已撤销令牌信息,我们建议您考虑使用磁盘数据库,例如 MySQL / PostgreSQL,或者研究 Memcachedb。

联系方式 / 参考文献