In today's web ecosystem, a website that uses a Content Delivery Network (CDN) shares its Transport Layer Security (TLS) private key or session key with the CDN. In this paper, we present the design and implementation of InviCloak, a system that protects the confidentiality and integrity of a user and a website's private communications without changing TLS or upgrading a CDN. InviCloak builds a lightweight but secure and practical key distribution mechanism using the existing DNS infrastructure to distribute a new public key associated with a website's domain name. A web client and a website can use the new key pair to build an encryption channel inside TLS. InviCloak accommodates the current web ecosystem. A website can deploy InviCloak unilaterally without a client's involvement to prevent a passive attacker inside a CDN from eavesdropping on their communications. If a client also installs InviCloak's browser extension, the client and the website can achieve end-to-end confidential and untampered communications in the presence of an active attacker inside a CDN. Our evaluation shows that InviCloak increases the median page load times (PLTs) of realistic web pages from 2.0s to 2.1s, which is smaller than the median PLTs (2.7s) of a state-of-the-art TEE-based solution.
翻译:在今天的网络生态系统中,一个使用内容传送网络的网站(CDN)与CDN共享其传输层安全(TLS)私人密钥或会话密钥。在本文中,我们介绍InviCloak的设计和实施,这是一个保护用户保密和完整性的系统,一个网站的私人通信,不改变TLS或升级CDN。InviCloak建立了一个轻量但安全和实用的关键分配机制,利用现有的DNS基础设施,分发与网站域名相关的新的公钥。一个网络客户和网站可以使用新密钥对对在 TCLS 内部建立一个加密频道。InviCloak 满足当前的网络生态系统。一个网站可以在客户不参与的情况下单方面部署InviCloak,以防止CDN 内的被动攻击者窃听其通信。如果客户还安装 InviCloak 浏览器扩展, 客户和网站可以实现终端对端保密和未加印的通信。在 CDN 的主动攻击者页面中,我们的评价显示的是,“2.LTC”的中位数比中位数增加了“2.LTLT”格式。