【问题标题】:DDS Security certificate storageDDS 安全证书存储
【发布时间】:2018-11-19 11:04:37
【问题描述】:

我目前正在使用启用了安全插件的 DDS 进行开发。 当应用程序启动时,它会查找 CA 证书、本地证书和私钥的路径,并将它们加载到内存中以供将来使用。

包含公钥的证书不敏感,因为它们通常以明文形式发送并使用 CA 证书进行检查。因此,攻击者无需访问它。对吗?

但是,在 Ubuntu 文件系统上,如何保护私钥?我看到的唯一方法是将密钥设置为只读,仅用于将运行应用程序的特定用户。但是由于权限提升,这似乎不安全。

是否有安全的方法来保护文件系统上的私钥?

关于 permissions_ca 和 Governance/Permissions 文档,如果攻击者更新了这些文档(这将创建自己的 CA 并签署新的 Governance/Permissions 文档),那么应用程序是否可以拥有更多权限?这意味着这些文件应该在文件系统上得到保护?

【问题讨论】:

    标签: data-distribution-service


    【解决方案1】:

    您的大部分问题并非针对 DDS 安全,而是与 DDS 安全所利用的一般 Public Key Infrastructure (PKI) 机制有关。

    包含公钥的证书并不敏感 通常以明文形式发送并使用 CA 证书进行检查。所以一个 攻击者无需访问它。对吗?

    是的,没错。 DDS 安全规范定义的内置插件使用 PKI。 public key certificate 通常不包含任何机密信息。

    但是,在 Ubuntu 文件系统上,如何保护私钥?

    使用“传统”Unix 权限只允许文件的所有者访问它是常见的做法。例如,Ubuntu 上的 SSH 默认以这种方式将私钥存储在 ~/.ssh 中。此外,该规范允许使用密码对私钥进行加密。这也是常见的做法。

    这对于您的场景是否足够好取决于您的系统要求。通过实施自定义安全插件,可以与现有的、更强大的密钥存储解决方案(如 Windows 证书存储或 macOS 钥匙串)集成。规范中定义的可插拔架构旨在实现这一点,但此类解决方案的实际可用性取决于您使用的 DDS 产品。

    关于 permissions_ca 和 Governance/Permissions 文档,如果 这些是由攻击者更新的(这将创建自己的 CA 和 签署新的治理/许可文件),然后,可以申请 可以拥有更多权限吗?

    治理和许可文件都必须由签名机构签署。篡改这些文件会破坏签名验证,因此会被域中的其他参与者检测到。

    安全 DDS 域中的所有参与者都需要信任相同的签名机构才能使该机制发挥作用。攻击者要成功修改治理或权限文档,必须有权访问签名机构的私钥。同样,这是在公钥基础设施中使用的一种常用技术,类似于公钥证书签名。

    尽管有篡改保护,保护这些文件仍然有意义。篡改或删除这些文件的实际结果将是拒绝服务,这也是有害的。

    【讨论】:

    • wrt '关于 permissions_ca 和 G/P 文件',最佳实践答案是将签名机构的密钥存储在 HSM 中。如果您没有为 PKI 签名密钥使用 HSM,那么是的,狡猾的攻击者可以简单地用他们自己的替换整个 CA 子系统,然后替换 Gov/Perm。带有经过修改和“正确”签名的证书的大量文件。各种 CA 基础架构(Windows AD CS、EJBCA 等)支持使用 HSM 作为 CA 私钥的存储,根 CA 甚至从属 CA 都可以从中受益。
    • @rip...:如果签名密钥被泄露,那么系统的安全性就会受到损害,就像 PKI 一样。所以是的,他们需要得到适当的保护。但是,这些签名密钥不应该或不需要出现在已部署的 DDS 系统中。您的“狡猾的攻击者”将不得不寻找其他地方才能找到它们,这不是您在这里暗示的小菜一碟。
    • 您可能推断出,是的。我不知道私钥保存在哪里,除了“它们应该保存在 HSM 中”。
    • DDS Secure 防止“创建自己的 CA”——“共同”的参与者组必须每个人都使用属于“共同”根 CA 的后代的证书。我仍然希望找出武器系统的“通用”CA 私钥保存在 HSM 中。我正在考虑 s/wily/state-level actor/,他们确实有资源和耐心来进行社会工程师或破解提升的访问权限,只需在 ~/.ssh 中查找私钥。
    猜你喜欢
    • 2013-05-30
    • 2013-06-25
    • 1970-01-01
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    • 2012-04-18
    • 2020-05-17
    • 2020-10-04
    相关资源
    最近更新 更多