RFC 9055

Deterministic Networking (DetNet) Security Considerations

๐Ÿ“… published June 2021, from ietf

Deterministic Networking (DetNet) Security Considerations ๐Ÿ’–

Okay bestie, this is RFC 9055 and it's giving security-guidance-for-DetNet energy ๐Ÿ”ฅ. It's an Informational doc, so it's published for information and isn't an Internet Standards Track spec ๐ŸŽ€. The main author is E. Grossman, Ed. from DOLBY, with T. Mizrahi from HUAWEI and A. Hacker from THOUGHT ๐Ÿ‘‘. It's dated June 2021, its ISSN is 2070-1721 โœจ, and its header doesn't have any "Obsoletes" or "Updates" line, so it isn't listed as replacing or updating another RFC ๐Ÿฆ‹.

Abstract ๐ŸŒธ

A DetNet (deterministic network) gives its data flows really specific performance guarantees, like extremely low data loss rates and bounded latency. That includes bounded latency variation, which is what people call "jitter" ๐Ÿงš. So securing a DetNet is a whole vibe: you still need all the best-practice security measures you'd use for any mission-critical network, but you may also need extra measures to protect these brand-new service properties ๐Ÿ’….

This document looks at DetNet-specific security from two angles: the DetNet system-level designer and the component designer ๐Ÿ‘€. The system-level stuff includes a taxonomy of relevant threats and attacks, plus how threats line up against use cases and service properties ๐Ÿ’œ. The component-level stuff covers ingress filtering and detecting packet arrival-time violations ๐Ÿ“.

It also digs into security considerations specific to the IP and MPLS data plane technologies, which complements the Security Considerations sections of those documents ๐Ÿซถ.


Status of This Memo โœจ

This document is not an Internet Standards Track specification. It's published for informational purposes ๐ŸŒˆ.

It's a product of the Internet Engineering Task Force (IETF) and represents the consensus of the IETF community ๐ŸŽ€. It got public review and was approved for publication by the Internet Engineering Steering Group (IESG) ๐Ÿ‘‘. Not every IESG-approved document is a candidate for any level of Internet Standard, so check out Section 2 of RFC 7841 for the details ๐Ÿ”ฅ.

For the current status, any errata, and how to send feedback, head to https://www.rfc-editor.org/info/rfc9055 ๐Ÿ’–.

Copyright (c) 2021 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) as in effect on the date of publication. Please read these carefully, because they spell out your rights and restrictions for this document ๐Ÿซถ. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they're provided without warranty as described in the Simplified BSD License โœจ.

Table of Contents ๐Ÿงš

   1.  Introduction
   2.  Abbreviations and Terminology
   3.  Security Considerations for DetNet Component Design
     3.1.  Resource Allocation
       3.1.1.  Inviolable Flows
       3.1.2.  Design Trade-Off Considerations in the Use Cases
               Continuum
       3.1.3.  Documenting the Security Properties of a Component
       3.1.4.  Fail-Safe Component Behavior
       3.1.5.  Flow Aggregation Example
     3.2.  Explicit Routes
     3.3.  Redundant Path Support
     3.4.  Timing (or Other) Violation Reporting
   4.  DetNet Security Considerations Compared with Diffserv Security
           Considerations
   5.  Security Threats
     5.1.  Threat Taxonomy
     5.2.  Threat Analysis
       5.2.1.  Delay
       5.2.2.  DetNet Flow Modification or Spoofing
       5.2.3.  Resource Segmentation (Inter-segment Attack)
               Vulnerability
       5.2.4.  Packet Replication and Elimination
         5.2.4.1.  Replication: Increased Attack Surface
         5.2.4.2.  Replication-Related Header Manipulation
       5.2.5.  Controller Plane
         5.2.5.1.  Path Choice Manipulation
         5.2.5.2.  Compromised Controller
       5.2.6.  Reconnaissance
       5.2.7.  Time-Synchronization Mechanisms
     5.3.  Threat Summary
   6.  Security Threat Impacts
     6.1.  Delay Attacks
       6.1.1.  Data Plane Delay Attacks
       6.1.2.  Controller Plane Delay Attacks
     6.2.  Flow Modification and Spoofing
       6.2.1.  Flow Modification
       6.2.2.  Spoofing
         6.2.2.1.  Data Plane Spoofing
         6.2.2.2.  Controller Plane Spoofing
     6.3.  Segmentation Attacks (Injection)
       6.3.1.  Data Plane Segmentation
       6.3.2.  Controller Plane Segmentation
     6.4.  Replication and Elimination
       6.4.1.  Increased Attack Surface
       6.4.2.  Header Manipulation at Elimination Routers
     6.5.  Control or Signaling Packet Modification
     6.6.  Control or Signaling Packet Injection
     6.7.  Reconnaissance
     6.8.  Attacks on Time-Synchronization Mechanisms
     6.9.  Attacks on Path Choice
   7.  Security Threat Mitigation
     7.1.  Path Redundancy
     7.2.  Integrity Protection
     7.3.  DetNet Node Authentication
     7.4.  Synthetic Traffic Insertion
     7.5.  Encryption
       7.5.1.  Encryption Considerations for DetNet
     7.6.  Control and Signaling Message Protection
     7.7.  Dynamic Performance Analytics
     7.8.  Mitigation Summary
   8.  Association of Attacks to Use Cases
     8.1.  Association of Attacks to Use Case Common Themes
       8.1.1.  Sub-network Layer
       8.1.2.  Central Administration
       8.1.3.  Hot Swap
       8.1.4.  Data Flow Information Models
       8.1.5.  L2 and L3 Integration
       8.1.6.  End-to-End Delivery
       8.1.7.  Replacement for Proprietary Fieldbuses and
               Ethernet-Based Networks
       8.1.8.  Deterministic vs. Best-Effort Traffic
       8.1.9.  Deterministic Flows
       8.1.10. Unused Reserved Bandwidth
       8.1.11. Interoperability
       8.1.12. Cost Reductions
       8.1.13. Insufficiently Secure Components
       8.1.14. DetNet Network Size
       8.1.15. Multiple Hops
       8.1.16. Level of Service
       8.1.17. Bounded Latency
       8.1.18. Low Latency
       8.1.19. Bounded Jitter (Latency Variation)
       8.1.20. Symmetrical Path Delays
       8.1.21. Reliability and Availability
       8.1.22. Redundant Paths
       8.1.23. Security Measures
     8.2.  Summary of Attack Types per Use Case Common Theme
   9.  Security Considerations for OAM Traffic
   10. DetNet Technology-Specific Threats
     10.1.  IP
     10.2.  MPLS
   11. IANA Considerations
   12. Security Considerations
   13. Privacy Considerations
   14. References
     14.1.  Normative References
     14.2.  Informative References
   Contributors
   Authors' Addresses

1. Introduction โœจ

Okay bestie, so a deterministic IP network ("Deterministic Networking Architecture" [RFC8655]) can carry data flows for real-time apps with extremely low data loss rates and bounded latency ๐Ÿฆ‹. The latency bounds DetNet defines (as described in [RFC9016]) cover both worst-case latency (Maximum Latency, Section 5.9.2 of [RFC9016]) and worst-case jitter (Maximum Latency Variation, Section 5.9.3 of [RFC9016]) ๐Ÿ’…. Deterministic flows are already well established for Ethernet networks (see Time-Sensitive Networking (TSN), [IEEE802.1BA]), and DetNet is bringing those same capabilities to IP ๐ŸŒธ.

Deterministic IP networks have been successfully deployed in real-time Operational Technology (OT) applications for a few years now ๐Ÿ”ฅ. Highkey though, these networks are usually isolated from external access, so the security threat from outside attackers is low ๐Ÿ™ˆ. An example is a network inside an aircraft that is "air gapped" from the outside world โœˆ๏ธ. DetNet specifies a set of technologies that let you create deterministic flows on IP-based networks of a potentially wide area (on the scale of a corporate network) ๐Ÿข. It can also merge OT traffic with best-effort Information Technology (IT) traffic, and put OT network components into contact with IT network components. That means the OT traffic and components are exposed to security threats that were not present in an isolated OT network ๐Ÿ˜ญ.

These DetNet (OT-type) technologies may not have been deployed before on a wide area IP-based network that also carries IT traffic, so they can bring security considerations that are new to IP-based wide area network designers ๐Ÿ’€. This document gives insight into those system-level security considerations ๐Ÿง . Designers of DetNet components (such as routers) also face new security-related challenges when providing DetNet services. For example, they have to maintain reliable isolation between traffic flows in an environment where IT traffic co-mingles with critical reserved-bandwidth OT traffic ๐Ÿซถ. This document also looks at the security implications inside DetNet components themselves ๐Ÿ”.

Security is of particularly high importance in DetNet because many of the use cases enabled by DetNet [RFC8578] include control of physical devices (power grid devices, industrial controls, building controls, etc.) ๐Ÿ‘‘. Those devices can have high operational costs when they fail, and they make potentially attractive targets for cyber attackers ๐ŸŽฏ.

It gets even more intense because one of the goals of DetNet is to provide a "converged network", i.e., one that includes both IT traffic and OT traffic ๐ŸŒˆ. That exposes potentially sensitive OT devices to attack in ways that were not previously common. Usually they were under a separate control system or otherwise isolated from the IT network (for example [ARINC664P7]) ๐Ÿ”’. Security considerations for OT networks are not a brand-new area, and there are many OT networks today that are connected to wide area networks or the Internet ๐ŸŒ. This document focuses on the issues that are specific to the DetNet technologies and use cases ๐Ÿ’œ.

So given all of that, securing a DetNet starts with a scrupulously well-designed and well-managed engineered network ๐Ÿ‘‘. It should follow industry best practices for security at both the data plane and controller plane, as well as for any Operations, Administration, and Maintenance (OAM) implementation โœจ. This is the assumed starting point for the considerations discussed here ๐Ÿฆ‹. These assumptions also depend on the network components themselves upholding the security-related properties that DetNet system-level designers are going to assume. For example, the assumption that network traffic associated with a given flow can never affect traffic associated with a different flow is only true if the underlying components make it so ๐Ÿงš. Those properties may be new challenges for component designers, so they are considered here too ๐Ÿ’….

Starting with a "well-managed network", as noted above, lets us exclude some of the more powerful adversary capabilities from the Internet Threat Model of [BCP72], such as the ability to arbitrarily drop or delay any or all traffic ๐Ÿ™…โ€โ™€๏ธ. With this reduced attacker capability, we can present security considerations based on attacker capabilities that are more directly relevant to a DetNet ๐ŸŽ€.

In this context, we see the "conventional" (i.e., non-time-sensitive) network design and management aspects of network security as being mainly about preventing denial of service ๐Ÿ›ก๏ธ. They must ensure that DetNet traffic goes where it's supposed to go, and that an external attacker can't inject traffic that disrupts the delivery timing assurance of the DetNet โฑ๏ธ. The time-specific aspects of DetNet security presented here pick up exactly where those "conventional" design and management aspects leave off ๐ŸŒธ.

Heads up: "conventional" methods for mitigating denial-of-service attacks (among all the others), such as throttling, can only be effectively used in a DetNet when their use does not compromise the required time-sensitive or behavioral properties of the OT flows on the network โš ๏ธ. For example, a "retry" protocol is typically not going to be compatible with a low-latency (worst-case maximum latency) requirement ๐Ÿ™ƒ. However, if in a specific use case and implementation such a retry protocol is able to meet the timing constraints, then it may well be used in that context ๐Ÿคทโ€โ™€๏ธ. Similarly, if common security protocols such as TLS/DTLS or IPsec are to be used, it must be verified that their implementations are able to meet the timing and behavioral requirements of the time-sensitive network as implemented for the given use case โณ. An example of "behavioral properties" might be that dropping more than a specific number of packets in a row is not acceptable according to the service level agreement ๐Ÿ˜ฌ.

The exact security requirements for any given DetNet are necessarily specific to the use cases that network handles ๐ŸŽฏ. So the reader is assumed to be familiar with the specific security requirements of their use cases. For example, those outlined in the DetNet Use Cases [RFC8578] and in the Security Considerations sections of the DetNet documents that apply to the network technologies in use, such as [RFC8939] for an IP data plane and [RFC8964] for an MPLS data plane ๐Ÿ“š. You can find a general introduction to the DetNet Architecture in [RFC8655], the DetNet Data Plane in [RFC8938], and the Flow Information Model in [RFC9016] ๐Ÿ’–.

The DetNet technologies include ways to:

  • Assign data plane resources for DetNet flows in some or all of the intermediate nodes (routers) along the path of the flow ๐Ÿ›ฃ๏ธ
  • Provide explicit routes for DetNet flows that do not dynamically change with the network topology in ways that affect the quality of service received by the affected flow(s) ๐Ÿ—บ๏ธ
  • Distribute data from DetNet flow packets over time and/or space to ensure delivery of the data in each packet in spite of the loss of a path ๐Ÿช„

This document includes sections on DetNet component design as well as system design ๐Ÿงฉ. The system design part includes a taxonomy and analysis of threats, threat impacts and mitigations, and an association of attacks with use cases (based on Section 11 of [RFC8578]) ๐Ÿ•ต๏ธโ€โ™€๏ธ.

