【问题标题】:使用 AWS Nitro Enclave 进行加密时,我们能否阻止 EC2 实例访问纯文本数据?
【发布时间】:2022-01-23 15:15:32
【问题描述】:

我正在开展一个项目,在该项目中,通过 REST API 来自客户的数据应该在发送到数据库之前进行加密。为此,我们需要使用 AWS Nitro Enclave 进行加密。所以 Nitro Enclave 会从父 EC2 接收数据,与 KMS 对话以检索加密密钥,加密数据并将其发送回 EC2,然后 EC2 将其发送到数据库。

问题在于,数据现在以纯文本形式公开给任何可以访问 EC2 的人,这违背了保护数据的整个目的。我的问题是:无论如何数据会被Enclave本身拦截,换句话说,TLS可以在Enclave中终止吗?我知道 Enclave 没有任何联网功能,但我现在不确定这个 Enclave 如何解决保护个人身份信息的问题。

非常感谢您对这一点的任何澄清。

非常感谢! 扎克

【问题讨论】:

    标签: amazon-web-services encryption amazon-ec2 trusted-computing enclave


    【解决方案1】:

    TLS 在 Enclave 中终止?

    当然,您可以使用vsock-proxy(Nitro Enclaves CLI 安装的一部分)将流量(未终止)直接传递到 Nitro Enclave,请参阅https://nitro-enclaves.workshop.aws/en/my-first-enclave/secure-local-channel.html

    【讨论】:

    • 优秀.. 非常感谢@gusto2。我会仔细阅读这份文档。
    • 请提问.. 任何有权访问 EC2 父实例的人都可以看到来自客户端的纯文本数据,因为这是 TLS 连接终止的地方,对吗?
    • @zakzak 取决于... 你说你想在 enclave 实例中处理和加密数据。在这种情况下,进入“客户端应用程序”的数据会被加密、匿名或标记化。 enclave 实例增加了安全性,但也增加了复杂性和价格。定义您的线程模型并注意风险。例如。你真的需要飞地吗?您在哪里存储/管理 ssl 私钥?复杂性值得冒险吗? (也许是的)和access the plaintext 这并不容易,需要root 才能tcpdump 流量。所以还有其他选项来保护实例
    • 好点。我的意思是我需要从客户端获取数据并使用在 Enclave 中生成的加密密钥对其进行加密,然后将加密数据发送到后端。这个想法是没有人(甚至是管理员或父实例的根)应该能够以纯文本形式查看数据。我知道这是可能的,因为 EverVault 正在这样做,但不确定这怎么可能。再次感谢您的帮助并感谢您对此的反馈。
    猜你喜欢
    • 1970-01-01
    • 2022-10-18
    • 2020-01-12
    • 1970-01-01
    • 2021-09-29
    • 1970-01-01
    • 2021-12-04
    • 2020-10-10
    • 2016-07-21
    相关资源
    最近更新 更多