Internet-Draft | extar | November 2022 |
Rodrigues | Expires 10 May 2023 | [Page] |
The shift to multi-cloud environments brought data leakage prevention challenges for organisations. The current Cross-Tenant Access Restriction (XTAR) mechanisms do not cover critical scenarios where users can connect to multiple tenants (organisational and personal), facilitating data exfiltration. The goal, similar to previously proposed, reviewed and accepted protocols that have been published as RFC standards and are now widely adopted, is to help organisations keep their data under control when using one or more Cloud Service Providers (CSPs). This can be done by incentivising CSPs to adopt the proposed protocol, Extended-Cross-Tenant Access Restriction (E-XTAR), consisting of a globally readable header specifying the allowed <CSP, tenantID> combinations allowed by the home organisation.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 10 May 2023.¶
Copyright (c) 2022 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
Several organisations have been shifting their data and processes to cloud environments (1). A subset of those will have granted their colleagues work-specific devices, that they should only use to access cloud tenants associated with their work in the said organisation (2). One of the benefits of this is an enriched level of Data Leakage Prevention policies, as there is a clear separation between work and non-work environments. Additionally, the dynamics within a single organisation, or even inter-organisation, have contributed to the adoption of multi-cloud environments, that is, organisations instantiating organisational tenants in multiple Cloud Service Providers (CSPs) (3). The keyword there is "tenant". Employees/colleagues can, rightfully, instantiate their tenants in those CSPs.¶
An approach that can be taken (and it indeed works in specific scenarios) is inserting a header in the authentication-related network traffic originating from the organisation-only devices (2). This is done through a network proxy or firewall. This header contains a list of allowed tenants/tenant IDs which is then used by the Identity Provider on the CSP's side to emit, or not, a valid authentication token.¶
The catch: This is not something that all CSPs have adopted. In fact, to my knowledge, only one has a mechanism like such, and, it, itself, has scope for improvement. This Internet-Draft exposes the need for the standardisation of a cross-tenant access restriction protocol and consequent adoption by CSPs.¶
Take the widely adopted Sender Policy Framework (SPF - [rfc7208]), Domain-Keys Identified Mail (DKIM - [rfc6376]) and Domain-based Message Authentication Reporting & Conformance (DMARC - [rfc7489]) protocols that, together with the Domain Name Server (DNS) protocol, help ensure the authenticity and integrity of electronic mail - related to yet another RFC-defined protocol: SMTP - [rfc5321]. A noteworthy characteristic of these, and other, protocols defined in standards is: They are optional. There is no central body enforcing the adoption of the standards. What has happened, and still is, is that the community itself is pressured to adopt certain standards to guarantee reliable Internet communication between services.¶
We can follow a similar strategy for data protection, to secure organisational (potentially sensitive) data from exfiltration, this document suggests a vendor-agnostic protocol that consists of having a single header, interpretable by any CSP's Identity Provider, to verify if the authentication request is coming from a restricted device and, if it is, only to emit an authentication token if the tenant being reached in that CSP is allowed by the home organisation, owner of the restricted device.¶
Because we cannot guarantee every existing and new CSP will implement this sort of mechanism, the standardisation process incentivises it, and, if adopted by the CSPs and organisations, it restricts the attack vector where colleagues exfiltrate data from the organisational tenant into a personal tenant.¶
Organisations deal with sensitive data and therefore follow strict data governance rules. Many introduce data leakage prevention policies, which are eased or not fully effective on organisationally-owned devices (work devices), as these are usually within a corporate network and are trusted.¶
As we will see from the Section 3, a multi-cloud organisation cannot block access to a whole CSP. And even in a single cloud environment, except for specific CSPs that allow/understand an XTAR mechanism to restrict access to specific tenants within that CSP, there is no widely adopted protocol to restrict access to specific tenants across CSPs. This appears to be essential when organisations are looking to have clear isolation between organisational and personal tenants.¶
In Section 3, the Section 3.6 protocol accommodates scenarios of single- and multi-cloud organisations with the need to restrict access to organisational tenants within them. These organisations are assumed to have provided their colleagues with a corporate device that should only access organisational tenants.¶
This approach is an extension of the approach taken by one specific CSP, which includes allowing an organisation to inject an optional header ("allowed-tenants-list") in the authentication-related network traffic destined for that CSP, which will then be read and interpreted by the CSP itself. This header will contain a list of organisationally allowed tenants (within that CSP). Once the traffic reaches the CSP's Identity Provider (the service granting the authentication token), the token will only be emitted if the tenant being accessed is present in the "allowed-tenants-list" network header.¶
Limitations of this "legacy" protocol:¶
The proposed protocol (E-XTAR) extends the legacy protocol as follows:¶
For the following use cases, letters are used to identify organisations and colleagues, numbers are used to identify CSPs and a combination of <letter, number> specified the tenant owned by the letter entity in the numbered CSP.¶
Across the use cases, assume the base scenario:¶
Perhaps the most common, in this scenario the organisation's (lack of) controls allow an employee to connect from the work device both to the organisational tenant (using work credentials) and to personal tenants.¶
Because organisation A has no XTARs, employee B can access the organisational tenant A1 from the work device (expected) but it can also access both personal tenants B1 and B2 (malicious).¶
Employee B can effectively download data into its work device from organisational tenant A1 and subsequently upload it to personal tenants B1 (hosted in the same CSP as the organisational tenant A1) and B2 (hosted in a different CSP).¶
Consequences:¶
Following the previous use case, now consider that, because organisation A has a single cloud environment within CSP 1, it implements a network restriction that aids with XTAR:¶
In this scenario, employee B can still access tenant A1 from CSP 1, using its work device. Employee B will not be able to access its tenant B2 from CSP 2, as network traffic is blocked when trying to access CSP 2. However, employee B is still able to connect to personal tenant B1 (hosted in the same CSP as the organisational tenant A1).¶
The organisation cannot fully restrict network access to CSPs itself uses. So, if organisation A is using CSP 1, traffic to it will have to be allowed, at a network level.¶
Consequences:¶
Further building on top of the second use case, consider that CSP 1 (used by organisation A and employee B), allows the organisation to insert metadata in the network traffic, specifying the list of allowed tenants within such CSP 1.¶
Employee B can still access tenant A1 from CSP 1, using its work device. Employee B will not be able to access either personal tenants, B1 (XTAR implemented by injecting the network header) or B2 (network traffic is still blocked when trying to access CSP 2).¶
Shortcomings of this approach include:¶
Consequences:¶
Consider the scenario where organisation A is still single-cloud and decides to drop the network traffic to other CSPs restrictions, but implements its tenant's CSP's XTARs. This results in less strict access than the previous one but does reduce the Governance required.¶
Consequences:¶
Changing the scenario to illustrate one of the shortcomings of the third use case:¶
Employee B can still access tenant A1 from CSP 1, using its work device. Employee B will not be able to access personal tenant B1 (XTAR implemented by injecting the network header). But because there is no XTAR mechanism understood by CSP 2 and organisation A cannot block network traffic to it (since it hosts an organisational tenant A2 in CSP 2). Employee B will be able to access organisational tenants A1 and A2, but it will also be able to exfiltrate data through its tenant B2, hosted in CSP 2.¶
Even if CSP 2 had yet another vendor-specific XTAR mechanism, this would add to the governance and implementation effort.¶
Consequences:¶
Now consider the implementation of the proposed Section 2.1, extended-XTAR (E-XTAR), following the scenario:¶
Employee B can access tenants any tenants, as long as these are specified either on (a) the "global-allowed-tenants-list" header explicitly or (b) on the allowed tenants list returned by the endpoint specified in the header.¶
Consequences:¶
The proposed mechanism aims to prevent data exfiltration via the attack vectors specified. Current implementations (and non-implementations) of XTAR are exploitable. E-XTAR aims to make it harder to exploit but requires us to consider factors, such as E-XTAR adoption and alternative attack vectors.¶
A CSP/CSP-like service might not adopt the protocol here proposed. To make sure E-XTARs configurations are validated, the organisation can:¶
Elaborating on the latter the organisation would have a choice of only allowing traffic to CSPs that have adopted E-XTAR.¶
This could be done by (i) having a central authority maintaining a list of CSPs that adopt the proposed protocol (verification process and management overhead needed) or (ii) implementing a mechanism that verifies if the CSP is adopting and implementing E-XTAR, independent of a central authority.¶
To achieve a mechanism that thoroughly verifies if the CSP is adopting and implementing E-XTAR, without relying on a central authority, perhaps a challenge-response mechanism, through which the target CSP can prove that it is implementing the proposed protocol, is worth considering.¶
One can consider an actor to create an internet-accessible upload portal (not recognised by typical website classification tools), where it can upload data from its corporate device into it, effectively exfiltrating data from an organisation. This is an attack vector achievable now and not covered by the protocol.¶
To tackle this, we would rely on Data Leakage Prevention mechanisms. Alternatively, would need a per-website allow-list, which may be hard to achieve in very dynamic organisations. Plus it includes management overhead.¶
This document has no IANA actions.¶
I am very grateful for the people around me that, knowingly or not, incentivised me to learn and explore the subject and, eventually, to work on this piece.¶