This document is based on the premise that there will be a very broad range of DetNet applications and use cases, ranging in size and scope from individual industrial machines to networks that span an entire country [RFC8578] ๐ŸŒ. So no single set of prescriptions (such as exactly which mitigation should be applied to which segment of a DetNet) can apply to all of them ๐Ÿ™…โ€โ™€๏ธ. Any single one we might prescribe would inevitably prove impractical for some use case, perhaps one that does not even exist at the time of this writing ๐Ÿ”ฎ. That's why we are not prescriptive here. We are stating the desired end result, with the understanding that most DetNet use cases will necessarily differ from each other, and there is no "one size fits all" ๐Ÿ‘—๐Ÿ’….

2. Abbreviations and Terminology

Let's get the vocab down so we're all on the same page ๐Ÿ“–.

  • Information Technology (IT): The application of computers to store, study, retrieve, transmit, and manipulate data or information, often in the context of a business or other enterprise [IT-DEF] ๐Ÿ’ป.
  • Operational Technology (OT): The hardware and software dedicated to detecting or causing changes in physical processes through direct monitoring and/or control of physical devices such as valves, pumps, etc. [OT-DEF] ๐Ÿ”ง.
  • Component: A component of a DetNet system, used here to refer to any hardware or software element of a DetNet that implements DetNet-specific functionality, for example, all or part of a router, switch, or end system ๐Ÿงฉ.
  • Device: Used here to refer to a physical entity controlled by the DetNet, for example, a motor โš™๏ธ.
  • Resource Segmentation: Used as a more general form of Network Segmentation (the act or practice of splitting a computer network into sub-networks, each being a network segment [NS-DEF]) ๐Ÿฐ.
  • Controller Plane: In DetNet, the Controller Plane corresponds to the aggregation of the Control and Management Planes (see [RFC8655], Section 4.4.2) ๐ŸŽ›๏ธ.

3. Security Considerations for DetNet Component Design

This section gives guidance for implementers of components to be used in a DetNet ๐Ÿ› ๏ธ.

As noted above, DetNet provides resource allocation, explicit routes, and redundant path support ๐Ÿ›ค๏ธ. Each of these has associated security implications, which are discussed in this section in the context of component design ๐Ÿ”. Detection, reporting, and appropriate action in the case of packet arrival-time violations are also discussed โฐ.

3.1. Resource Allocation

3.1.1. Inviolable Flows

A DetNet system security designer relies on the premise that any resources allocated to a resource-reserved (OT-type) flow are inviolable ๐Ÿฐ. In other words, there is no physical possibility within a DetNet component that resources allocated to a given DetNet flow can be compromised by any type of traffic in the network ๐Ÿ™Œ. This includes malicious traffic, as well as inadvertent traffic such as might be produced by a malfunctioning component, or due to interactions between components that were not sufficiently tested for interoperability ๐Ÿ˜ต. From a security standpoint this is a critical assumption, for example when designing against DoS attacks ๐Ÿšจ. Put another way, with correctly designed components and security mechanisms, one can prevent malicious activities from impacting other resources ๐Ÿฅฐ.

However, achieving the goal of absolutely inviolable flows may not be technically or economically feasible for any given use case ๐Ÿฅฒ. That's because of the broad range of possible use cases (e.g., [RFC8578]) and their associated security considerations, as outlined in this document ๐Ÿ“‹. It can be viewed as a continuum of security requirements. At one end are isolated ultra-low latency systems that may have little security vulnerability (such as an industrial machine). At the other end are broadly distributed systems with many possible attack vectors and OT security concerns (such as a utility network) ๐ŸŒˆ. Given this continuum, the design principle used in this document is to specify the desired end results without being overly prescriptive about how those results are achieved. This reflects the understanding that no individual implementation is likely to be appropriate for every DetNet use case ๐Ÿ’–.

3.1.2. Design Trade-Off Considerations in the Use Cases Continuum โœจ

Okay bestie, so for any DetNet use case and its security requirements, the system designer has to understand the trade-offs that basically can't be avoided. You're balancing the end results you want against the DetNet protocols and the system and component design ๐Ÿ’…

For any given component, designed for any given use case (or group of use cases), the component designer is responsible for making sure the premise of inviolable flows is supported to the extent they think their target use cases need ๐Ÿซถ

For example, the component might do traffic shaping and policing at ingress to keep corrupted, malicious, or excessive packets out of the network, which lowers the chance that any traffic messes with a DetNet OT flow ๐Ÿ›ก๏ธ It might also add integrity protection for some or all of the header fields, like the ones used for flow ID. That lowers the chance that a packet with a compromised flow ID gets pushed into a different flow path ๐Ÿฆ‹ The component may verify every single packet header at every forwarding location, or only at certain points. In any of these cases, it may use dynamic performance analytics (Section 7.7) to start action that handles the situation in an appropriate and timely way, at the data plane, the controller plane, or both working together ๐Ÿ”ฅ The component's software and hardware may include measures to protect the integrity of the resource allocation/deallocation process. Other design aspects can help keep the adverse effects of malicious traffic more limited, for example by protecting network control interfaces or minimizing cascade failures ๐Ÿงฑ The component may also include features specific to a given use case, like configuring the response to a given sequential packet loss count ๐ŸŽ€

Ultimately, cost and complexity factors come into play. A component designed for low-cost systems may (by design) have security properties that are far inferior to a component with similar intended functionality but designed for highly secure or otherwise critical applications, which might cost a lot more ๐Ÿ’ธ Any given component is designed for some set of use cases, so it will have certain limitations on its security properties and vulnerabilities. It's the system designer's job to make sure the components they use are actually capable of satisfying their overall system security requirements ๐Ÿง

3.1.3. Documenting the Security Properties of a Component ๐Ÿ“

For the system designer to really understand how a given component behaves security-wise, the designer of any component intended for use with DetNet needs to clearly document that component's security properties ๐Ÿ’œ For example, take the case where a corrupted packet has compromised flow identification information, so it might accidentally match the flow ID of another ("victim") DetNet flow. That leads to extra unauthorized traffic on the victim. The documentation might say that the component uses integrity protection on the flow identification fields ๐Ÿ”

3.1.4. Fail-Safe Component Behavior ๐Ÿšจ

Even when a component's security properties are understood and well specified, the component can still malfunction. For example, physical circumstances might be something the component designer didn't predict, and then it may be hard or impossible to fully prevent a network malfunction ๐Ÿ˜ฌ How hardened a component is against different kinds of failures is a big part of what makes it stand out, and the overall system design can only be as strong as its weakest link โ›“๏ธ

Still, every network deals with this level of uncertainty. It's not unique to DetNet. That said, DetNet raises the bar ๐Ÿ“ˆ It turns a lot of added latency scenarios from tolerable annoyances into unacceptable service violations. That makes system integrity really important, along with correct and stable configuration of the network and its nodes, as discussed in Section 1 ๐ŸŒธ

3.1.5. Flow Aggregation Example ๐Ÿงฉ

Here's another example about resource allocation implementation. Consider implementing Flow Aggregation for DetNet flows (as discussed in [RFC8938]) ๐Ÿ“ Say there are N flows to be aggregated. Then the bandwidth resources of the aggregate flow must be enough to hold the sum of the bandwidth reservations for those N flows. But if one of those flows used more than its individually allocated bandwidth, it could starve the other flows ๐Ÿ˜ฑ So just providing and enforcing the calculated aggregate bandwidth may not be a complete solution. The bandwidth for each individual flow still has to be guaranteed, for example through ingress policing of each flow (i.e., before it is aggregated) ๐Ÿ”’ Alternatively, if each flow being aggregated can be trusted by some other means not to exceed its allocated bandwidth, the same goal can be achieved ๐Ÿซถ

3.2. Explicit Routes ๐Ÿ—บ๏ธ

The DetNet-specific reason for limiting how much DetNet can reroute OT traffic is to keep the specified service parameters (like the upper and lower latency boundaries) for a given flow ๐Ÿ’– For example, say the network reroutes a flow (or part of one) based only on statistical path usage metrics, or because of malicious activity. The new path could have a latency outside the required latency bounds that were designed into the original TE-designed path. That would violate the quality of service for the affected flow (or part of it) ๐Ÿ˜ญ

That said, it's totally fine for the network to reroute OT traffic in a way that keeps the specified latency bounds (and any other specified service properties) for any reason. An example would be responding to a runtime component or path failure ๐Ÿฆ‹

So from a DetNet security standpoint, the DetNet system designer can expect that any component designed for use in a DetNet will deliver packets within the agreed-upon service parameters โœจ For the component designer, this means that any component involved in controlling or implementing a change to the initially TE-configured flow routes must prevent rerouting of OT flows that might adversely affect delivering the traffic within the specified service parameters. That goes for rerouting that's malicious or accidental alike ๐Ÿ›ก๏ธ

3.3. Redundant Path Support ๐Ÿงœโ€โ™€๏ธ

The DetNet provision for redundant paths is PREOF, or "Packet Replication, Elimination, and Ordering Functions," as defined in the DetNet Architecture [RFC8655]. It's the foundation for high reliability in a DetNet, because it virtually eliminates packet loss (to a degree that depends on the implementation) through hitless redundant packet delivery ๐Ÿ’Ž

Note: At the time of this writing, PREOF is not defined for the IP data plane.

It's the system designer's responsibility to determine the level of reliability their use case requires, and to specify redundant paths that are sufficient to provide that level (as far as redundant paths can provide it) ๐Ÿ“ It's the component designer's responsibility to make sure the relevant PREOF operations run reliably and securely, so the operational technology relying on them doesn't end up in potentially catastrophic situations ๐Ÿ™ˆ

However, not every PREOF operation is necessarily implemented in every network. For example, a packet reordering function may not be needed if the packets don't have to be in order, or if the ordering happens somewhere else in the network ๐Ÿ”„

Ideally, a redundant path for a flow could be specified from end to end. But that isn't always possible (as described in [RFC8655]). So the system designer needs to think about the resulting end-to-end reliability and security from any arrangement of network segments along the path. Each segment provides its own PREOF implementation, and so each has its own level of reliability and security ๐Ÿงฉ

At the data plane, implementing PREOF depends on correctly assigning and interpreting packet sequence numbers, along with the actions taken based on them, such as elimination (including elimination of packets with spurious sequence numbers) ๐Ÿ”ข So the integrity of these values must be maintained by the component, since they're assigned by the DetNet Data Plane Service sub-layer and transported by the Forwarding sub-layer ๐Ÿ’… This is no different from the integrity of the values in any header used by the DetNet (or any other) data plane, and it isn't unique to redundant paths ๐ŸŒˆ How integrity protection of header values works depends on the technology. For example, in Layer 2 networks, the integrity of header fields can be protected by using MACsec [IEEE802.1AE-2018] ๐Ÿ” Similarly, from the sequence number injection perspective, it's no different from any other protocol that uses sequence numbers. For the particulars of integrity protection via IPsec Authentication Headers, Section 3 of [RFC4302] has some really useful insights ๐Ÿ‘‘

3.4. Timing (or Other) Violation Reporting โฐ

Okay bestie, the DetNet system designer has a big job ๐Ÿ’… They need to build a network where, for any incoming packet that shows up with a timing or bandwidth violation, an appropriate action can be taken to prevent damage to the system. The reporting step can happen through dynamic performance analysis (see Section 7.7) or by any other means implemented in one or more components. The right action depends on the use case. It might involve the controller plane stepping in, or it might be taken "immediately" by a single component if a super fast response is needed ๐Ÿƒโ€โ™€๏ธ๐Ÿ’จ

The actions themselves are properties of the components. Each component designer picks which options to implement based on their expected use cases, and those can vary wildly from component to component ๐ŸŽ€ Picking the wrong response can cause more drama than it's trying to fix ๐Ÿ˜ญ For example, a naive move would be having the component shut down the link whenever a packet arrives outside its prescribed time window. Honestly, that simplistic action might help the attacker more than the network ๐Ÿ’€ Simple logging isn't always enough either, because a delay in response could cause real damage, like to mechanical devices the network controls. So a whole range of possible, effective security-related actions and how they're configured is a major plus for a DetNet component ๐Ÿ‘‘

Some possible violations worth detecting are cases where a packet arrives:

  • Outside of its prescribed time window
  • Within its time window but with a compromised timestamp that makes it appear that it is not within its window
  • Exceeding the reserved flow bandwidth

Some possible direct actions at the data plane include traffic policing and shaping functions (e.g., those described in [RFC2475]), separating flows into per-flow rate-limited queues, and potentially applying active queue management [RFC7567]. BUT, and this is a big but ๐Ÿšจ, if those (or any other) actions are taken, the system designer must make sure the results don't compromise the continued safe operation of the system. For example, the network (i.e., the controller plane and data plane working together) must mitigate in a timely fashion any potential adverse effect on mechanical devices controlled by the network ๐Ÿซถ


4. DetNet Security Considerations Compared with Diffserv Security Considerations ๐Ÿฆ‹

DetNet is designed to be compatible with Diffserv [RFC2474] as it's applied to IT traffic in DetNet. DetNet also uses the 6-bit value of the Differentiated Services Code Point (DSCP) field, which lives in the Type of Service (IPv4) and Traffic Class (IPv6) bytes, for flow identification. However, the DetNet interpretation of the DSCP value for OT traffic is not the same as the per-hop behavior (PHB) selection defined by Diffserv ๐ŸŒธ

So security considerations for DetNet share some aspects with Diffserv, overlapping 100% when it comes to IP IT traffic. Those shared aspects are covered in the existing IP network security literature, specifically the Security Considerations sections of [RFC2474] and [RFC2475]. DetNet also brings in timing and other considerations that Diffserv doesn't have, so the Diffserv security considerations are a subset of the DetNet security considerations ๐Ÿงš

