idnits 2.17.1 draft-ietf-opsec-ns-impact-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 65 has weird spacing: '...ecurity and S...' == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (June 23, 2020) is 1401 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 5246 (Obsoleted by RFC 8446) == Outdated reference: A later version (-18) exists of draft-ietf-tls-esni-05 Summary: 1 error (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 OPSEC Working Group N. Cam-Winget 3 Internet-Draft E. Wang 4 Intended status: Informational Cisco Systems, Inc. 5 Expires: December 25, 2020 R. Danyliw 6 Software Engineering Institute 7 R. DuToit 8 Broadcom 9 June 23, 2020 11 Impact of TLS 1.3 to Operational Network Security Practices 12 draft-ietf-opsec-ns-impact-00 14 Abstract 16 Network-based security solutions are used by enterprises, the public 17 sector, internet-service providers, and cloud-service providers to 18 both complement and enhance host-based security solutions. As TLS is 19 a widely deployed protocol to secure communication, these network- 20 based security solutions must necessarily interact with it. This 21 document describes this interaction for current operational security 22 practices and notes the impact of TLS 1.3 on them. 24 Status of This Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF). Note that other groups may also distribute 31 working documents as Internet-Drafts. The list of current Internet- 32 Drafts is at https://datatracker.ietf.org/drafts/current/. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 This Internet-Draft will expire on December 25, 2020. 41 Copyright Notice 43 Copyright (c) 2020 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (https://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the Simplified BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 59 2. Conventions and Definitions . . . . . . . . . . . . . . . . . 3 60 3. How TLS is used to enable Network-Based Security Solutions . 4 61 3.1. Passive TLS Inspection . . . . . . . . . . . . . . . . . 5 62 3.1.1. OP-1. Acceptable Use Policy (AUP) Enforcement (via 63 header inspection). . . . . . . . . . . . . . . . . . 6 64 3.1.2. OP-2. Network Behavior Analytics . . . . . . . . . . 6 65 3.1.3. OP-3. Crypto, Security and Security Policy 66 Compliance (server) . . . . . . . . . . . . . . . . . 7 67 3.1.4. OP-4. Crypto and Security Policy Compliance (client) 7 68 3.2. Outbound TLS Proxy . . . . . . . . . . . . . . . . . . . 8 69 3.2.1. OP-5: Acceptable Use Policy (AUP) Enforcement (via 70 payload inspection) . . . . . . . . . . . . . . . . . 9 71 3.2.2. OP-6: Data Loss Prevention Compliance . . . . . . . . 9 72 3.2.3. OP-7: Granular Network Segmentation . . . . . . . . . 9 73 3.2.4. OP-8: Network-based Threat Protection (client) . . . 9 74 3.2.5. OP-9: Protecting Challenging End Points . . . . . . . 10 75 3.2.6. OP-10: Content Injection . . . . . . . . . . . . . . 10 76 3.3. Inbound TLS Proxy . . . . . . . . . . . . . . . . . . . . 10 77 3.3.1. OP-11: TLS offloading . . . . . . . . . . . . . . . . 11 78 3.3.2. OP-12. Content distribution and application load 79 balancing . . . . . . . . . . . . . . . . . . . . . . 12 80 3.3.3. OP-13: Network-based Threat Protection (server) . . . 12 81 3.3.4. OP-14: Full Packet Capture . . . . . . . . . . . . . 12 82 3.3.5. OP-15: Application Layer Gateway (ALG) . . . . . . . 13 83 4. Changes in TLS v1.3 Relevant to Security Operations . . . . . 13 84 4.1. Perfect Forward Secrecy (PFS) . . . . . . . . . . . . . . 13 85 4.2. Encrypted Server Certificate . . . . . . . . . . . . . . 13 86 5. Security Considerations . . . . . . . . . . . . . . . . . . . 14 87 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14 88 7. Appendix A: Summary Impact to Operational Practices with TLS 89 1.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 90 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 15 91 8.1. Normative References . . . . . . . . . . . . . . . . . . 15 92 8.2. Informative References . . . . . . . . . . . . . . . . . 16 93 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 17 94 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 96 1. Introduction 98 Enterprises, public sector organizations, internet service providers 99 and cloud service providers defend their networks and information 100 systems from attacks that originate from inside and outside their 101 networks. These organizations commonly employ security architectures 102 that involve complementary technologies deployed on both endpoints 103 and in the network; and collaborative watch-and-warning practices to 104 realize this defense. 106 The design of these security architectures and associated practices 107 entails numerous trade-offs. Typically, there is more than one 108 technical approach to realize a particular mitigation, although 109 comparable approaches may have different costs or side-effects. 110 Network-based solutions are often attractive to network 111 administrators because a single network device can: 113 o provide protection to many hosts and systems at once 115 o protect systems regardless of their type (e.g., fully patched 116 desktop systems on a modern operating system; unpatched function- 117 specific industrial control system) 119 o enforce policy on a system even if it is compromised, 120 misconfigured, not under configuration control or had its endpoint 121 protection disabled 123 o be managed (e.g. updates) and provisioned with resources (e.g. 124 disk and computing) independent of the systems it is protecting 126 In response to the adoption of new technologies, protocols and 127 threats, these security architectures must evolve to remain 128 effective. [RFC8404] documented such a need with the effect of 129 pervasive encryption on operations. This document takes a narrower 130 focus by documenting the interaction of existing network-based 131 security practices with TLS v1.2 [RFC5246] (and earlier) traffic to 132 implement security policy, detection or mitigation of threats; and 133 the impact on these practices with improvements made in TLS v1.3 134 [RFC8446]. 136 2. Conventions and Definitions 138 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 139 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 140 "OPTIONAL" in this document are to be interpreted as described in BCP 141 14 [RFC2119] [RFC8174] when, and only when, they appear in all 142 capitals, as shown here. 144 Specific operational practices are numbered as "OP-##", operational 145 practice 1 (i.e., OP-1), 2 (i.e., OP-2), etc. 147 3. How TLS is used to enable Network-Based Security Solutions 149 Network-based security solutions come in many forms, most commonly as 150 Firewalls, Web Proxies, Intrusion Detection Systems (IDS), Intrusion 151 Prevention Systems (IPS) and Network Security Visibility and 152 Analytics systems. They inspect the network traffic, and then based 153 on their function, log their observation and/or act on the traffic to 154 implement security policy. When these devices act on the network 155 traffic, they are typically deployed inline as middleboxes (e.g. 156 firewalls) or as explicit proxies (e.g. web proxies). If their 157 function is only to observe, they can be deployed either as 158 middleboxes or given access to the network traffic out-of-band (OOB), 159 through the network fabric (e.g., network tap or span port). 161 Depending on their function, network-based security devices use 162 different degrees of visibility into the TLS traffic. Some 163 operational practices require only access to the unencrypted protocol 164 headers and associated meta-data of the TLS traffic. Other practices 165 require full visibility into the encrypted session (payload). 167 The practices that inspect only the unencrypted headers and meta-data 168 of TLS, require no special capabilities beyond access to the TLS 169 packets. However, to inspect the encrypted payload of TLS traffic 170 requires a TLS proxy. 172 A TLS proxy provides visibility and inspection to effectuate security 173 controls without changing the state machine of the TLS Server and TLS 174 Client, or the user experience. The TLS Proxy operates as a 175 transparent hop at the TLS layer in both middlebox and explicit proxy 176 deployments. For the web proxy case, after the client sends an HTTP 177 CONNECT to request a tunnel to the server, the web proxy may insert a 178 TLS Proxy function to proxy the TLS session without awareness by the 179 client or server. The TLS operation afterwards remains the same as a 180 middlebox. 182 To proxy a TLS session, a TLS Proxy must be able to present a valid 183 X.509 certificate to the TLS client to appear as a valid TLS Server; 184 similarly, the client must be able to validate the X.509 certificate 185 using the appropriate trust anchor for that TLS connection. To 186 achieve this, a deployment must properly provision their systems (TLS 187 Proxies and TLS clients). 189 Specific network security operational practices applied to TLS v1.2 190 (and earlier) are described in subsequent sub-sections. They are 191 categorized into the following deployment scenarios: 193 1. Passive TLS inspection, where the network-based security function 194 is inspecting either the inbound or outbound TLS header or meta- 195 data traffic 197 2. Outbound TLS Proxy, where a TLS proxy mediates a TLS session 198 originating from a client inside the enterprise administrative 199 domain (and in the same administrative domain as the proxy) 200 towards an entity on the outside 202 3. Inbound TLS Proxy, where a TLS proxy mediates a TLS session from 203 a client outside the enterprise administrative domain towards an 204 entity on the inside (and in the same administrative domain as 205 the proxy) 207 Each deployment scenario describes relevant operational practices. 208 For each operational practice, possible deployment modes (e.g., 209 inline, out-of-band), a description of the practice, and the impact 210 of TLS v1.3 is categorized and explained. The categorized impacts to 211 practices when migrating to TLS v1.3 are as follows: 213 o no impact - no change in capability or performance is expected 214 with this practice 216 o no capability impact - no change in capability is expected; but 217 there may be a performance or implementation change required for 218 this practice 220 o reduced effectiveness - this practice will not be as effective on 221 TLS v1.3 traffic 223 o alternative approach required - this practice will not work with 224 TLS v1.3 traffic 226 3.1. Passive TLS Inspection 228 Passive TLS inspection is the deployment scenario where a network 229 security device passively inspects inbound or outbound TLS traffic to 230 make visibility inferences or take policy actions. The network 231 security device examines only the unencrypted TLS protocol headers 232 and does not have access to the encrypted content of the payload. 234 The TLS proxy deployment scenarios may also incorporate these 235 practices. 237 3.1.1. OP-1. Acceptable Use Policy (AUP) Enforcement (via header 238 inspection). 240 Deployment mode: inline 242 A firewall or web proxy restricts a client in the same administrative 243 domain from accessing sites or services outside that domain per an 244 acceptable use policy. The identification of the destination server 245 is performed through the inspection of either the SNI field in the 246 TLS ClientHello message from the client; or by extracting the server 247 identity from the Common Name (CN) or Subject Alternative Name (SAN) 248 fields of an X.509 certificate that is presented in the server's 249 Certificate TLS message. This data is used for domain categorization 250 or application identification. 252 This meta-data can also inform decryption eligibility decisions by a 253 firewall, in OP-4. For instance, a firewall may bypass traffic 254 decryption for a connection destined to a healthcare web service due 255 to privacy compliance requirements. 257 TLS 1.3 impact: reduced effectiveness. Per Section 4.2, domain 258 categorization and application identification will be limited to IP 259 address and SNI information (beyond additional correlation possible 260 with other means such as DNS). 262 While an SNI is mandatory in TLS 1.3, there is no guarantee that the 263 server responding is the one indicated in the SNI from the client. A 264 SNI alone, without comparison of the server certificate, does not 265 provide reliable information about the server that the client is 266 attempting to reach. Where a client has been compromised by malware, 267 it may present an innocuous SNI to bypass protective filters (e.g., 268 to reach a command and control server), and this will be undetectable 269 under TLS 1.3. 271 [ESNI] will further reduce the effectiveness of passive TLS 272 inspection, limiting the available information to IP addresses and 273 possible correlation with DNS. 275 3.1.2. OP-2. Network Behavior Analytics 277 Deployment mode: inline and out-of-band 279 Network behavior analysis and machine learning engines in IDSs, IPSs 280 and firewalls observe the cleartext fields of the TLS handshake 281 (e.g., session cipher suites) and conducts traffic analysis by 282 observing encrypted record sizes, packet rates and their inter- 283 arrival times, and similar outer connection behavior. They match 284 encrypted connections against known application patterns; identify 285 anomalies; and identify or block those without payload inspection. 286 These analytics may also observe that malicious applications may 287 deliberately manipulate certain TLS header fields, throttle packet 288 rates, and vary payload sizes in order to circumvent detection. 290 Through traffic analysis, researchers have detected devastating 291 pseudo-random number generator failures [TLS_VULNERABILITY], nonce 292 failures [NONCE_FAIL], and deeply flawed random number generators in 293 products in [WEAK_KEY] and [WEAK_K2]. 295 TLS 1.3 considerations: reduced effectiveness. Per Section 4.2, any 296 features relying on Certificate information will not be available. 298 3.1.3. OP-3. Crypto, Security and Security Policy Compliance (server) 300 Deployment: out-of-band 302 A network security device observes TLS handshake traffic to audit 303 that TLS server configuration conforms to policy. This compliance 304 monitoring commonly examines ciphersuites (e.g., use of weak 305 ciphersuites) and certificate properties (e.g., no self-signed 306 certificates, black or white list of certificate authorities, 307 certificate expiration times). 309 TLS 1.3 considerations: reduced effectiveness. Per Section 4.2, only 310 TLS ClientHello and ServerHello parameters can be audited. 311 Certification information will not be visible. 313 3.1.4. OP-4. Crypto and Security Policy Compliance (client) 315 Deployment: inline 317 A network security device observes TLS handshake traffic to ensure 318 that clients negotiating TLS connections have configurations (e.g., 319 only make connections with TLS 1.2+) and server certificate (e.g., 320 black-listed CAs) that adhere to policy. This is a variant of OP-3. 321 It is commonly used in deployments where an organization may have 322 reduced configuration control of end points (e.g., lab environments, 323 Bring Your Own Device arrangements, and IoT). 325 TLS 1.3 considerations: reduced effectiveness. Per Section 4.2, only 326 TLS ClientHello and ServerHello parameters can be audited. 327 Certification information will not be visible. 329 3.2. Outbound TLS Proxy 331 Outbound TLS proxy is the deployment scenario where a security device 332 that performs the TLS proxy function is in the same administrative 333 domain as the TLS client, and the TLS server is located in an 334 external zone such as the Internet or in another policy zone of the 335 same administrative domain. Usually the goal is to protect the 336 client endpoint and the organization by controlling application 337 behaviors and enforcing an acceptable use policy for the 338 organizational network. See Figure 1. 340 The administrator manages the TLS client to allow interception by the 341 TLS proxy, usually by deploying a local Certificate Authority (CA) 342 certificate on the TLS client. A typical scenario is an 343 organization-managed client endpoint, such as a laptop or a mobile 344 device that accesses the Internet through the organizational network. 345 When a client attempts to access an external TLS server, the TLS 346 proxy function typically presents a locally signed certificate from 347 the local CA on behalf of the server; alternatively, the certificate 348 generation function may be offloaded to an external Hardware Security 349 Module (HSM) service with which that the TLS proxy must integrate. 351 It has to be noted that the method does not work if the TLS client 352 does not support customized list of CAs, such as with certificate 353 pinning. The impact is independent of TLS 1.3 deployment. 355 _________ __________ 356 \ / 357 \ | Administrative 358 \ | Domain, _----__ 359 +-+ \ | Zone 2 / / \____ 360 | | \ \______/ __/ +------+ \ 361 |C|.. | . / |S-NEWS| \__ 362 | | . | . ( +------+ \ 363 +-+ . +---+ . ( +--------+ ) 364 ..| |.... \ |S-GAMING| ) 365 | P |..........( +--------+ ) 366 +-+ ...| | \ +---------+ ) 367 | | . +---+ ( |S-BANKING| / 368 |C|... | \_.+---------+ ) 369 | | | \.. / 370 +-+ / \____--' 371 / 372 Administrative / Internet 373 Domain, Zone 1 / 374 _________/ 376 Figure 1: Outbound TLS proxy 378 3.2.1. OP-5: Acceptable Use Policy (AUP) Enforcement (via payload 379 inspection) 381 Deployment: inline 383 A firewall or web proxy restricts a client in the same administrative 384 domain from accessing sites or services outside that domain per an 385 acceptable use policy. Similar in intent to OP-1, but the policy 386 enforcement in this practice requires access to data in the TLS 387 session (e.g., URL). 389 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 390 selective decryption policy is used. 392 3.2.2. OP-6: Data Loss Prevention Compliance 394 Deployment: inline 396 A firewall enforces a Data Loss Prevention (DLP) policy by monitoring 397 the TLS sessions content of outbound communication for systems 398 sending organizational proprietary content or other restricted 399 information. 401 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 402 selective decryption policy is used. 404 3.2.3. OP-7: Granular Network Segmentation 406 Deployment: inline 408 A firewall mediates the traffic between different policy zones in an 409 organization. The access policies between these zones may be based 410 on application names and categories rather than static IP addresses 411 and TCP/UDP port numbers. Through a TLS proxy, the firewall can 412 inspect URLs and other application parameters based on data in the 413 TLS session. 415 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 416 selective decryption policy is used. 418 3.2.4. OP-8: Network-based Threat Protection (client) 420 Deployment: inline or out-of-band (depending on functionality) 422 Web proxies and firewalls protect end-users against a range of 423 threats by inspecting the data in the TLS session with a variety of 424 analytical techniques (e.g., signatures, heuristics, statistical 425 models, machine learning). This practice is a superset of OP-2. 427 Common goals are to prevent malware from reaching the endpoint, 428 preventing malware communication from a compromised host, restricting 429 lateral network movement of an intruder and gathering insight into 430 the behavior of threat activity on the network. 432 In certain deployments these technologies are also used to act as a 433 last line of defense against software vulnerabilities on endpoints - 434 either for 0-days for which there is no patch, or simply unpatched 435 clients. 437 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 438 selective decryption policy is used. 440 3.2.5. OP-9: Protecting Challenging End Points 442 Deployment mode: inline 444 Web proxies, IPS and firewalls implement security policy and afford 445 protection to devices for which it is not feasible to run an end- 446 point solution (e.g., IoT); or that are end-of-life and will not 447 receive patches. This is a specialized instance of OP-8 targeting 448 these disadvantaged classes of devices. 450 These practices ensure that that older endpoints (and in some cases 451 even new ones) are not permanently vulnerable to newly discovered 452 vulnerabilities. 454 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 455 selective decryption policy is used. 457 3.2.6. OP-10: Content Injection 459 Deployment: inline 461 A firewall or web proxy restricts message manipulation or insertion, 462 such as a block page or an interactive authentication portal 463 redirect, into the encrypted flow for the client to see. This may be 464 used in conjunction with OP-1, OP-5, and OP-7. 466 TLS 1.3 considerations: no capability impact. See Section 4.2 if a 467 selective decryption policy is used. 469 3.3. Inbound TLS Proxy 471 Inbound TLS proxy is the deployment scenario where the TLS proxy is 472 deployed in front of one or a set of servers or services. The 473 network device that implements the TLS proxy function is located in 474 the same administrative domain as the server(s) or service(s) it is 475 protecting. Usually it is not predictable or controllable as to 476 which TLS client will initiate a connection. See Figure 2. 478 The TLS proxy is provisioned with the server's certificates and 479 private keys so that it may either decrypt or terminate the TLS 480 connection on behalf of the server. In some instances, the TLS proxy 481 may periodically retrieve the private keys and associated 482 certificates from an external secure distribution service, such as a 483 HSM. Traffic between the TLS proxy and server may be encrypted or in 484 the clear; the former configuration is typical of a perimeter 485 firewall while the latter of a load-balancer. 487 ____________ 488 / 489 / S 490 _----__ / .--. 491 / \____ / |==| 492 __/ / |--| 493 / +-+ +-+ \__ | .....|==| S 494 ( | | | | \ | . |--| .--. 495 ( |C| +-+ |C| +-+ ) +---+ . |::| |==| 496 \ | | | | | | | | ) | |... |__| |--| 497 ( +-+ |C| +-+ |C|..............| P | S " " |==| 498 \ | | | | ) | |... .--. |--| 499 ( +-+ +-+ / +---+ . |==| |::| 500 \_. ) | . |--| |__| 501 \.. / | ..|==| " " 502 \____--' \ |--| 503 \ |::| Administrative 504 External Network \ |__| Domain 505 \ " " 506 \____________ 508 Figure 2: Inbound TLS proxy 510 3.3.1. OP-11: TLS offloading 512 Deployment mode: inline 514 Offloads crypto operations from the application server to a TLS 515 Proxy. This is not a typical security function on its own, but it 516 facilitates security control insertion downstream. As this is in the 517 same administrative domain, it is presumed that a TLS Proxy can be 518 provisioned with the appropriate keys when the TLS Server is 519 configured or managed. 521 TLS 1.3 considerations: no impact. 523 3.3.2. OP-12. Content distribution and application load balancing 525 Deployment mode: inline 527 Load balancers deployed in front of services provide resiliency 528 against denial of service attacks. TLS proxy functionality provides 529 access to the cleartext application layer data to enable service- 530 tailored load balancing. Similar to OP-11, it is presumed that a TLS 531 Proxy can be provisioned with the appropriate keys when the TLS 532 Server is configured or managed. 534 This practice may be combined with OP-11. 536 TLS 1.3 considerations: no impact. 538 3.3.3. OP-13: Network-based Threat Protection (server) 540 Deployment mode: inline and out-of-band 542 Web application firewalls (WAF) and firewalls protect servers and 543 services against a range of threats by inspecting the data in the TLS 544 session with a variety of analytical techniques (e.g., signatures, 545 heuristics, statistical models, machine learning). This practice is 546 identical in function to OP-8, but focused on threat prevention of 547 inbound requests to servers and services. 549 TLS 1.3 considerations for inline deployment mode: no capability 550 impact. Per Section 4.1, the network security device must explicitly 551 terminate the TLS connection from the client. 553 TLS 1.3 considerations for out-of-band mode: alternative approach 554 required. Per Section 4.1, active participation in the TLS exchange 555 is required to inspect the session. 557 3.3.4. OP-14: Full Packet Capture 559 Deployment mode: inline and out-of-band 561 A network security device stores a copy of all decrypted traffic that 562 meets a given filter. This traffic may be continuously captured in a 563 rolling buffer for use in future forensic analysis, incident 564 response, or computationally intensive retrospective analysis. This 565 collection may also be selectively enabled to support application 566 troubleshooting. 568 TLS 1.3 considerations for inline deployment mode: no capability 569 impact. Per Section 4.1, the network security device must explicitly 570 terminate the TLS connection from the client. 572 TLS 1.3 considerations for out-of-band mode: alternative approach 573 required. Per Section 4.1, offline decryption is not possible. 575 3.3.5. OP-15: Application Layer Gateway (ALG) 577 Deployment mode: inline 579 To conduct protocol conformance checks and rewrite embedded IP 580 addresses and TCP/UDP ports within the application layer payload for 581 traffic traversing a NAT boundary. While not strictly a security 582 function, this capability may typically be found in firewalls along 583 with the NAT supporting functions. 585 TLS 1.3 considerations: no impact. 587 4. Changes in TLS v1.3 Relevant to Security Operations 589 TLS v1.3 introduces a number of protocol design changes to improve 590 security and privacy. However, these enhancements impact current 591 network security operational practices that rely on the protocol 592 behavior of earlier TLS versions. 594 4.1. Perfect Forward Secrecy (PFS) 596 TLS 1.2 (and earlier versions) supports static RSA and Diffie-Hellman 597 (DH) cipher suites, which enables the server's private key to be 598 shared with a TLS proxy. TLS 1.3 has removed support for these 599 cipher suites in favor of supporting only ephemeral mode Diffie- 600 Hellman to provide perfect forward secrecy (PFS). As a result of 601 this enhancement, it would no longer possible for a server to share a 602 key with the middlebox in advance, which in turn implies that the 603 middlebox cannot gain access to the TLS session data. 605 4.2. Encrypted Server Certificate 607 TLS 1.2 (and earlier versions) sends the ClientHello, ServerHello and 608 Certificate messages in clear-text. In TLS 1.3, the Certificate 609 message is encrypted whereby hiding the server identity from any 610 intermediary. As a result of this enhancement, it would no longer be 611 possible to observe the server certificate without inspection the 612 encrypted TLS payload. 614 TLS proxies which implement a selective decryption policy will need 615 to alter their behavior to accommodate TLS 1.3. In TLS 1.2 (and 616 earlier), the proxy could observe the TLS handshake till seeing the 617 clear text server certificate to make the decryption policy decision. 618 For example, a proxy may not be permitted to decrypt certain types of 619 traffic such as those going to a banking and health care service. 621 However, in TLS 1.3, the TLS proxy must participate in both 622 handshakes (i.e., client-to-proxy; and proxy-to-server) in order to 623 view the server certificate. This change will impose a slight 624 increase in load per connection on the proxy. 626 5. Security Considerations 628 This entire document discusses security considerations in existing 629 operational security practices interacting with TLS. It notes where 630 existing practices will have to be adjusted to remain effective due 631 to TLS v1.3 improvements. 633 These operational practices involve both good faith and malicious 634 client applications. The former category typically exhibits 635 consistently identifiable behavior and does not actively prevent any 636 transit inspection devices from performing application identification 637 for visibility and control purposes. The latter category of 638 applications actively attempts to circumvent network security 639 controls by deliberately manipulating various protocol headers, 640 injecting specific messages, and varying payload sizes in order to 641 avoid identification or to masquerade as a different permitted 642 application. 644 6. IANA Considerations 646 This document has no IANA actions. 648 7. Appendix A: Summary Impact to Operational Practices with TLS 1.3 649 +---------------------------------------------+-----------------------+ 650 | Operational Practice | Impact with TLS 1.3 | 651 +---------------------------------------------+-----------------------+ 652 | OP-1: AUP enforcement (headers only) | reduced effectiveness | 653 | OP-2: Behavior analytics (headers only) | reduced effectiveness | 654 | OP-3: Crypto compliance monitoring (server) | reduced effectiveness | 655 | OP-4: Crypto compliance monitoring (client) | reduced effectiveness | 656 | OP-5: AUP enforcement (payload) | no capability impact | 657 | OP-6: Data loss prevention compliance | no capability impact | 658 | OP-7: Granular network segmentation | no capability impact | 659 | OP-8: Network protection (client) | no capability impact | 660 | OP-9: Protecting challenging end points | no capability impact | 661 | OP-10: Content Injection | no capability impact | 662 | OP-11: TLS offloading | no impact | 663 | OP-12: Application load balancing | no impact | 664 | OP-13: inline: Network protection (server) | no operational impact | 665 | OP-13: oob: Network protection (server) | alternative required | 666 | OP-14: inline: Full packet capture | no operational impact | 667 | OP-14: oob: Full packet capture | alternative required | 668 | OP-15: Application layer gateway | no impact | 669 +---------------------------------------------+-----------------------+ 671 8. References 673 8.1. Normative References 675 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 676 Requirement Levels", BCP 14, RFC 2119, 677 DOI 10.17487/RFC2119, March 1997, 678 . 680 [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security 681 (TLS) Protocol Version 1.2", RFC 5246, 682 DOI 10.17487/RFC5246, August 2008, 683 . 685 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 686 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 687 May 2017, . 689 [RFC8404] Moriarty, K., Ed. and A. Morton, Ed., "Effects of 690 Pervasive Encryption on Operators", RFC 8404, 691 DOI 10.17487/RFC8404, July 2018, 692 . 694 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 695 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 696 . 698 8.2. Informative References 700 [ESNI] Rescorla, E., Oku, K., Sullivan, N., and C. Wood, 701 "Encrypted Server Name Indication for TLS 1.3", draft- 702 ietf-tls-esni-05 (work in progress), November 2019. 704 [NONCE_FAIL] 705 Jovanovic, P., "Nonce-disrespecting adversaries: Practical 706 forgery attacks on GCM in TLS", 2016, 707 . 710 [TLS_VULNERABILITY] 711 Shenefiel, C., "PRNG Failures and TLS Vulnerabilities in 712 the Wild", 2017, 713 . 715 [WEAK_K2] Heninger, N., "Weak Keys Remain Widespread in Network 716 Devices", 2016, . 719 [WEAK_KEY] 720 Halderman, A., "Mining your Ps and Qs: Detection of 721 widespread weak keys in network devices", 2012, 722 . 725 Acknowledgments 727 The authors thank Andrew Ossipov, Flemming Andreasen, Kirsty Paine, 728 David McGrew, and Eric Vyncke for their contributions and valuable 729 feedback. 731 Authors' Addresses 733 Nancy Cam-Winget 734 Cisco Systems, Inc. 735 3550 Cisco Way 736 San Jose, CA 95134 737 USA 739 EMail: ncamwing@cisco.com 741 Eric Wang 742 Cisco Systems, Inc. 743 3550 Cisco Way 744 San Jose, CA 95134 745 USA 747 EMail: ejwang@cisco.com 749 Roman Danyliw 750 Software Engineering Institute 752 EMail: rdd@cert.org 754 Roelof DuToit 755 Broadcom 757 EMail: roelof.dutoit@broadcom.com