Software Defined Perimeter and Zero Trust
Software Defined Perimeter and Zero Trust
© 2020 Cloud Security Alliance – All Rights Reserved. You may download, store, display on your
computer, view, print, and link to the Cloud Security Alliance at https://cloudsecurityalliance.org
subject to the following: (a) the draft may be used solely for your personal, informational, non-
commercial use; (b) the draft may not be modified or altered in any way; (c) the draft may not be
redistributed; and (d) the trademark, copyright or other notices may not be removed. You may quote
portions of the draft as permitted by the Fair Use provisions of the United States Copyright Act,
provided that you attribute the portions to the Cloud Security Alliance.
Contributors:
Michael Roza
Matt Conran
Junaid Islam
Aditya Bhelke
Eitan Bremier
Tino Hirschmann
Steve Swift
Sam Heuchert
John Markh
Roupe Sahans
Oscar Monge Espana
Gerardo Di Giacomo
Vladimir Klasnya
J. Lam
Clara Andress
Dan Mountstephan
Manoj Sharma
CSA Analysts:
Shamun Mahmud
Originally, Zero Trust Network (ZTN) concepts were developed by the US Department of Defense
(DoD) in the early 2000s while defining Global Information Grid (GIG) Network Operations (NetOps)
Black Core routing and addressing architecture, part of the DoD’s Netcentric Service Strategy. Over
time, this concept evolved within the DoD intelligence and security communities into the current
ZTN/SDP framework and test lab1. Around the same time, Forrester, a market research company that
provides advice on technology began promoting ZTN as a worthwhile consideration for enterprise
security teams. Today, Zero Trust has grown widely in adoption, as well as scope.
Essentially, Zero Trust is a network security concept centered on the belief that organizations
should not automatically trust anything inside or outside traditional perimeters and aims to defend
enterprise assets. Implementing Zero Trust requires the verification of anything and everything that
tries to connect to assets before granting access and the continued evaluation of sessions during
the entire duration of the connection. This is illustrated in Figure 1 where the National Institute of
Standards and Technology (NIST) describes using ‘trust boundaries.’
1
https://www.secureworldexpo.com/industry-news/pentagon-zero-trust-security-framework
2
https://www.em360tech.com/wp-content/uploads/2019/04/The-Forres-
er-Wave%E2%84%A2_-Zero-Trust-eXtended-ZTX-Ecosystem-Providers-Q4-2018-1-1.pdf
Threat ID
Enterprise
Intelligence System Management
Untrusted
Policy Enforcement Trusted Resource
Subject
Point
Activity Logs SIEM System
Data Plane
Figure 1: Source: NIST, 800-207, Zero Trust Architecture 2nd Draft https://csrc.nist.gov/publications/detail/sp/800-207/draft
So what is Zero Trust? According to Forrester, there are three main concepts of Zero Trust:
• Introducing the concept of trust to the network, so that it becomes natural to ensure that all
resources are securely accessed no matter who creates the traffic or from where it originates,
regardless of location or hosting model, cloud, on-premises or collocated resources.
• Adopting a least privilege strategy (LPS) that enforces access control to eliminate the human
temptation to access restricted resources.
• Continuously logging and analyzing user traffic inspection for signs of suspicious activity.
What is SDP? Software Defined Perimeter (SDP) is the most advanced implementation of a Zero Trust
strategy. Cloud Security Alliance has adopted and is advocating the following constructs applied to
network connectivity:
SDP Controller
SDP Clients
Control Plane
Data Plane
Since SDP is agnostic of the underlying IP-based infrastructure and hones in on securing all
connections using said infrastructure, it is the best architecture for adopting a Zero Trust strategy,
as it can be applied at the OSI/TCP/IP network layer before the transport layer protocols, and prior
to the application of the session layer. This is important as the transport layer, that provides host-
to-host communication services for applications, and the session layer, the mechanism for opening,
closing and managing a session between end-user application processes, both have known and
undiscovered weaknesses, for example Transport Layer Security (TLS) vulnerabilities and TCP/IP
SYN-ACK attacks on session establishment.
The following table relates the ISO Open Systems Interconnection (OSI) model to the Internet
Engineering Task Force (IETF) TCP/IP protocol.
Goals
This paper will show how SDP can be used to implement ZTNs and why SDP is applied to network
connectivity and is the most advanced ZTN implementation.
In practical terms, “Zero Trust” is the philosophy behind the SDP architecture. SDP’s basic tenets are
ABCD: “Assume nothing, Believe nobody, Check everything, Defeat threats.” While SDP ZT is meant
to be applied at the Network Layer 3 of the International Standards Organization (ISO) OSI mode,
in view of common architecture patterns such as applications accessing hybrid cloud services,
care must be taken to apply ZTN as close to a domain perimeter as possible, to ensure optimal
performance and prevent unnecessary service latency
The following issues require a rapid change in the way network security is implemented.]
The past paradigm of a fixed network perimeter, with trusted internal network segments
protected by network appliances such as load balancers and firewalls, has been superseded by
virtualized networks and the realization that the network protocols of the past are not secure-
by-design. In fact, many current network protocols, such as IPSec and SSL VPN have known
vulnerabilities3. In addition, the plethora of mobile and IoT devices challenges the essence of
the traditional fixed network perimeter network.
With the introduction of cloud, the environment has changed. Add to cloud BYOD
requirements, machine to machine connections, the rise in remote access and the rise in
3
https://crypto.stanford.edu/cs155old/cs155-spring11/lectures/08-tcp-dns.pdf
Everything today relies on IP addresses for trust at layers 1-4 of the OSI stack, but this presents
a problem: IP addresses lack any type of user knowledge to validate the device request integrity.
There is simply no way for an IP address to have user context. IP addresses simply provide
connectivity information but provide no indication of trustworthiness of the endpoint or the
user. TCP is a bidirectional protocol at layer 4 of the OSI network stack, so internal trusted
hosts communicating with external untrusted hosts can receive untrusted messages.
Any changes to IP addresses can mean complex configuration, allowing errors to creep into
network security groups and network access control lists. Forgotten internal hosts can provide
an entry point to hackers by providing default responses to past protocols such as ICMP network
support. Finally, IP addresses should not be used as anchors for network locations because
IP addresses change, for example with dynamic allocation, or when a user moves from one
location to another.
Visibility and transparency of network connections is problematic for network security and
security tools implementation. Currently integration of controls is performed by gathering
data in multiple logs forwarded to Security Information & Event Management (SIEM) or
Security Orchestration Automation Response (SOAR) technologies for analysis.
A single point of trust for network connections is difficult to implement. Integrating identity
management prior to allowing access through a firewall is a resource intensive task. In
addition, for most development/operations/network teams, use of secure coding practices,
application layer firewalls and anti DDoS protections is very much an afterthought.
Providing individual applications with the ability to control security posture is currently a huge
challenge. Retrofitting security into application and container platforms requires integration
of access controls, identity management, token management, firewall management, code,
script, pipeline and image scanning, as well as orchestration the integrated whole. This is
proving very difficult for most teams.
The predominant network protocol used today for connectivity is the Transport Control Protocol
(TCP). Applications operate with a Connect First, Authenticate Second model when they use this
protocol for connectivity. When a client wants to communicate and have access to an application,
clients first need to set up a connection. Once the connection is established, then clients
authenticate. Once the client has authenticated, data can be exchanged.
In this model, clients are allowed to connect to the network first, and this allows unauthorized user
ingress. Clients are then authenticated but only after connection is allowed. This means connected
and unauthorized users are now in the network and can perform malicious activity. As there is no
awareness of who the legitimate clients are until authentication happens, these users typically
bypass the authentication methods when their identity claims are not challenged.
In essence, devices are given IP addresses to connect to the Internet, which forces organizations to
do three things:
• Deny the bad actors who are attempting to connect, relying on threat intelligence to provide
the identification of these parties.
• Lock down the machine so it is airtight, i.e. with vulnerability, patch and configuration
management. This has proved impossible.
• Implement a network layer firewall device with no user context. These firewalls are vulnerable
to internal attacks, out-of-date static configurations. (NOTE: Next Generation Firewalls
(NGFs) do address user context, application context and session context into consideration
but are still IP-based, with uncertain results because of application layer vulnerabilities. See
SDP Architecture document for details.)
SDP Perspective: None of these techniques are effective at preventing attacks. A Zero Trust
implementation requires immunity from all layers of attack on network, hosting and application
platform infrastructure.
Today, artificial intelligence models are currently simple behavioral models, for the most part based
on multiple linear regression analysis and/or expert systems, or neural networks which trained to
detect patterns. AI security detection models can be extended to time-based events, providing there
is sufficient time series data. These models are for a non-evolving system, mostly detecting patterns
of incursion after the fact. While AI is on the path to rapid development, at present, skilled security
professionals are required to provide the analysis to detect and prevent new and evolving threats.
Large volumes of data combined with well-trained models may be able to detect well-known attack
SDP Perspective: For highly confidential data, the best method of security is to prevent attacks
before they occur. An SDP Zero Trust deployment can deny risky transactions based on a single
packet analysis revealing a lack of positive identification.
c) Packet inspection has no user context - Network packet inspection has its limitations
in that packet ‘analysis’ happens at the application layer, so incursions can happen prior to
detection.
Network single packet inspection to identify connections are innovative and successful within
bounds. These methods are only as secure as TCP/IP and TLS protocols and application code.
Traditionally packet inspection happens on or close to the firewall with an Intrusion Detection System
(IDS) and/or on strategically identified areas important for monitoring. Traditional firewalls typically
control access to network resources based on source IP addresses. The fundamental challenge with
inspecting packets is the problem of identifying the user from the source IP. The tools for inspection
are based on IP addresses. While some attacks such as DDoS and malware may be detected using
existing techniques, the vast majority of attacks such as code injections and credential theft require a
context to detect, as they are performed at the application layer.
SDP Perspective: On the contrary, SDP does have packet inspection end user context. With an SDP
Zero Trust deployment, dropped packets gathered at SDP gateways can be forwarded for out-of-band
inspection and analysis. Combined with network data, a risk profile can be detected before ingress.
Zero Trust is a philosophy for designing network security architecture in a way that withholds access
until a user, device or even an individual packet has been thoroughly inspected and authenticated and
authorized. Even then, only the least amount of necessary access is granted based on authorization
to access. The following constructs are required to adopt a Zero Trust strategy.
Using VPNs and Firewalls to establish Zero Trust allows the user to connect to services (e.g.
a mail server). Firewalls can be set up to blacklist IPs, and services can be set up to determine
which IP addresses to allow or deny. VPNs can be configured to only allow the users on the
network who have the authorized VPN client and the appropriate keys, suggesting a Zero
Trust has been implemented. However, unauthorized users who clone the VPN client and steal
the keys can also access the mail server and then guess other user names and passwords
and perform malicious acts such as DDoS, credential theft, etc. The VPN allows a user to log
into the network and deny other services (e.g. SharePoint) not on the mail server network
Strong supporting measures for cloud native platform and application services include
inbound/outbound security configuration and corporate network policy configuration. An
industry standard practice for strong authentication and authorization is mutual TLS (two-way
SSL) certificates. A better approach is to require authentication before access, the drop or
forward packets at the network layer with traffic management provided by an SDN controller
interfacing to an SDP Zero Trust Deployment. With this architecture, the SDN infrastructure
can drop network connections if authentication fails.
Network Layer VPNs and firewalls and application layer firewalls and SSL VPNs do not have
explicit fine-grained access control. A Zero Trust deployment implicitly requires not only
policy-based authorization but also identity authentication in the context of network micro
segmentation and distributed service connectivity and interconnectivity across hybrid private/
public multi cloud scenarios.
Network Layer Firewalls merit specific consideration. They are static, so user groups are
used to provide granular trust. It is not unusual to have a group of users from a variety
of departments with different roles needing access to the same service with the same
IP address. Firewalls rules are static and rely only on network information. They do not
dynamically change based on context, i.e. the level of trust required for a given device from a
given network. A frequent use case is where a user requests access through riskier network
such as an internet café. If local firewall or antivirus software has been turned off by malware
or by accident, this will not be detected by traditional firewall.
A case can be made for IPSec VPNs, which do not access identity attributes for authentication
prior to allowing access. Instead IPSec VPNs are reliant on tokens and credentials that may
have been intercepted. SSL VPNs have known vulnerabilities.
In light of these limitations, a network perimeter Zero Trust approach is more secure with a
granular trust authentication mechanism and policy-based authorization.
Consider when authentication of identity attributes fails. The capability to forward suspicious
activity based on packet inspection to endpoint logging and monitoring services provides
really useful inputs to the security orchestration, automation and response (SOAR)
technologies that enable organizations to take inputs from a variety of sources (mostly from
security information and event management (SIEM) systems, see SDP Architecture Guide for
details). Automation refers to the workflow processes that are initiated to gather data, to be
integrated and orchestrated, providing operational intelligence and visualization graphs and
dashboards. Zero Trust implementations can forward useful intelligence for input to SOAR AI
models and the proper monitoring of suspicious activity.
SECURITY BENEFITS
Benefit Description
Reduced attack Protects critical assets and infrastructure by separating access control
surface and data planes to render each of them “black,” thereby blocking
potential network-based attacks
Ability to hide Enables deny-all gateway until users/devices are authenticated and
assets by denying authorized to access the assets
connectivity
Reduced cost of Reduces costs for endpoint threat prevention/detection Reduces cost
ownership for incident response Reduces complexity for integrating controls
Using Single Packet Determines connections and enables integrated controls for
Authorization authentication and authorization
Requires pre-vetting Allows control of all connections based on pre-vetting of who can
of connections connect, from which devices, to what services, infrastructure and other
parameters
Benefit Description
Cost and labor Reduces licensing and support costs since traditional network security
savings components are replaced with SDP. Reduces operational complexity
and reliance on traditional security tools due to implementation and
enforcement of security policies using SDP Reduces costs by minimizing
or replacing MPLS or leased line utilization. Organizations can reduce or
eliminate the use of private backbone networks Brings efficiency and
simplicity to organizations, which can ultimately help reduce labor needs
Compliance benefits Compliance data collection, reporting, and auditing processes can be
improved by SDP through the centralized control of connections from
users on registered devices to specific applications/services. SDP can
provide additional traceability of connectivity for online businesses.
The network micro-segmentation provided by SDP is frequently used
to reduce compliance scope, which can have a significant impact on
compliance reporting efforts.
Secure cloud Can help enterprises rapidly, confidently, and securely adopt cloud
computing adoption architectures by reducing the costs and complexity of the required
security architecture to support applications in the public-cloud, private-
cloud, data-center, and mixed environments. New applications can be
deployed faster with equivalent or better security than other options.
Business agility and Enables businesses to implement their priorities quickly and securely.
innovation Examples include:
• Enables transition from on-premises call-center agents to home-
based agents
• Enables the outsourcing of non-core business functions to
specialized third parties
• Enables customer-facing kiosks on remote third-party networks and
locations
• Enables deployment of company assets onto customer sites,
creating stronger integration with customers and generating new
revenue
A new network architecture paradigm, known as Cloud Security Alliance’s (CSA) Software Defined
Perimeter (SDP) protocol was initiated in 2013. It was designed to create an architecture for positive
identification of network connections from single packet inspection prior to accessing sensitive data.
Implicit in this architecture is the separation of the control plane where trust is established, from the
data plane where actual data is transferred. This removes the vulnerabilities inherent in TCP and TLS
termination, as well as the vagaries of network firewalling by IP Network Address Translation (NAT)
tables.
SDP provides a simple means of preventing the negative consequences of people bypassing
enterprise and legal security controls in the cloud. Adopting an SDP implementation enforces the
separation of establishing trust from data transfers. Network segmentation and the establishment
of micro networks, so important for multi-cloud deployments, also benefit from adopting a software
defined perimeter ZT architecture.
Combining Software Defined Perimeter with multi-factor authentication and improved access
control/authorization mechanisms puts organizations on a strategic path to addressing security
vulnerabilities and large-scale intrusions. Software defined perimeters enforce security policies at
configuration and deployment in addition to runtime detection and response.
Load Balancers
SDP Device/Client
SDP Controller
Protected
Host/Service
Protected
Host/Service
An SDP architecture proof of concept (POC) can demonstrate how SDP addresses the challenges
of application delivery in a hybrid multi-cloud environment. Specifically, the POC demonstrates the
following:
• communications that are classified as highly sensitive can be secured over any type of
network, even the internet, from one secure environment to another without having to run
the gauntlet of network layer to application layer insecurities, using an SDP approach;
• advances in Software Defined Networking can support a Software Defined Perimeter by
providing the support of a separate control and data plane as well as a deny-all/allow firewall
implementation; and
• the SDP approach to network forwarding across a hybrid multi-cloud deployment is perfectly
aligned with the principles of zero trust networking based on a single packet inspection.
The inference is that an SDP deployment applied at the network layer uses an interface from an SDN
controller to route connections from the initiating host to an SDP controller. The preferable interface
for configuring this routing is a REST interface enabling self-service configuration.
The rationale for providing this network layer SDP demonstration is to address the problems caused
by applying Zero Trust at the Application Layer after TLS termination. Most of the existing “Zero
There are a number of initiatives to address Zero Trust approaches to content delivery from all
major Cloud Service Providers. To date there are no applications of Zero Trust solely at the Network
Layer, particularly involving hybrid multi-cloud deployments. In this instance, “hybrid cloud” refers
to connectivity from private clouds to enterprise to data centers, while “multi-cloud” refers to
network connections across different public and private clouds. Industry sources indicate that most
enterprises now have, or are intending to have, a hybrid multi-cloud strategy.
The proof of concept takes advantage of the fact that virtualization of networks makes it possible
for security-related actions to be performed in the control plane of SDP implementations. To put
this in perspective, the widespread adoption and evolution of Software Defined Networking (SDN)
has enabled the service providers to simplify network management. However, this wide adoption
of SDNs is posing real challenges on how to provide proper authentication, access control, data
privacy, and data integrity among others for the API-driven orchestration of network routing.
Although SDN allows virtual networks provision on demand for both efficient data transport and
fine-grained control services, current security practices were not designed to match the complexity
and challenges that emerge from the integration of these software defined infrastructure. However,
the Software Defined Network paradigm allows for an SDN controller to call a Software Defined
Perimeter service that can orchestrate connections and perform an allow/deny action on a network
connection based on the SDP identity and device verification of the request4. The SDP controller
then instructs the SDN to either to route the connection to the accepting host or to drop the
connection when the packet identification attributes do not pass the required checks.
4
On the Security of SDN: A Completed Secure and Scalable Framework Using the Software-Defined
Perimeter (http://sdpcenter.com/resources/research/)
Session Image Operating System - Manages SDP Gateway - firewall rules, load
underlying virtualization properly balancer
Transport Software Defined Cloud API - Enables creation SDN - traffic controller, packet
Data Center of virtualized assets tied to analysis
resource pools/users
1. SDN Virtual Load Balancer capable of routing an SDP request to an identity access control
microservice and determining an allow/deny response
2. Public cloud external load balancers for VLB to forward requests to SDP accepting hosts/ser-
vices deployed to public cloud services
Assumptions
1. An existing open source SDP deployment is to be used as the basis for the proof-of-concept
demonstration.
2. A virtual load balancer is selected that is capable of calling a microservice and forwarding
requests to common cloud and on-premises load balancers.
3. Supplier technology deployment of the proof-of-concept is to be made publicly available,
with detailed implementation details not including proprietary or private capabilities.
4. Virtual Private Cloud networking micro deployments are to be made available for the
purposes of the PoC.
5. A device or VM acting as an SDP initiating host/server is to be made available.
6. A test environment is to include test cases to cover “eligible” and “ineligible” connections
that is, the identity attributes in the request packet are either matched in the identity service
(connection allowed) or not (connection dropped).
Technology Analysis
The technology components required to deploy a true network layer Zero Trust allow/deny
connectivity posture requires access to a new connection prior to the application of network
protocols at the accepting host.
The proof of concept requires a component to be deployed during traffic management, during
routing, prior to TLS certificate termination and without exposing the actual accepting host prior
to acknowledgement on the final TCP/IP endpoint destination. This has the obvious advantages of
preventing incursion through certificate weaknesses, as well as preventing DDoS packets reaching
the target.
The technology required is the deployment of a packet inspection service with access to identity
attributes directly from the virtual load balancer. The connection can be routed via an SDP controller
service that makes the decision to drop the connection or allow forwarding to the accepting host
server based on the identity attributes service.
To facilitate current network environments where multiple environments may be connected for a
single or multiple service, the technology required to interface with the SDP deployment is a virtual
load balancer able to interface with Cloud Service Provider and enterprise load balancers.
Required Resources
Components required to deliver the SDP Zero Trust proof of concept demonstration are as follows:
Requirements Components
Identity and Access Management granular Single Packet Inspection of each connection
controls forwarded by VLB deployed at SDP controller to
authenticate each connection at runtime
Situation Analysis
Currently many suppliers and vendors are claiming ‘Zero Trust’ capability for their product and
service offerings. While the following capabilities and activities support a Zero Trust network
capability, they do not constitute Network Layer Zero Trust without being able to authenticate prior
to authorized access to a network endpoint.
Most authentication takes place after the TCP/IP protocol acknowledgement and after TLS certificate
termination validation.
• http://sdpcenter.com/test-sdp/
• https://cloudsecurityalliance.org/artifacts/sdp-the-most-advanced-zero-trust-architecture/
• https://dodcio.defense.gov/Portals/0/documents/DoD_NetCentricServicesStrategy.pdf