For DetNet OT traffic, the DSCP value is interpreted differently than in Diffserv and helps determine the service the packet gets. In DetNet, the consequences of failing to detect, or incorrectly handling, mismarked DSCP values are similar to Diffserv. Many of the points made in the Diffserv security discussions (Section 6.1 of [RFC2475], Section 7 of [RFC2474], and Section 3.3.2.1 of [RFC6274]) are also relevant to DetNet OT traffic, though perhaps in modified form ๐Ÿ”ฅ For example, in DetNet, the effect of an undetected or incorrectly handled maliciously mismarked DSCP field in an OT packet is not identical to affecting the PHB of that packet, since DetNet doesn't use the PHB concept for OT traffic. Still, the service the packet gets could be affected, so mitigation measures similar to the ones Diffserv prescribes would be appropriate for DetNet. For example, mismarked DSCP values should not cause failure of network nodes ๐Ÿ™ˆ The remarks in [RFC2474] about IPsec and Tunneling Interactions are relevant too (though that doesn't mean other sections are less relevant!) โœจ

In this discussion, interpretation (and any possible intentional re-marking) of the DSCP values of packets headed for DetNet OT flows is expected to happen at the ingress to the DetNet domain. Once inside the domain, keeping the DSCP values intact is subject to the same handling considerations as any other field in the packet ๐Ÿ’–


5. Security Threats ๐Ÿšจ

This section presents a taxonomy of threats and analyzes the possible threats in a DetNet-enabled network. The threats considered here don't depend on any specific technologies used to implement DetNet. Section 10 covers attacks associated with the DetNet technologies included in [RFC8938] ๐Ÿ’œ

We separate controller plane threats from data plane threats. The attack surface may be the same, but the types of attacks and the motivations behind them are different. For example, a Delay attack is more relevant to the data plane than to the controller plane. The security solutions differ too; the way you secure the data plane is often different from the way you secure the controller plane ๐ŸŽ€

5.1. Threat Taxonomy ๐ŸŒˆ

This document uses organizational elements of the threat models of [RFC7384] and [RFC7835]. The model classifies attackers based on two criteria:

  • Internal vs. external: Internal attackers either have access to a trusted segment of the network or possess the encryption or authentication keys. External attackers, on the other hand, don't have the keys and only have access to the encrypted or authenticated traffic.
  • On-path vs. off-path: On-path attackers are located in a position that lets them intercept, modify, or drop in-flight protocol packets, whereas off-path attackers can only attack by generating protocol packets.

About the boundary between internal and external attackers as defined above: this document doesn't make concrete recommendations about which specific network segments should be protected in any particular way, like with encryption or authentication. Because of that, the boundary isn't unequivocally specified here ๐Ÿคทโ€โ™€๏ธ Given that, the reader can view an internal attacker as one who can operate within the perimeter defined by the DetNet Edge Nodes (as defined in the DetNet Architecture [RFC8655]), with the understanding that what's encrypted or authenticated inside that perimeter will vary depending on the implementation.

We've also been careful to adhere to Section 5 of [RFC3552], both for which attacks are considered out of scope for this document and for which are considered the most common threats (explored further in Section 5.2). Most direct threats to DetNet are active attacks (i.e., attacks that modify DetNet traffic). Still, it's highly suggested that DetNet application developers take appropriate measures to protect the content of DetNet flows from passive attacks (i.e., attacks that observe but don't modify DetNet traffic), for example through the use of TLS or DTLS ๐Ÿ”

DetNet-Service, one of the service scenarios described in [DETNET-SERVICE-MODEL], is the case where a service connects DetNet islands. That means two or more otherwise independent DetNets are connected via a link that isn't intrinsically part of either network ๐ŸŒ‰ This implies DetNet traffic could be flowing over a non-DetNet link, which may give an attacker a juicy opportunity to tamper with DetNet traffic ๐Ÿ˜ฌ The security properties of non-DetNet links are outside the scope of DetNet Security. But it should be noted that using non-DetNet services to interconnect DetNets merits security analysis to ensure the integrity of the networks involved ๐Ÿ’…

5.2. Threat Analysis ๐Ÿ”

5.2.1. Delay โณ

An attacker can maliciously delay DetNet data flow traffic. By delaying the traffic, the attacker can compromise the service of applications that are sensitive to high delays or high delay variation. The delay may be constant or modulated ๐Ÿ˜ˆ

5.2.2. DetNet Flow Modification or Spoofing ๐ŸŽญ

An attacker can modify some header fields of en route packets in a way that causes the DetNet flow identification mechanisms to misclassify the flow. Alternatively, the attacker can inject traffic tailored to look like it belongs to a legitimate DetNet flow. The potential consequence is that the DetNet flow resource allocation can't guarantee the expected performance when flow identification works correctly ๐Ÿ™ƒ

5.2.3. Resource Segmentation (Inter-segment Attack) Vulnerability ๐Ÿงฑ

DetNet components are expected to split their resources between DetNet flows in a way that stops traffic from one DetNet flow from affecting the performance of other DetNet flows, and also stops non-DetNet traffic from affecting DetNet flows. However, perhaps due to implementation constraints, some resources may be partially shared, and an attacker may try to exploit that ๐Ÿ˜ค For example, an attacker can inject traffic to exhaust network resources, so DetNet packets that share resources with the injected traffic may be dropped or delayed. That injected traffic may be part of DetNet flows or non-DetNet traffic.

Another example of a Resource Segmentation attack is when an attacker overloads the exception path queue on the router. That's the "slow path" typically taken by control or OAM packets that are diverted from the data plane because they need processing by a CPU ๐Ÿข DetNet OT flows are typically configured to take the "fast path" through the data plane to minimize latency โšก However, if there's only one queue from the forwarding Application-Specific Integrated Circuit (ASIC) to the exception path, and for some reason the system is configured so any DetNet packets must be handled on that exception path, then saturating the exception path could result in DetNet packets being delayed or dropped ๐Ÿ’€

5.2.4. Packet Replication and Elimination ๐Ÿชž

5.2.4.1. Replication: Increased Attack Surface ๐Ÿ•ธ๏ธ

Redundancy is intended to increase the robustness and survivability of DetNet flows, and replication over multiple paths can potentially mitigate an attack that's limited to a single path ๐Ÿฆธโ€โ™€๏ธ However, the fact that packets are replicated over multiple paths increases the attack surface of the network. In other words, there are more points in the network that may be subject to attacks ๐Ÿ‘€

okay bestie, this one is where the attacker gets sneaky ๐Ÿ˜ˆ someone can mess with the replication-related header fields, and that opens the door to a bunch of different attacks. ngl it's a lot ๐Ÿ’€

Forward both replicas: if someone maliciously changes a packet's SN (Sequence Number) ๐Ÿ”ข, both replicas of that packet can get forwarded. this one is giving replay attack vibes, because the outcome is pretty similar ๐Ÿ‘€

Eliminate both replicas: SN manipulation can also make both replicas get eliminated ๐Ÿ—‘๏ธ and this is the scary part: an attacker with access to just one path can make packets from the other paths get dropped. so the whole point of path redundancy gets compromised a bit ๐Ÿ˜ญ

Flow hijacking: this is the big boss move ๐Ÿ‘‘ an attacker with access to a single path can take over a DetNet flow by swapping the SNs on that path for higher SN values. for example, they could replace every SN value S with a higher value S+C, where C is a constant integer โœจ the attacked path now looks like it has the lowest delay, so the eliminating bridge keeps the attacked path's packets and tosses everyone else's ๐Ÿ’… once that happens, the flow is basically hijacked. the attacker can swap en route packets for malicious ones, or just inject errors so the packets get dropped at their destination ๐Ÿฅ€

Amplification: if an attacker injects packets into a flow that is going to be replicated, their attack gets amplified by the replication process ๐Ÿ“ข honestly this is no different from any attacker who injects packets that get delivered through multicast, broadcast, or other point-to-multi-point mechanisms ๐ŸŒˆ


5.2.5. Controller Plane ๐Ÿงš

5.2.5.1. Path Choice Manipulation ๐Ÿฆ‹

5.2.5.1.1. Control or Signaling Packet Modification

an attacker can maliciously modify control packets while they're en route ๐Ÿ“ฆ the goal is to disrupt or manipulate the DetNet path/resource allocation ๐Ÿ™ˆ

5.2.5.1.2. Control or Signaling Packet Injection

same energy, but this time the attacker maliciously injects control packets ๐Ÿ’‰ again, the goal is to disrupt or manipulate the DetNet path/resource allocation โญ

5.2.5.1.3. Increased Attack Surface

one of the possible consequences of a Path Manipulation attack is an increased attack surface ๐Ÿ“ˆ so once the attack from the previous subsection is carried out, it may boost the potential for other attacks to happen too ๐Ÿซฃ

5.2.5.2. Compromised Controller ๐Ÿ‘‘

okay this is a whole mood ๐Ÿ˜ฐ an attacker can subvert a legitimate controller, or subvert some other component so it pretends to be a legitimate controller. the result is that network nodes wrongly believe it's authorized to give them instructions ๐Ÿšจ

here's the tea though: a compromised node or controller is not a threat that comes from determinism or time sensitivity ๐Ÿต the same techniques used to prevent or mitigate compromised nodes in any network work just as well for DetNet. and honestly, compromising a controller might not even be something our defined attacker types can do. in other words, it may not be achievable via packet traffic at all, whether internal or external, on path or off path ๐Ÿ™ƒ it could happen through something like a human with physical access who uploads bogus firmware with a USB stick ๐Ÿ”Œ

so yeah, this underscores the requirement for careful overall system security design in a DetNet, since the effects of even one bad actor on the network can be potentially catastrophic ๐Ÿ˜ฑ bestie, take it seriously!!

security concerns specific to any given controller plane technology used in DetNet will be addressed by the DetNet documents associated with that technology ๐Ÿ“š

5.2.6. Reconnaissance ๐Ÿ”

a passive eavesdropper can identify DetNet flows and then gather info about en route DetNet flows ๐Ÿ‘€ for example, the number of DetNet flows, their bandwidths, their schedules, or other temporal or statistical properties. the gathered info can later be used to launch other attacks on some or all of the flows ๐ŸŽฏ

DetNet flows are typically uniquely identified by their 6-tuple, which means fields within the L3 or L4 header ๐Ÿชช however, some implementations may also augment the flow ID with extra per-flow attributes the system knows about, e.g., above L4 ๐Ÿงฉ for the purpose of this document, we assume any such additional fields used for the flow ID are encrypted and/or integrity protected from external attackers ๐Ÿ” but heads up, existing OT protocols designed for use on dedicated secure networks may not intrinsically provide that protection. in that case, IPsec or transport-layer security mechanisms may be needed ๐Ÿซถ

5.2.7. Time-Synchronization Mechanisms โฐ

an attacker can use any of the attacks described in [RFC7384] to attack the synchronization protocol, which then affects the DetNet service ๐Ÿ˜ตโ€๐Ÿ’ซ


5.3. Threat Summary ๐Ÿ“‹

okay, last stop ๐Ÿ here's a summary of the attacks we just talked about, shown in Table 1 ๐ŸŒธ for each attack, the table specifies the type of attackers that may invoke it. quick note: when the summary says internal vs. external, that distinction assumes a corresponding security mechanism is being used, and that the network equipment takes part in that mechanism ๐Ÿ”’

    +======================+=========================================+
    |        Attack        |              Attacker Type              |
    |                      +====================+====================+
    |                      |      Internal      |      External      |
    |                      +=========+==========+=========+==========+
    |                      | On-Path | Off-Path | On-Path | Off-Path |
    +======================+=========+==========+=========+==========+
    | Delay Attack         |    +    |          |    +    |          |
    +----------------------+---------+----------+---------+----------+
    | DetNet Flow          |    +    |    +     |         |          |
    | Modification or      |         |          |         |          |
    | Spoofing             |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Inter-segment Attack |    +    |    +     |    +    |    +     |
    +----------------------+---------+----------+---------+----------+
    | Replication:         |    +    |    +     |    +    |    +     |
    | Increased Attack     |         |          |         |          |
    | Surface              |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Replication-Related  |    +    |          |         |          |
    | Header Manipulation  |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Path Manipulation    |    +    |    +     |         |          |
    +----------------------+---------+----------+---------+----------+
    | Path Choice:         |    +    |    +     |    +    |    +     |
    | Increased Attack     |         |          |         |          |
    | Surface              |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Control or Signaling |    +    |          |         |          |
    | Packet Modification  |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Control or Signaling |    +    |    +     |         |          |
    | Packet Injection     |         |          |         |          |
    +----------------------+---------+----------+---------+----------+
    | Reconnaissance       |    +    |          |    +    |          |
    +----------------------+---------+----------+---------+----------+
    | Attacks on Time-     |    +    |    +     |    +    |    +     |
    | Synchronization      |         |          |         |          |
    | Mechanisms           |         |          |         |          |
    +----------------------+---------+----------+---------+----------+

                     Table 1: Threat Analysis Summary

6. Security Threat Impacts โœจ

okay so when you're designing security for a DetNet (or any network, honestly ๐Ÿ’…), it can be prohibitively expensive or technically infeasible to protect against every possible threat ๐Ÿ˜ญ. That's why the security designer has to be clued in, like by an application domain expert such as a product manager ๐Ÿซถ, on how much each threat actually matters and what happens if an attack succeeds. This section shows an example template for that kind of comms, ending in Table 2 ๐ŸŽ€. It lists a set of threats under consideration and some impact values for a given industry. The threats, industries, and values in the table are just examples of how this kind of assessment works. They are NOT meant to be taken literally ๐Ÿ™ˆ.

This section looks at the relative impacts of the attacks from Section 5 ๐Ÿ’–. Here the impacts assume that the matching mitigation is not present or has failed. Mitigations get their own spotlight in Section 7 โœจ.

In computer security, the impact (or consequence) of an incident can be measured by loss of confidentiality, integrity, or availability of information ๐Ÿ”. For OT or time-sensitive networks (though IT and non-time-sensitive networks are not excluded either ๐ŸŒˆ), an exploit's impact can also include failure or malfunction of mechanical and/or other physical systems ๐Ÿ’€.

DetNet raises these stakes a LOT for OT applications ๐Ÿ˜ณ. This is especially true for ones that may have been designed to run in an OT-only environment, so they may not have been built with security for an IT environment (with all its components, services, and protocols) in mind ๐Ÿฅบ.

How bad a successful exploit is really depends on the use case and the industry. You can get more detail on the individual use cases from "Deterministic Networking Use Cases" [RFC8578] ๐Ÿ“š. Each of those use cases shows up in Table 2, including Pro Audio, Electrical Utilities, and Industrial M2M (split into two areas: M2M Data Gathering and M2M Control Loop) ๐ŸŽต, plus a few others.

The Aspects of Impact (left column) are Criticality of Failure, Effects of Failure, Recovery, and DetNet Functional Dependence ๐Ÿงš. Criticality of Failure sums up how serious the impact is. A failure can hit a ton of different metrics that vary wildly in scope and severity, so to keep things simple, only these were included: Financial, Health and Safety, Effect on a Single Organization, and Effect on Multiple Organizations ๐Ÿ’…. Recovery covers two things: how long an affected use case takes to get back to its pre-failure state (Recovery Time Objective, RTO), and how much of the original service gets lost between the failure and getting back to the original state (Recovery Point Objective, RPO) ๐Ÿ“. DetNet Dependence maps how much each of these DetNet service objectives contributes to the impact of a failure: time dependency, data integrity, source node integrity, availability, and latency/jitter โญ.

The Impact mappings use a scale of low, medium, and high ๐Ÿ’œ. In some use cases there could be a whole bunch of specific applications using DetNet, so for simplicity, this section averages out the different impacts across applications ๐ŸŒธ. It also does NOT cover the overall risk of a certain impact, which would mean working out how likely a failure is to happen ๐Ÿคทโ€โ™€๏ธ.

In practice, these ratings will vary from case to case, so just remember the ones shown here are examples ๐Ÿฆ‹.

   +==============+=====+======+======+==========+======+======+======+
   |              | PRO | Util | Bldg | Wireless | Cell | M2M  | M2M  |
   |              | A   |      |      |          |      | Data | Ctrl |
   +==============+=====+======+======+==========+======+======+======+
   | Criticality  | Med | Hi   | Low  | Med      | Med  | Med  | Med  |
   +==============+=====+======+======+==========+======+======+======+
   | Effects                                                          |
   +==============+=====+======+======+==========+======+======+======+
   | Financial    | Med | Hi   | Med  | Med      | Low  | Med  | Med  |
   +--------------+-----+------+------+----------+------+------+------+
   | Health/      | Med | Hi   | Hi   | Med      | Med  | Med  | Med  |
   | Safety       |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Affects 1    | Hi  | Hi   | Med  | Hi       | Med  | Med  | Med  |
   | org          |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Affects >1   | Med | Hi   | Low  | Med      | Med  | Med  | Med  |
   | org          |     |      |      |          |      |      |      |
   +==============+=====+======+======+==========+======+======+======+
   | Recovery                                                         |
   +==============+=====+======+======+==========+======+======+======+
   | Recov Time   | Med | Hi   | Med  | Hi       | Hi   | Hi   | Hi   |
   | Obj          |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Recov Point  | Med | Hi   | Low  | Med      | Low  | Hi   | Hi   |
   | Obj          |     |      |      |          |      |      |      |
   +==============+=====+======+======+==========+======+======+======+
   | DetNet Dependence                                                |
   +==============+=====+======+======+==========+======+======+======+
   | Time         | Hi  | Hi   | Low  | Hi       | Med  | Low  | Hi   |
   | Dependence   |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Latency/     | Hi  | Hi   | Med  | Med      | Low  | Low  | Hi   |
   | Jitter       |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Data         | Hi  | Hi   | Med  | Hi       | Low  | Hi   | Hi   |
   | Integrity    |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Src Node     | Hi  | Hi   | Med  | Hi       | Med  | Hi   | Hi   |
   | Integ        |     |      |      |          |      |      |      |
   +--------------+-----+------+------+----------+------+------+------+
   | Availability | Hi  | Hi   | Med  | Hi       | Low  | Hi   | Hi   |
   +--------------+-----+------+------+----------+------+------+------+

             Table 2: Impact of Attacks by Use Case Industry

The rest of this section digs into the impact of each group in more detail ๐Ÿ”.

6.1. Delay Attacks ๐Ÿข

6.1.1. Data Plane Delay Attacks โฑ๏ธ

Heads up: "Delay attack" also covers the possibility of a "negative delay" (aka early arrival of a packet) ๐ŸŒ€, or of messing with the timestamp value in a bad way ๐Ÿ˜ฌ.

Delayed messages on a DetNet link can cause the same behavior as dropped messages in ordinary networks ๐Ÿ™ƒ. That's because the services attached to the DetNet flow are likely to have strict delivery time requirements โฐ.

In a single-path scenario, disruption within the single flow is a real possibility ๐Ÿ’”. In a multipath scenario, big delays or instabilities in one DetNet flow can also make the eliminating router eat up more buffer and processor resources ๐Ÿฝ๏ธ.

A data plane Delay attack on a system controlling substantial moving devices (industrial automation, for example) can cause physical damage ๐Ÿšจ. Like, if the network promises a bounded latency of 2 ms for a flow but the machine gets it with 5 ms latency, the machine's control loop may become unstable ๐Ÿ˜ตโ€๐Ÿ’ซ.

6.1.2. Controller Plane Delay Attacks ๐ŸŽ›๏ธ

On its own, this isn't directly a threat to the DetNet service ๐Ÿ™‚. BUT delaying control messages can have pretty adverse effects later on ๐Ÿ‘€:

  • Delayed teardown can lead to resource leakage, which in turn can result in failure to allocate new DetNet flows, finally giving rise to a denial-of-service attack ๐Ÿ’€.
  • Failure to deliver, or severely delaying, controller plane messages that add an endpoint to a multicast group will stop the new endpoint from receiving expected frames, which disrupts expected behavior ๐Ÿ™…โ€โ™€๏ธ.
  • Delaying messages that remove an endpoint from a group can lead to loss of privacy, since the endpoint keeps receiving messages even after it's supposedly been removed ๐Ÿ•ต๏ธโ€โ™€๏ธ.

6.2. Flow Modification and Spoofing ๐ŸŽญ

6.2.1. Flow Modification โœ๏ธ

If an attacker can modify the contents of a packet's header or body, this can cause the packet to be routed incorrectly or dropped, or the payload to get corrupted or subtly changed ๐Ÿ˜ฑ. So the potential impact of a Modification attack includes disrupting the application AND the network equipment ๐Ÿงจ.

6.2.2. Spoofing ๐Ÿ‘ป

6.2.2.1. Data Plane Spoofing ๐Ÿ“ฆ

Spoofing data plane messages can drive up resource consumption on routers all over the network, since it increases buffer usage and processor utilization ๐Ÿ“ˆ. That can lead to resource exhaustion and/or increased delay ๐Ÿฅต.

If the attacker manages to create valid headers, the false messages can get forwarded through the network and use up part of the allocated bandwidth ๐Ÿ›ฃ๏ธ. This in turn can cause legitimate messages to be dropped once the resource budget has been used up ๐Ÿ˜ฉ.

Finally, the endpoint has to deal with invalid messages being delivered to it instead of (or in addition to) a valid message ๐Ÿซ .

6.2.2.2. Controller Plane Spoofing ๐ŸŽช

A successful Controller Plane Spoofing attack can have some seriously adverse effects ๐Ÿ˜ญ. It can do basically anything, like:

  • modifying existing DetNet flows by changing the available bandwidth ๐ŸŽš๏ธ
  • adding or removing endpoints from a DetNet flow โž•โž–
  • dropping DetNet flows completely ๐Ÿ’ฅ
  • falsely creating new DetNet flows (exhausting the system's resources or enabling DetNet flows that are outside the control of the network engineer) ๐Ÿ™€

6.3. Segmentation Attacks (Injection) ๐Ÿ’‰

6.3.1. Data Plane Segmentation ๐Ÿงฉ

Injecting false messages into a DetNet flow could drain the available bandwidth for that flow, IF the routers attribute these false messages to that flow's resource budget ๐Ÿชซ.

In a multipath scenario, injected messages will cause increased processor utilization in elimination routers ๐Ÿง . If enough paths are subject to malicious injection, the legitimate messages can be dropped ๐Ÿ˜ค. It can also cause an increase in buffer usage ๐Ÿ“ถ. All in all, it consumes more resources in the routers than normal, giving rise to a resource-exhaustion attack on the routers ๐Ÿ”ฅ.

If a DetNet flow is interrupted, the end application will be affected by what is now a non-deterministic flow ๐ŸŒช๏ธ. There are lots of possible sources of flow interruptions, for example (but not limited to) physical-layer conditions like a broken wire or a radio link that's compromised by interference ๐Ÿ“กโšก.

6.3.2. Controller Plane Segmentation

Okay so in a successful Controller Plane Segmentation attack ๐Ÿซฃ, control messages get acted on by nodes in the network, and the central controller or the network engineer has zero clue it's happening ๐Ÿ’€. This can potentially:

  • make brand-new DetNet flows (eating up resources) ๐Ÿ“
  • drop existing DetNet flows (denial of service) ๐Ÿ˜ญ
  • add end stations to a multicast group (loss of privacy) ๐Ÿ™ˆ
  • remove end stations from a multicast group (reduction of service) ๐Ÿ’”
  • modify the DetNet flow attributes (affecting available bandwidth) ๐ŸŒธ

Ngl, the scary part is this: if an attacker can inject control messages without the central controller knowing, then one or more components in the network may end up in a state the controller didn't expect ๐Ÿ˜ตโ€๐Ÿ’ซ. At that point, if the controller starts a command, the result may not be what it expected, since the target of the command may have started from a different initial state ๐Ÿซ .

6.4. Replication and Elimination

Replication and Elimination are only a data plane thing ๐Ÿ›ค๏ธ. They're relevant only to data plane messages, because controller plane messages are not subject to multipath routing ๐Ÿ™…โ€โ™€๏ธ.

6.4.1. Increased Attack Surface

The impact of an increased attack surface is that it raises the probability that the network can be exposed to an attacker ๐Ÿ‘€. This can facilitate a wide range of specific attacks, and we dig into their respective impacts in other subsections of this section ๐Ÿ”.

6.4.2. Header Manipulation at Elimination Routers

This attack can potentially cause DoS to the application that uses the attacked DetNet flows, or to the network equipment that forwards them ๐Ÿ˜ฉ. Furthermore, it can let an attacker manipulate the network paths and the behavior of the network layer ๐Ÿ•ธ๏ธ.

6.5. Control or Signaling Packet Modification

If control packets get manipulated and nobody notices, the network can be severely compromised ๐Ÿšจ.

6.6. Control or Signaling Packet Injection

If an attacker can inject control packets undetected, the network can be severely compromised ๐Ÿฅ€.

6.7. Reconnaissance

Of all the attacks, this one is among the most difficult to detect and counter ๐Ÿ•ต๏ธโ€โ™€๏ธ.

An attacker can, at their leisure, observe various aspects of the messaging and signaling over time, learning the intent and purpose of the traffic flows ๐Ÿ“ธ. Then, at some later date, possibly at an important moment in the operational context, they might launch an attack based on that knowledge ๐Ÿ˜ˆ.

The flow ID in the header of the data plane messages gives an attacker a very reliable identifier for DetNet traffic, and this traffic has a high probability of going to lucrative targets ๐Ÿ’ฐ.

Applications that get ported from a private OT network to the higher-visibility DetNet environment may need to be adapted to limit distinctive flow properties that could make them susceptible to reconnaissance ๐Ÿงš.

6.8. Attacks on Time-Synchronization Mechanisms

DetNet relies on an underlying time-synchronization mechanism, so a compromised synchronization mechanism may cause DetNet nodes to malfunction ๐Ÿซจ. Specifically, DetNet flows may fail to meet their latency requirements and deterministic behavior, which causes DoS to DetNet applications โฐ.

6.9. Attacks on Path Choice

This is covered in part in Section 6.3 (Segmentation Attacks (Injection)) and, just like Replication and Elimination (see Section 6.4), it's relevant for data plane messages ๐Ÿ’–.


7. Security Threat Mitigation โœจ

This section describes a set of measures that can be taken to mitigate the attacks described in Section 5 ๐Ÿ›ก๏ธ. Think of these mitigations as a toolbox ๐Ÿงฐ: any of them can be used individually or in concert. The DetNet component and/or system and/or application designer can apply these tools as necessary, based on a system-specific threat analysis ๐ŸŽ€.

Some of the technology-specific security considerations and mitigation approaches are further discussed in DetNet data plane solution documents, such as [RFC8938], [RFC8939], [RFC8964], [RFC9025], and [RFC9056] ๐Ÿ“š.

7.1. Path Redundancy

Description: Path redundancy means a DetNet flow can be forwarded simultaneously over multiple paths ๐Ÿ›ฃ๏ธ๐Ÿ›ฃ๏ธ. Packet Replication and Elimination [RFC8655] provide resiliency to dropped or delayed packets, and this redundancy improves robustness to failures and to on-path attacks ๐Ÿ’ช.

Note: At the time of this writing, PREOF is not defined for the IP data plane.

Related attacks: Path redundancy can be used to mitigate various on-path attacks, including the attacks described in Sections 5.2.1, 5.2.2, 5.2.3, and 5.2.7 ๐Ÿ™Œ. However, multiple paths may also make it harder to locate the source of an on-path attacker ๐Ÿซฅ.

A Delay Modulation attack could result in extensively exercising otherwise unused code paths to expose hidden flaws ๐Ÿ›. Subtle race conditions and memory allocation bugs in error-handling paths are classic examples of this ๐Ÿ˜ฑ.

7.2. Integrity Protection

Description: Integrity protection in the scope of DetNet is the ability to detect whether a packet header has been modified (maliciously or otherwise) and, if so, take some appropriate action (as discussed in Section 7.7) ๐Ÿ”. Deciding where in the network to apply integrity protection is part of the DetNet system design, and implementing the protection method itself is part of a DetNet component design ๐Ÿงฉ.

The most common technique for detecting header modification is a Message Authentication Code (MAC) (see Section 10 for examples) ๐Ÿ”‘. The MAC can be distributed either in line (included in the same packet) or via a side channel. Of these, the in-line method is generally preferred, because of the low latency that may be required on DetNet flows and the relative complexity and computational overhead of a sideband approach โšก.

There are different levels of security available for integrity protection ๐ŸŽš๏ธ. They range from the basic ability to detect whether a header has been corrupted in transit (no malicious attack) all the way up to stopping a skilled and determined attacker who is capable of both subtly modifying fields in the headers and updating an unkeyed checksum ๐Ÿฅท. Common to all of them are the 2 steps that need to be performed at both ends ๐Ÿ‘ฏโ€โ™€๏ธ. The first is computing the checksum or MAC. The corresponding verification step must perform the same steps before comparing the provided value with the computed value. Only then can the receiver be reasonably sure that the header is authentic โœ….

The most basic protection mechanism consists of computing a simple checksum of the header fields and providing it to the next entity in the packet's path for verification ๐Ÿงพ. Using a MAC combined with a secret key provides the best protection against Modification and Replication attacks (see Sections 5.2.2 and 5.2.4) ๐Ÿ’Ž. This MAC usage needs to be part of a security association that is established and managed by a security association protocol (such as IKEv2 for IPsec security associations) ๐Ÿค. Integrity protection in the controller plane is discussed in Section 7.6 ๐ŸŽฎ. The secret key, regardless of the MAC used, must be protected from falling into the hands of unauthorized users ๐Ÿ”’. Once key management becomes a topic, it's important to understand that this is a delicate process and should not be undertaken lightly ๐Ÿซฃ. BCP 107 [BCP107] provides best practices in this regard ๐Ÿ“–.

DetNet system and/or component designers need to be aware of these distinctions and enforce appropriate integrity-protection mechanisms as needed, based on a threat analysis ๐Ÿง . Note that adding integrity-protection mechanisms may introduce latency, so many of the same considerations in Section 7.5.1 also apply here โฑ๏ธ.

Packet Sequence Number Integrity Considerations: The use of PREOF in a DetNet implementation implies the use of a sequence number for each packet ๐Ÿ”ข. There is a trust relationship between the component that adds the sequence number and the component that removes it. The sequence number may be end-to-end, from source to destination, or it may be added and deleted by network edge components ๐ŸŒ. The adder and remover(s) have that trust relationship because they're the ones who ensure the sequence numbers aren't modifiable ๐Ÿซถ. Thus, sequence numbers can be protected by using authenticated encryption, or by a MAC without using encryption ๐Ÿ”. Between the adder and remover there may or may not be replication and elimination functions. The elimination functions must be able to see the sequence numbers ๐Ÿ‘๏ธ. Therefore, if encryption is done between adders and removers, it must not obscure the sequence number ๐Ÿ™…โ€โ™€๏ธ. If the sequence removers and the eliminators are in the same physical component, it may be possible to obscure the sequence number; however, that is a layer violation and is not recommended practice ๐Ÿ™ˆ.

Note: At the time of this writing, PREOF is not defined for the IP data plane.

Related attacks: Integrity protection mitigates attacks related to modification and tampering, including the attacks described in Sections 5.2.2 and 5.2.4 ๐Ÿซก.

7.3. DetNet Node Authentication

Description: Authentication verifies the identity of DetNet nodes (including DetNet Controller Plane nodes), and this enables mitigation of Spoofing attacks ๐Ÿชช. While integrity protection (Section 7.2) prevents intermediate nodes from modifying information, authentication can provide traffic origin verification, i.e., verifying that each packet in a DetNet flow is from a known source ๐Ÿ•ต๏ธ. Although node authentication and integrity protection are two different goals of a security protocol, in most cases a common protocol (such as IPsec [RFC4301] or MACsec [IEEE802.1AE-2018]) is used to achieve both purposes ๐Ÿคฉ.

Related attacks: DetNet node authentication is used to mitigate attacks related to spoofing, including the attacks of Sections 5.2.2 and 5.2.4 ๐ŸŽ€.

7.4. Synthetic Traffic Insertion โœจ

Description: okay so with some queuing methods, like [IEEE802.1Qch-2017], you can sneak in synthetic traffic to even out the timing of packet transmission ๐Ÿซถ. Synthetic traffic is basically randomly generated packets dropped into the network to hide the observable patterns in the flows, because otherwise an attacker could learn what the flows contain ๐Ÿ‘€. This can lowkey reduce how useful passive monitoring is for internal threats (see Section 5), since it gets way harder to link discrete events to particular network packets ๐Ÿ™ˆ.

Related attacks: removing the distinctive timing of individual packets or flows can help mitigate reconnaissance attacks (Section 5.2.6). For example, synthetic traffic can keep a constant traffic rate even when no user data is being sent, so it's really hard to collect info about when users are active and when DetNet flows get added or removed ๐Ÿ’….

Traffic Insertion Challenges: once an attacker can watch the frames crossing a network well enough to tell best-effort traffic apart from traffic belonging to a specific DetNet flow, it becomes super difficult to hide whether a given frame is real traffic or an inserted one ๐Ÿ˜ญ. So having the DetNet components generate and remove the synthetic traffic may or may not be a viable option, unless certain challenges get solved. Some of them (but not all) are:

  • Inserted traffic must be indistinguishable from valid stream traffic from the viewpoint of the attacker.
  • DetNet components must be able to safely identify and remove all inserted traffic (and only inserted traffic).
  • The controller plane must manage where to insert and remove synthetic traffic, but this information must not be revealed to an attacker.

An alternative design is to do the insertion and removal of synthetic traffic at the application layer instead of in the DetNet itself ๐Ÿงš. For example, the use of RTP padding to reduce information leakage from variable-bit-rate audio transmission via the Secure Real-time Transport Protocol (SRTP) is discussed in [RFC6562] ๐ŸŽง.


7.5. Encryption ๐Ÿ”

Description: reconnaissance attacks (Section 5.2.6) can be mitigated to some extent with encryption, which stops the attacker from accessing the packet header or contents ๐Ÿ™Œ. The specific encryption protocols depend on the lower layers that DetNet is forwarded over. For example, IP flows may be forwarded over IPsec [RFC4301], and Ethernet flows may be secured using MACsec [IEEE802.1AE-2018] ๐Ÿ’–.

However, even with encryption, a reconnaissance attack can still give the attacker insight into the network, even without visibility into the packet ๐Ÿ˜ฌ. For example, an attacker can observe which nodes are communicating with which other nodes, including when, how often, and with how much data. The timing of packets may also be correlated in time with external events, like the action of an external device โฐ. That kind of info could help an attacker map out specific targets for a different type of attack at a different time ๐ŸŽฏ.

DetNet nodes don't need to inspect the payload of any DetNet packets, which makes them data agnostic ๐Ÿค. This means that end-to-end encryption at the application layer is an acceptable way to protect user data ๐Ÿ”’.

Note that reconnaissance is a threat that is not specific to DetNet flows. Therefore, reconnaissance mitigation will typically be analyzed and provided by a network operator regardless of whether DetNet flows are deployed ๐Ÿซ . Thus, encryption requirements will typically not be defined in DetNet technology-specific specifications, but considerations of using DetNet in encrypted environments will be discussed in these specifications. For example, Section 5.1.2.3 of [RFC8939] discusses flow identification of DetNet flows running over IPsec ๐Ÿฆ‹.

Related attacks: as noted above, encryption can be used to mitigate reconnaissance attacks (Section 5.2.6). However, for a DetNet to provide differentiated quality of service on a flow-by-flow basis, the network must be able to identify the flows individually ๐Ÿง. This implies that in a reconnaissance attack, the attacker may also be able to track individual flows to learn more about the system ๐Ÿ’€.

7.5.1. Encryption Considerations for DetNet

Any compute time that is required for encryption and decryption processing ("crypto") must be included in the flow latency calculations โฑ๏ธ. Thus, cryptographic algorithms used in a DetNet must have bounded worst-case execution times, and these values must be used in the latency calculations ๐Ÿ“. Fortunately, encryption and decryption operations are typically designed to have constant execution times in order to avoid side channel leakage ๐Ÿ™.

Some cryptographic algorithms are symmetric in encode/decode time (such as AES), and others are asymmetric (such as public key algorithms) โš–๏ธ. There are advantages and disadvantages to using either type in a given DetNet context. The discussion in this document relates to the timing implications of crypto for DetNet. It is assumed that integrity considerations are covered elsewhere in the literature ๐Ÿ“š.

Asymmetric crypto is typically not used in networks on a packet-by-packet basis, due to its computational cost ๐Ÿฅต. For example, if only endpoint checks or checks at a small number of intermediate points are required, asymmetric crypto can be used to authenticate distribution or exchange of a secret symmetric crypto key. A successful check based on that key will provide traffic origin verification, as long as the key is kept secret by the participants ๐Ÿ—๏ธ. TLS (v1.3 [RFC8446], in particular, Section 4.1 ("Key Exchange Messages")) and IKEv2 [RFC6071] are examples of this for endpoint checks ๐Ÿ’œ.

However, if secret symmetric keys are used for this purpose, the key must be given to all relays. That increases the probability of a secret key being leaked ๐Ÿ˜ฑ. Also, if any relay is compromised or faulty, it may inject traffic into the flow ๐Ÿšจ. Group key management protocols can be used to automate management of such symmetric keys. For an example in the context of IPsec, see [IPSECME-G-IKEV2] ๐Ÿค–.

Alternatively, asymmetric crypto can provide traffic origin verification at every intermediate node ๐ŸŒ. For example, a DetNet flow can be associated with an (asymmetric) keypair, such that the private key is available to the source of the flow and the public key is distributed with the flow information. That allows verification at every node for every packet. However, this is more computationally expensive ๐Ÿ’ธ.

In either case, origin verification also requires replay detection as part of the security protocol. This prevents an attacker from recording and resending traffic, for example as a denial-of-service attack on flow forwarding resources ๐Ÿ›‘.

In the general case, cryptographic hygiene requires the generation of new keys during the lifetime of an encrypted flow (for example, see Section 9 of [RFC4253]). Any such key generation (or key exchange) requires additional computing time, which must be accounted for in the latency calculations for that flow ๐Ÿงผ. For modern ECDH (Elliptical Curve Diffie-Hellman) key-exchange operations (such as x25519 [RFC7748]), these operations can be performed in constant (predictable) time. However, this is not universally true (for example, for legacy RSA key exchange [RFC4432]) ๐Ÿซฃ. Thus, implementers should be aware of the time properties of these algorithms and avoid algorithms that make constant-time implementation difficult or impossible ๐Ÿง .


7.6. Control and Signaling Message Protection ๐Ÿ“จ

Description: control and signaling messages can be protected using any or all of encryption, authentication, and integrity-protection mechanisms ๐Ÿ›ก๏ธ. Compared with data flows, the timing constraints for controller and signaling messages may be less strict, and there may be fewer of those packets ๐ŸŒธ. If that's the case in a given application, it may enable the use of asymmetric cryptography for signing both the payload and headers of such messages, as well as encrypting the payload ๐Ÿ”‘. Given that a DetNet is managed by a central controller, the use of a shared public key approach for these processes is well proven ๐Ÿ‘‘. This is further discussed in Section 7.5.1 โœจ.

Related attacks: these mechanisms can be used to mitigate various attacks on the controller plane, as described in Sections 5.2.5, 5.2.7, and 5.2.5.1 ๐Ÿซถ.

7.7. Dynamic Performance Analytics โœจ

Description: Okay so, bestie, using Dynamic Performance Analytics (DPA) means the DetNet design includes a performance monitoring system ๐Ÿ’… Its whole job is to check that the timing guarantees are actually being met, and to catch timing violations or other weird stuff that could be a sign of a security attack or a system malfunction ๐Ÿ•ต๏ธ If the monitoring system notices unexpected behavior, it must then cause action to be initiated to address the situation in an appropriate and timely manner, either at the data plane or controller plane or both in concert ๐Ÿ”ฅ

So the overall DPA system can be split into the "detection" and "notification" functions ๐ŸŽ€ The time-specific DPA performance indicators and how you implement them will probably be specific to a given DetNet, and they're still nascent tech as of this writing ๐ŸŒฑ But DPA is commonly used in existing networks already, so we can make some observations about how a system like this might work for a DetNet, given that it would need to be adapted to address the time-specific performance indicators ๐Ÿงš

Detection Mechanisms: Measuring timing performance can be done via "passive" or "active" monitoring, as we'll get into below โœจ

Examples of passive monitoring strategies include:

  • Monitoring of queue and buffer levels, e.g., via active queue management (e.g., [RFC7567]).
  • Monitoring of per-flow counters.
  • Measurement of link statistics such as traffic volume, bandwidth, and QoS.
  • Detection of dropped packets.
  • Use of commercially available Network Monitoring tools.

Examples of active monitoring include:

  • In-band timing measurements (such as packet arrival times), e.g., by timestamping and packet inspection.
  • Use of OAM. For DetNet-specific OAM considerations, see [DETNET-IP-OAM] and [DETNET-MPLS-OAM]. Note: At the time of this writing, specifics of DPA have not been developed for the DetNet OAM but could be a subject for future investigation. ๐Ÿซถ
    • For OAM for Ethernet specifically, see also Connectivity Fault Management (CFM [IEEE802.1Q]), which defines protocols and practices for OAM for paths through 802.1 bridges and LANs. ๐ŸŒˆ
  • Out-of-band detection. Following the data path or parts of a data path, for example, Bidirectional Forwarding Detection (BFD, e.g., [RFC5880]). ๐Ÿฆ‹

Note that for some measurements (e.g., packet delay), it may be necessary to make and reconcile measurements from more than one physical location (e.g., a source and destination), possibly in both directions, in order to arrive at a given performance indicator value. ๐Ÿ‘‘

Notification Mechanisms: Getting DPA measurement results to the right place(s) and time(s) so you can respond in time is honestly kind of a challenge ๐Ÿ˜ญ Two notification mechanisms in general use are NETCONF/YANG Notifications and the proprietary local telemetry interfaces that come with components from some vendors. The Constrained Application Protocol (CoAP) Observe Option [RFC7641] could also be relevant to such scenarios ๐Ÿ’œ

At the time of this writing, YANG Notifications are not addressed by the DetNet YANG documents. However, this may be a topic for future work. It's possible that some of the passive mechanisms could be covered by notifications from non-DetNet-specific YANG modules. For example, if there's OAM or other performance monitoring that can monitor delay bounds, then that could have its own associated YANG data model, which could be relevant to DetNet, for example, some "threshold" values for timing measurement notifications ๐ŸŒธ

At the time of this writing, there is an IETF Working Group for network/performance monitoring (IP Performance Metrics (IPPM)). See also previous work by the completed Remote Network Monitoring Working Group (RMONMIB). See also "An Overview of the IETF Network Management Standards", [RFC6632] ๐Ÿ“š

Vendor-specific local telemetry may be available on some commercially available systems. In that case, the system can be programmed (via a proprietary dedicated port and API) to monitor and report on specific conditions, based on both passive and active measurements ๐Ÿ“

Related attacks: Performance analytics can be used to detect various attacks, including the ones described in Section 5.2.1 (Delay attack), Section 5.2.3 (Resource Segmentation attack), and Section 5.2.7 (Time-Synchronization attack). Once detection and notification have happened, the appropriate action can be taken to mitigate the threat ๐Ÿ›ก๏ธ

For example, in the case of data plane Delay attacks, one possible mitigation is to timestamp the data at the source and timestamp it again at the destination. If the resulting latency doesn't meet the service agreement, take appropriate action ๐Ÿ’… Note that DetNet specifies packet sequence numbering. However, it does not specify use of packet timestamps, although they may be used by the underlying transport (for example, TSN [IEEE802.1BA]) to provide the service ๐Ÿง 


7.8. Mitigation Summary ๐Ÿ’–

The following table maps the attacks of Section 5 (Security Threats) to the impacts of Section 6 (Security Threat Impacts) and to the mitigations of the current section. Each row specifies an attack, the impact of that attack if it's successfully carried out, and possible mitigation methods ๐ŸŽ€

   +======================+======================+=====================+
   | Attack               | Impact               | Mitigations         |
   +======================+======================+=====================+
   | Delay Attack         | *  Non-deterministic | *  Path redundancy  |
   |                      |    delay             |                     |
   |                      |                      | *  Performance      |
   |                      | *  Data disruption   |    analytics        |
   |                      |                      |                     |
   |                      | *  Increased         |                     |
   |                      |    resource          |                     |
   |                      |    consumption       |                     |
   +----------------------+----------------------+---------------------+
   | Reconnaissance       | *  Enabler for other | *  Encryption       |
   |                      |    attacks           |                     |
   |                      |                      | *  Synthetic        |
   |                      |                      |    traffic          |
   |                      |                      |    insertion        |
   +----------------------+----------------------+---------------------+
   | DetNet Flow          | *  Increased         | *  Path redundancy  |
   | Modification or      |    resource          |                     |
   | Spoofing             |    consumption       | *  Integrity        |
   |                      |                      |    protection       |
   |                      | *  Data disruption   |                     |
   |                      |                      | *  DetNet Node      |
   |                      |                      |    authentication   |
   +----------------------+----------------------+---------------------+
   | Inter-segment Attack | *  Increased         | *  Path redundancy  |
   |                      |    resource          |                     |
   |                      |    consumption       | *  Performance      |
   |                      |                      |    analytics        |
   |                      | *  Data disruption   |                     |
   +----------------------+----------------------+---------------------+
   | Replication:         | *  All impacts of    | *  Integrity        |
   | Increased Attack     |    other attacks     |    protection       |
   | Resource             |                      |                     |
   |                      |                      | *  DetNet Node      |
   |                      |                      |    authentication   |
   |                      |                      |                     |
   |                      |                      | *  Encryption       |
   +----------------------+----------------------+---------------------+
   | Replication-Related  | *  Non-deterministic | *  Integrity        |
   | Header Manipulation  |    delay             |    protection       |
   |                      |                      |                     |
   |                      | *  Data disruption   | *  DetNet Node      |
   |                      |                      |    authentication   |
   +----------------------+----------------------+---------------------+
   | Path Manipulation    | *  Enabler for other | *  Control and      |
   |                      |    attacks           |    signaling        |
   |                      |                      |    message          |
   |                      |                      |    protection       |
   +----------------------+----------------------+---------------------+
   | Path Choice:         | *  All impacts of    | *  Control and      |
   | Increased Attack     |    other attacks     |    signaling        |
   | Surface              |                      |    message          |
   |                      |                      |    protection       |
   +----------------------+----------------------+---------------------+
   | Control or Signaling | *  Increased         | *  Control and      |
   | Packet Modification  |    resource          |    signaling        |
   |                      |    consumption       |    message          |
   |                      |                      |    protection       |
   |                      | *  Non-deterministic |                     |
   |                      |    delay             |                     |
   |                      |                      |                     |
   |                      | *  Data disruption   |                     |
   +----------------------+----------------------+---------------------+
   | Control or Signaling | *  Increased         | *  Control and      |
   | Packet Injection     |    resource          |    signaling        |
   |                      |    consumption       |    message          |
   |                      |                      |    protection       |
   |                      | *  Non-deterministic |                     |
   |                      |    delay             |                     |
   |                      |                      |                     |
   |                      | *  Data disruption   |                     |
   +----------------------+----------------------+---------------------+
   | Attacks on Time-     | *  Non-deterministic | *  Path redundancy  |
   | Synchronization      |    delay             |                     |
   | Mechanisms           |                      | *  Control and      |
   |                      | *  Increased         |    signaling        |
   |                      |    resource          |    message          |
   |                      |    consumption       |    protection       |
   |                      |                      |                     |
   |                      | *  Data disruption   | *  Performance      |
   |                      |                      |    analytics        |
   +----------------------+----------------------+---------------------+

             Table 3: Mapping Attacks to Impact and Mitigations

8. Association of Attacks to Use Cases โœจ

Okay bestie, different attacks can hit differently (and need different mitigations) depending on what the network is actually for ๐ŸŽ€. There's basically an unbounded list of use cases, so we group the attacks by the common themes of those use cases, the ones identified in Section 11 of [RFC8578] ๐Ÿ’….

Also check out Table 2 for a mapping of the impact of attacks per use case by industry ๐ŸŒธ.


8.1. Association of Attacks to Use Case Common Themes

We go theme by theme ๐Ÿฆ‹. For each one we look at the attacks that apply, plus anything specific about their impact and mitigations for that theme. Table 5, Mapping between Themes and Attacks, is the cheat sheet that sums up which attacks apply to each theme ๐Ÿ“‹.

8.1.1. Sub-network Layer

DetNet is expected to run over various transmission mediums, and Ethernet is the first one identified ๐Ÿ”Œ. Attacks like Delay or Reconnaissance might be implemented differently on a different medium, but the impact on DetNet as a whole would be essentially the same, ngl ๐Ÿ™ˆ. So we conclude that all attacks and impacts that apply to DetNet over Ethernet (aka all those named in this document) would also apply to DetNet over other transmission mediums ๐Ÿ’œ.

Mitigations are a different story ๐Ÿ˜ญ. Some methods are specific to Ethernet. For example, time-aware scheduling using 802.1Qbv [IEEE802.1Qbv-2015] can protect against excessive use of bandwidth at the ingress. For other mediums, other mitigations would have to be implemented to provide analogous protection ๐Ÿ› ๏ธ.

8.1.2. Central Administration

A DetNet network can be controlled by a centralized network configuration and control system ๐Ÿ›๏ธ. That system might live in one central location, or it might be spread across multiple control entities that work together as one unified control system ๐ŸŒ.

All attacks named in this document that are relevant to controller plane packets (and the controller itself) are relevant to this theme ๐Ÿ‘‘. That includes Path Manipulation, Path Choice, Control Packet Modification or Injection, Reconnaissance, and Attacks on Time-Synchronization Mechanisms ๐Ÿ•ฐ๏ธ.

8.1.3. Hot Swap

A DetNet network is not expected to be "plug and play" ๐Ÿ™…. It is expected that there's some centralized network configuration and control system. Still, the ability to "hot swap" components (e.g., due to malfunction) is similar enough to "plug and play" that this kind of behavior may be expected in DetNet networks, depending on the implementation โœจ.

Here's the attack surface ๐Ÿ˜ณ: the DetNet network must at least consider input at runtime from components that were not part of the initial configuration of the network. Even a "perfect" (or "hitless") replacement of a component at runtime would not necessarily be ideal, since presumably one would want to distinguish it from the original for OAM purposes (e.g., to report hot swap of a failed component) ๐Ÿง.

This implies that an attack such as Flow Modification, Spoofing, or Inter-segment (which could introduce packets from a "new" component, i.e., one heretofore unknown on the network) could be used to exploit the need to consider such packets. The alternative would be rejecting them out of hand, as one would do if one did not have to consider introduction of a new component ๐Ÿ•ต๏ธโ€โ™€๏ธ.

To mitigate this, deployments should provide a method for dynamic and secure registration of new components, and (possibly manual) deregistration and re-keying of retired components ๐Ÿ”. That way the network doesn't have to accommodate potentially insecure packet flows from unknown components ๐Ÿ™Œ.

Similarly, if the network was designed to support runtime replacement of a clock component, then presence (or apparent presence) of a new such component, and the resulting consideration of its packets, could affect the network or its time synchronization. For example, it could initiate a new Best Master Clock selection process โฐ. These types of attacks should therefore be considered when designing hot-swap-type functionality (see [RFC7384]) ๐Ÿ’–.

8.1.4. Data Flow Information Models

DetNet specifies new YANG data models [DETNET-YANG] that may present new attack surfaces ๐Ÿงฉ. Per IETF guidelines, security considerations for any YANG data model are expected to be part of the YANG data model specification, as described in [IETF-YANG-SEC] ๐Ÿ“œ.

8.1.5. L2 and L3 Integration

A DetNet network integrates Layer 2 (bridged) networks (e.g., AVB/TSN LAN) and Layer 3 (routed) networks (e.g., IP) using well-known protocols like IP, MPLS Pseudowire, and Ethernet ๐ŸŒ‰. Various DetNet documents cover many specific aspects of L2 and L3 integration. These aren't individually referenced here, and their security considerations live within those documents or within the related subsections of the present document ๐Ÿ“š.

Please note ๐Ÿšจ: although there are no entries in the L2 and L3 Integration line of the Mapping between Themes and Attacks table (Table 5), this does not imply that there could be no relevant attacks related to L2-L3 integration.

8.1.6. End-to-End Delivery

Packets that are part of a resource-reserved DetNet flow are not to be dropped by the DetNet due to congestion ๐Ÿšซ. Packets may, however, be dropped for intended reasons, for example security measures ๐Ÿ›ก๏ธ. Consider a packet that becomes corrupted (whether incidentally or maliciously) such that the resulting flow ID incidentally matches the flow ID of another DetNet flow. That could result in additional unauthorized traffic on the latter. In such a case, it may be a security requirement that the system report and/or take some defined action, perhaps when a packet drop count threshold has been reached (see also Section 7.7) ๐Ÿšจ.

A data plane attack may force packets to be dropped, for example as a result of a Delay attack, Replication/Elimination attack, or Flow Modification attack ๐Ÿ’ฅ. The same result might be obtained by a Controller plane attack, e.g., Path Manipulation or Signaling Packet Modification ๐ŸŽฏ.

An attack may also cause packets that should not be delivered to be delivered ๐Ÿ˜ฑ. For example, it could force packets from one (e.g., replicated) path to be preferred over another path when they should not be (Replication attack). It could also do this by Flow Modification, Path Choice, or Packet Injection. A Time-Synchronization attack could cause a system that was expecting certain packets at certain times to accept unintended packets, based on compromised system time or time windowing in the scheduler โณ.

8.1.7. Replacement for Proprietary Fieldbuses and Ethernet-Based Networks

There are many proprietary "fieldbuses" used in Industrial and other industries, plus proprietary non-interoperable deterministic Ethernet-based networks ๐Ÿญ. DetNet is intended to provide an open-standards-based alternative to these buses and networks ๐ŸŒˆ. When a DetNet intersects with such fieldbuses/networks or their protocols (by protocol emulation or access via a gateway, say), new attack surfaces can open up ๐Ÿšช.

For example, an Inter-segment or Controller plane attack such as Path Manipulation, Path Choice, or Control Packet Modification/Injection could be used to exploit commands specific to such a protocol. It could also exploit commands that are interpreted differently by the different protocols or gateway ๐ŸŽญ.

8.1.8. Deterministic vs. Best-Effort Traffic

Most themes in this document are about OT (reserved) DetNet flows. This one is about IT traffic on a DetNet ๐Ÿ’ผ.

DetNet is intended to support coexistence of time-sensitive operational (OT, deterministic) traffic and informational (IT, "best effort") traffic on the same ("unified") network ๐Ÿค. With DetNet, this coexistence will become more common, so mitigations will need to be established ๐Ÿ”ง. The fact that IT traffic on a DetNet is limited to a corporate-controlled network makes this a less difficult problem than being exposed to the open Internet. Still, this aspect of DetNet security should not be underestimated ๐Ÿ‘€.

An Inter-segment attack can flood the network with IT-type traffic, aiming to disrupt the handling of IT traffic and/or to interfere with OT traffic ๐ŸŒŠ. Presumably, if the DetNet flow reservation and isolation of the DetNet is well designed (better-designed than the attack), then interference with OT traffic should not result from an attack that floods the network with IT traffic ๐Ÿ›ก๏ธ.

The handling of IT traffic (i.e., traffic that by definition is not guaranteed any given deterministic service properties) by the DetNet will by definition not be given the DetNet-specific protections provided to DetNet (resource-reserved) flows ๐Ÿ™ƒ. So IT traffic on the DetNet network will necessarily have its own specific set of product (component or system) requirements for protection against attacks such as DoS. Presumably those will be less stringent than the ones for OT flows. Even so, component and system designers must still employ whatever mitigations will meet the specified security requirements for IT traffic for the given component or DetNet ๐Ÿงฐ.

The network design as a whole also needs to consider possible application-level dependencies of OT-type applications on services provided by the IT part of the network. For example, does the OT application depend on IT network services such as DNS or OAM? If such dependencies exist, how are malicious packet flows handled? Such considerations are typically outside the scope of DetNet proper, but they still need to be addressed in the overall DetNet network design for a given use case ๐Ÿง .

8.1.9. Deterministic Flows

Reserved bandwidth data flows (deterministic flows) must provide the allocated bandwidth and must be isolated from each other ๐Ÿ”’.

A Spoofing or Inter-segment attack that adds packet traffic to a bandwidth-reserved DetNet flow could cause that flow to occupy more bandwidth than it was allocated, resulting in interference with other DetNet flows ๐Ÿ˜ค.

A Flow Modification, Spoofing, Header Manipulation, or Control Packet Modification attack could cause packets from one flow to be directed to another flow, thus breaching isolation between the flows ๐Ÿ’”.

8.1.10. Unused Reserved Bandwidth

If bandwidth reservations are made for a DetNet flow but the associated bandwidth is not used at any point in time, that bandwidth is made available on the network for best-effort traffic ๐ŸŒค๏ธ. However, security considerations for best-effort traffic on a DetNet network are out of scope of the present document, provided that any such attacks on best-effort traffic do not affect performance for DetNet OT traffic ๐Ÿ“.

8.1.11. Interoperability โœจ

Okay so the big dream of DetNet is an ecosystem where lots of vendors can build products that actually play nicely together ๐Ÿซถ That means more component diversity and potentially higher numbers of each component manufactured. The security measures and protocols in this document are meant to encourage that interoperability too ๐Ÿ’œ

Here's the tea: if the DetNet specifications are unambiguously written and the implementations are accurate, interoperability by itself should not cause security concerns ๐Ÿ™ˆ The catch is that flaws in interoperability between components could lead to security weaknesses. The network operator, plus the system and component designers, can all help reduce those weaknesses through interoperability testing โœ…

8.1.12. Cost Reductions ๐Ÿ’ธ

The DetNet network specifications are meant to enable an ecosystem where multiple vendors can create interoperable products. That means higher numbers of each component manufactured, which promotes cost reduction and cost competition among vendors. Iconic for the wallet ๐Ÿค‘

This big, breezy range of DetNet-enabled products is generally a positive thing โœจ BUT implementation flaws in any individual component can present an attack surface ๐Ÿ˜ฌ Even scarier, implementation differences between components from different vendors can create attack surfaces that only show up when they interact, and those might not exist in any single component on its own ๐Ÿ’€

Network operators can mitigate these concerns through sufficient product and interoperability testing ๐Ÿงช

8.1.13. Insufficiently Secure Components ๐Ÿšง

The DetNet network specifications are meant to enable an ecosystem where multiple vendors can create interoperable products, promoting component diversity and potentially higher numbers of each component manufactured. Love that for everyone ๐ŸŒˆ

However, this opens the door to a vendor repurposing a hardware or software component for DetNet applications that was originally designed for an isolated OT network. That component may not have been designed to be sufficiently secure, or secure at all, against the sorts of attacks described in this document ๐Ÿ˜ญ Putting a component like that on a DetNet network that's supposed to be highly secure may present an attack surface. So the DetNet network operator may need to take specific actions to protect it, like implementing a secure interface (such as a firewall) to isolate the component from the threats that may be lurking in the greater network ๐Ÿ”ฅ

8.1.14. DetNet Network Size ๐Ÿ“

DetNet networks come in all sizes ๐Ÿฆ‹ They range from very small, e.g., inside a single industrial machine, to very large, e.g., a Utility Grid network spanning a whole country. Wild range, bestie ๐ŸŒ

The size of the network might be related to how an attack gets introduced. For example, if the entire network is local, there's a threat that power can be cut to the whole thing โšก If the network is large, maybe only a part of it gets attacked, which is a very different situation ๐Ÿค”

A Delay attack might be just as relevant to a small network as to a large one, although the amount of delay might be different โฑ๏ธ

Attacks sourced from IT traffic might be more likely in large networks, since more people might have access to the network. That's a bigger attack surface ๐Ÿ‘€ Similarly, Path Manipulation, Path Choice, and Time-Synchronization attacks seem more likely to be relevant to large networks.

8.1.15. Multiple Hops ๐Ÿ›ฐ๏ธ

Large DetNet networks (e.g., a Utility Grid network) may involve many "hops" over various kinds of links, like radio repeaters, microwave links, fiber optic links, etc. So many hops, so many chances for things to go sideways ๐Ÿ˜ตโ€๐Ÿ’ซ

An attacker who knows how a component or device's internal software works (like its "device drivers") may be able to use that knowledge to design an attack. That attack could exploit flaws in the communication between the various links, or even the specifics of normal operation ๐Ÿ•ต๏ธโ€โ™€๏ธ

It's also possible that a large-scale DetNet topology containing various kinds of links isn't as commonly used as more homogeneous topologies. That situation may give attackers more opportunity to exploit software and/or protocol flaws in or between these components, because those components or configurations may not have been sufficiently tested for interoperability the way they would be with broad usage. This may be of particular concern to early adopters of new DetNet components or technologies ๐Ÿฅบ

Of the attacks we've defined, the ones identified in Section 8.1.14 as germane to large networks are the most relevant ๐Ÿ‘‘

8.1.16. Level of Service ๐ŸŽ€

A DetNet is expected to provide ways to configure the network, including querying network path latency, requesting bounded latency for a given DetNet flow, requesting worst-case maximum and/or minimum latency for a given path or DetNet flow, and so on. Very "I want my order exactly how I asked for" energy ๐Ÿ“

It's an expected case that the network cannot provide a given requested service level. In that situation, the network control system should reply that the requested service level is not available. The alternative would be accepting the parameter and then not delivering the desired behavior, which is so not it ๐Ÿ™…โ€โ™€๏ธ

Controller plane attacks such as Signaling Packet Modification and Injection could be used to modify or create control traffic. That could interfere with a user requesting a level of service and/or with the reply from the network ๐Ÿ˜ค

Reconnaissance could be used to characterize flows and perhaps target specific flows for attack via the controller plane, as noted in Section 6.7 ๐Ÿ”

8.1.17. Bounded Latency โฐ

DetNet provides the expectation of guaranteed bounded latency. Promise energy ๐Ÿ’…

Delay attacks can cause packets to miss their agreed-upon latency boundaries. Not a vibe ๐Ÿ’€

Time-Synchronization attacks can corrupt the time reference of the system. That can result in missed latency deadlines, measured with respect to the "correct" time reference ๐Ÿซ 

8.1.18. Low Latency ๐Ÿƒโ€โ™€๏ธ๐Ÿ’จ

Applications may require "extremely low latency." Depending on the application, though, these can mean very different latency values ๐Ÿง For example, "low latency" across a Utility Grid network is on a totally different time scale than "low latency" in a motor control loop in a small machine. The intent is that the mechanisms for specifying desired latency include wide ranges. Architecturally, there's nothing to prevent arbitrarily low latencies from being implemented in a given network ๐Ÿš€

Attacks on the controller plane (as described in the Level of Service theme; see Section 8.1.16) and Delay and Time attacks (as described in the Bounded Latency theme; see Section 8.1.17) both apply here ๐Ÿ™Œ

8.1.19. Bounded Jitter (Latency Variation) ๐ŸŽข

DetNet is expected to provide bounded jitter, which is packet-to-packet latency variation. Steady and predictable, please ๐Ÿฅน

Delay attacks can cause packets to vary in their arrival times. That results in packet-to-packet latency variation, which violates the jitter specification ๐Ÿ˜ฉ

8.1.20. Symmetrical Path Delays โš–๏ธ

Some applications would like to specify that the transit delay time values be equal for both the transmit and return paths. Fair is fair ๐Ÿค

Delay attacks can cause path delays to materially differ between paths ๐Ÿ˜ค

Time-Synchronization attacks can corrupt the time reference of the system. That can result in path delays that may be perceived to be different, with respect to the "correct" time reference, even if they are not materially different ๐ŸŒ€

8.1.21. Reliability and Availability ๐Ÿ›ก๏ธ

DetNet-based systems are expected to be implemented with essentially arbitrarily high availability. Think 99.9999% up time, or even 12 nines. Iconic, honestly ๐Ÿ‘‘ The intent is that DetNet designs should not make any assumptions about the level of reliability and availability that may be required of a given system. They should define parameters for communicating these kinds of metrics within the network ๐Ÿ“Š

Any attack on the system, of any type, can affect its overall reliability and availability. So in the mapping table (Table 5), we've marked every attack. Since every DetNet depends to a greater or lesser degree on reliability and availability, this basically means all networks have to mitigate all attacks. That kind of defeats the purpose of associating attacks with use cases, ngl ๐Ÿ˜ญ It also underscores how hard it is to design "extremely high reliability" networks ๐Ÿฅฒ

In practice, network designers can adopt a risk-based approach, where only those attacks are mitigated whose potential cost is higher than the cost of mitigation ๐Ÿงฎ

8.1.22. Redundant Paths ๐Ÿ”€

This document expects that each DetNet system will be implemented to some essentially arbitrary level of reliability and/or availability, depending on the use case. One strategy DetNet uses for extraordinarily high levels of reliability, when justified, is providing redundant paths. Traffic can be seamlessly switched between them while still maintaining the required performance of that system ๐Ÿฆ‹

Replication-related attacks are by definition applicable here. Controller plane attacks can also interfere with the configuration of redundant paths ๐Ÿ™ˆ

8.1.23. Security Measures ๐Ÿ”

If any of the security mechanisms that protect the DetNet are attacked or subverted, this can result in malfunction of the network. So the security systems themselves need to be robust against attacks ๐Ÿ’ช

The general topic of protecting security mechanisms isn't unique to DetNet. It's identical to the case of securing any security mechanism for any network. This document only addresses these concerns to the extent that they're unique to DetNet ๐Ÿง 

8.2. Summary of Attack Types per Use Case Common Theme

Okay so this part is basically the big cheat sheet ๐Ÿ“‹๐Ÿ’– The List of Attacks table (Table 4) lists the attacks from Section 5, Security Threats, and gives each one a number ๐Ÿ”ข That number then becomes the short form ID for the attack in Table 5, Mapping between Themes and Attacks ๐Ÿฆ‹

     +====+============================================+
     |    | Attack                                     |
     +====+============================================+
     | 1  | Delay Attack                               |
     +----+--------------------------------------------+
     | 2  | DetNet Flow Modification or Spoofing       |
     +----+--------------------------------------------+
     | 3  | Inter-segment Attack                       |
     +----+--------------------------------------------+
     | 4  | Replication: Increased Attack Surface      |
     +----+--------------------------------------------+
     | 5  | Replication-Related Header Manipulation    |
     +----+--------------------------------------------+
     | 6  | Path Manipulation                          |
     +----+--------------------------------------------+
     | 7  | Path Choice: Increased Attack Surface      |
     +----+--------------------------------------------+
     | 8  | Control or Signaling Packet Modification   |
     +----+--------------------------------------------+
     | 9  | Control or Signaling Packet Injection      |
     +----+--------------------------------------------+
     | 10 | Reconnaissance                             |
     +----+--------------------------------------------+
     | 11 | Attacks on Time-Synchronization Mechanisms |
     +----+--------------------------------------------+

                   Table 4: List of Attacks

The Mapping between Themes and Attacks table (Table 5) is the fun part ๐ŸŒˆ It maps the use case themes from [RFC8578] (which are also listed in this document) onto the attacks in Table 4. Each row is a theme, and the attacks that matter for that theme are marked with a "+" โœจ If a theme has no threats attached, it's still in the table so the list of Use Case Common Themes is complete, but those rows don't have any DetNet-specific threats tied to them ๐Ÿ™ˆ

+====================+=============================================+
|       Theme        |                    Attack                   |
|                    +===+===+===+===+===+===+===+===+===+====+====+
|                    | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
+====================+===+===+===+===+===+===+===+===+===+====+====+
| Network Layer -    | + | + | + | + | + | + | + | + | + | +  | +  |
| AVB/TSN Eth.       |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Central            |   |   |   |   |   | + | + | + | + | +  | +  |
| Administration     |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Hot Swap           |   | + | + |   |   |   |   |   |   |    | +  |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Data Flow          |   |   |   |   |   |   |   |   |   |    |    |
| Information Models |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| L2 and L3          |   |   |   |   |   |   |   |   |   |    |    |
| Integration        |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| End-to-End         | + | + | + | + | + | + | + | + |   | +  |    |
| Delivery           |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Proprietary        |   |   | + |   |   | + | + | + | + |    |    |
| Deterministic      |   |   |   |   |   |   |   |   |   |    |    |
| Ethernet Networks  |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Replacement for    |   |   | + |   |   |   |   |   |   |    |    |
| Proprietary        |   |   |   |   |   |   |   |   |   |    |    |
| Fieldbuses         |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Deterministic vs.  | + | + | + |   | + | + |   | + |   |    |    |
| Best-Effort        |   |   |   |   |   |   |   |   |   |    |    |
| Traffic            |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Deterministic      | + | + | + |   | + | + |   | + |   |    |    |
| Flows              |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Unused Reserved    |   | + | + |   |   |   |   | + | + |    |    |
| Bandwidth          |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Interoperability   |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Cost Reductions    |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Insufficiently     |   |   |   |   |   |   |   |   |   |    |    |
| Secure Components  |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| DetNet Network     | + |   |   |   |   | + | + |   |   |    | +  |
| Size               |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Multiple Hops      | + | + |   |   |   | + | + |   |   |    | +  |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Level of Service   |   |   |   |   |   |   |   | + | + | +  |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Bounded Latency    | + |   |   |   |   |   |   |   |   |    | +  |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Low Latency        | + |   |   |   |   |   |   | + | + |    | +  |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Bounded Jitter     | + |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Symmetric Path     | + |   |   |   |   |   |   |   |   |    | +  |
| Delays             |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Reliability and    | + | + | + | + | + | + | + | + | + | +  | +  |
| Availability       |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Redundant Paths    |   |   |   | + | + |   |   | + | + |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+
| Security Measures  |   |   |   |   |   |   |   |   |   |    |    |
+--------------------+---+---+---+---+---+---+---+---+---+----+----+

            Table 5: Mapping between Themes and Attacks

9. Security Considerations for OAM Traffic ๐Ÿ”

This section looks at DetNet-specific security considerations for packet traffic that gets generated and sent over a DetNet as part of OAM (Operations, Administration, and Maintenance) ๐Ÿ› ๏ธ For this discussion, OAM traffic comes in one of two basic flavours:

  • OAM traffic generated by the network itself. The extra bandwidth these packets need is added by the network administration, and it's presumably invisible to the customer ๐Ÿ‘€ Security considerations for this kind of traffic aren't DetNet specific (apart from it being subject to the same DetNet-specific security considerations as any other DetNet data flow), so this document doesn't cover them.
  • OAM traffic generated by the customer. From a DetNet security point of view, the considerations for this traffic are exactly the same as for any other customer data flow ๐Ÿ’…

From an attacker's point of view, OAM traffic looks exactly like DetNet traffic, so the network has to be secure against injection, removal, or modification of traffic of any kind, OAM included ๐Ÿšจ A DetNet is super sensitive to any form of packet injection, removal, or manipulation, and DetNet OAM traffic is no different. The techniques for securing a DetNet against these threats were covered elsewhere in this document ๐Ÿซถ

10. DetNet Technology-Specific Threats ๐Ÿงš

Section 5, Security Threats, describes threats that don't depend on any particular DetNet implementation. This section is about threats that are specific to the IP- and MPLS-specific parts of DetNet implementations ๐Ÿ’œ

The main security goals for the data plane specifically are keeping the data intact and keeping the delivery of the associated DetNet service going across the DetNet network ๐Ÿ›ก๏ธ

The biggest differences between IP and MPLS implementations are in flow identification and OAM methodologies ๐ŸŒธ

As noted in [RFC8655], DetNet operates at the IP layer [RFC8939] and delivers service over sub-layer technologies such as MPLS [RFC8964] and IEEE 802.1 Time-Sensitive Networking (TSN) [RFC9023] โœจ Application flows can be protected by whatever means the layer and sub-layer technologies provide. For example, technology-specific encryption can be used for IP flows (IPsec [RFC4301]). For IP-over-Ethernet (Layer 2) flows using an underlying sub-net, MACsec [IEEE802.1AE-2018] may be appropriate. For some use cases, packet integrity protection without encryption may be enough ๐Ÿฆ‹

Here's the tricky bit ๐Ÿ˜ญ If the DetNet nodes can't decrypt IPsec traffic, then DetNet flow identification for encrypted IP traffic flows has to be done differently than it would be for unencrypted IP DetNet flows. The DetNet IP data plane identifies unencrypted flows with a 6-tuple: two IP addresses, the transport protocol ID, two transport protocol port numbers, and the DSCP in the IP header. When IPsec is used, the transport header is encrypted and the next protocol ID is an IPsec protocol, usually Encapsulating Security Payload (ESP), not a transport protocol. That leaves only three parts of the 6-tuple: the two IP addresses and the DSCP ๐Ÿฅบ If the IPsec sessions are set up by a controller, that controller could also send the Security Parameter Index (SPI) in the clear, so the SPI could be used (alongside the pair of IP addresses) for flow identification ๐Ÿ”‘ Identification of DetNet flows over IPsec is discussed further in Section 5.1.2.3 of [RFC8939] ๐Ÿ“š

Sections below dig into threats specific to IP and MPLS in more detail ๐Ÿ’…๐ŸŽ€

Okay bestie, let's get into the security stuff, it's giving serious and I'm here for it ๐Ÿฆ‹

10.1. IP โœจ

Okay so IP has a LONG history of security stuff and built-in protection mechanisms ๐Ÿ’… From the data plane point of view, DetNet doesn't add or change any IP header info, so carrying DetNet traffic over an IP data plane doesn't bring in any new security issues that weren't already there ๐ŸŽ€ The only exceptions are the ones already covered in the data-plane-independent threats section (Section 5) ๐ŸŒธ

So basically, the security for a DetNet that runs on an IP data plane is totally inherited from the huge pile of IP security research, code, and apps, plus the data-plane-independent section of this doc ๐Ÿ’–

Keeping IP segments secure can be trickier than MPLS segments, ngl ๐Ÿ˜ญ IP segments can reach the edges of the network, and those edges are way more likely to meet sketchy outside actors ๐Ÿ’€ Meanwhile, MPLS is inherently more secure than IP because it lives inside routers, and everyone knows how to protect it from outside influence ๐Ÿ”ฅ

Another way to think about DetNet IP security is to look at it like VPN security ๐Ÿงš We have tons of experience running VPNs through networks that have other VPNs, and it's well known how to secure that ๐Ÿ’œ BUT here's the twist: for DetNet, any interaction between one packet and another could mess with the timing properties of the flows, and that's the vibe-killer ๐Ÿ™ˆ So the network has to provide enough isolation between flows, for example by protecting forwarding bandwidth and related resources so they're there for DetNet traffic, using whatever is appropriate for that network's data plane, like queuing mechanisms ๐Ÿฆ‹

In a VPN, bandwidth is usually guaranteed over a period of time, but in DetNet it isn't aggregated over time ๐Ÿ“ That means any VPN-style protection mechanism also has to keep the DetNet timing constraints intact ๐Ÿ‘‘

10.2. MPLS โœจ

An MPLS network carrying DetNet traffic is expected to be a "well-managed" network ๐Ÿ’… So it's pretty hard for an attacker to shove a raw MPLS-encoded packet into the network, because operators are super experienced at kicking those packets out at the network boundaries, and at stopping MPLS packets from being slipped in through a tunnel ๐Ÿซถ

MPLS security is discussed extensively in [RFC5920] ("Security Framework for MPLS and GMPLS Networks"), so go read that if you want the full tea ๐ŸŒˆ

[RFC6941] builds on [RFC5920] and adds more security considerations for the MPLS-TP extensions from the MPLS Transport Profile [RFC5921], which means it's relevant for running DetNet over some types of MPLS network โญ

[RFC5921] brings new Operations, Administration, and Maintenance (OAM) capabilities to MPLS ๐ŸŽ€ It also has a transport-oriented path protection mechanism, and it puts heavy emphasis on static provisioning supported by network management systems ๐ŸŒธ

Running DetNet over an MPLS network builds on MPLS and pseudowire encapsulation ๐Ÿงš So for guidance on securing the DetNet parts of DetNet over MPLS, check the security considerations of [RFC4385], [RFC5586], [RFC3985], [RFC6073], and [RFC6478] ๐Ÿ’–

Okay, so once we've handled the regular network security stuff, we have to deal with the dynamic side too ๐Ÿ”ฅ The closest the IETF has come to securing protocols that are sensitive to delay manipulation is the two-way time transfer (TWTT) protocols, which are NTP [RFC5905] and the Precision Time Protocol [IEEE1588] ๐Ÿฆ‹ The security requirements for those are described in [RFC7384] ๐Ÿ’œ

One particular problem seen in operational tests of TWTT protocols is that two flows that are close to synchronized, but not quite, can beat against each other and cause a sudden phase hit to one of the flows ๐Ÿ’€ This can be mitigated by carefully using a scheduling system in the underlying packet transport ๐Ÿซถ

There are some investigations into protecting MPLS systems against dynamic attacks, like [MPLS-OPP-ENCRYPT], and hopefully DetNet deployments will encourage even more of that ๐ŸŒˆโœจ


11. IANA Considerations ๐ŸŽ€

This document has no IANA actions ๐Ÿ’…

12. Security Considerations ๐Ÿ”ฅ

The security considerations of DetNet networks are presented throughout this document ๐Ÿ’–

13. Privacy Considerations ๐Ÿงš

Privacy in DetNet is maintained by the base technologies used for DetNet and user traffic ๐Ÿฆ‹ For example, TSN can use MACsec, IP can use IPsec, and applications can use IP transport protocol-provided methods like TLS and DTLS ๐ŸŒธ MPLS typically uses L2/L3 VPNs combined with the privacy methods we just mentioned ๐Ÿ’œ

BUT note that reconnaissance threats like traffic analysis and monitoring of electrical side channels can still create privacy considerations even when traffic is encrypted ๐Ÿ˜ญ๐Ÿ™ˆ

14. References ๐Ÿ“š

14.1. Normative References ๐Ÿ’œ

14.2. Informative References ๐ŸŒˆ


Contributors ๐Ÿซถ

The Editor wants to give a huge shout-out to the following individuals for their contributions to this document ๐Ÿ’–

Stewart Bryant

Futurewei Technologies

Email: sb@stewartbryant.com

David Black

Dell EMC
176 South Street
Hopkinton, Massachusetts 01748
United States of America

Henrik Austad

SINTEF Digital
Klaebuveien 153
7037 Trondheim
Norway

Email: henrik@austad.us

John Dowdell

Airbus Defence and Space
Celtic Springs
Newport, NP10 8FZ
United Kingdom

Email: john.dowdell.ietf@gmail.com

Norman Finn

3101 Rio Way
Spring Valley, California 91977
United States of America

Email: nfinn@nfinnconsulting.com

Subir Das

Applied Communication Sciences
150 Mount Airy Road
Basking Ridge, New Jersey 07920
United States of America

Email: sdas@appcomsci.com

Carsten Bormann

Universitat Bremen TZI
Postfach 330440 D-28359 Bremen
Germany

Email: cabo@tzi.org

Authors' Addresses ๐Ÿ’œ

Ethan Grossman (editor)

Dolby Laboratories, Inc.
1275 Market Street
San Francisco, CA 94103
United States of America

Email: ethan@ieee.org
URI:   https://www.dolby.com

Tal Mizrahi

Huawei

Email: tal.mizrahi.phd@gmail.com

Andrew J. Hacker

Thought LLC
Harrisburg, PA
United States of America

Email: andrew@thought.live
๐Ÿ“ฆ where this page comes from