3GPP TS 33.513

5G Security Assurance Specification (SCAS) for the User Plane Function (UPF) network product class
V18.3.0 (2024-06) — Release 18 SCAS Product Class
GTP-Critical Document: The UPF is the primary GTP-U processor in the 5G core. This SCAS defines the most detailed GTP filtering and user plane security test cases in the 33-series.

1. Scope

▶

This document specifies security requirements and test cases for the UPF (User Plane Function) and GW (Gateway) network product class. The UPF handles all user plane traffic in 5GC, performing packet routing, forwarding, QoS enforcement, and GTP-U encapsulation/decapsulation on N3, N9, and N6 interfaces.

Extends TS 33.117 with UPF-specific requirements. All TS 33.117 tests apply in addition to those defined here.

2. References

▶
RefDocumentTitleLink
[1]TS 33.117General SCAS RequirementsLocal
[2]TS 33.5015G Security ArchitectureLocal
[3]TR 33.926Threats and Critical AssetsLocal
[4]TS 33.210NDS/IP SecurityLocal
[5]TS 29.244PFCP Protocol for N4 Portal
[6]TS 29.281GTP-U User Plane Protocol Portal

4. UPF Network Product Class Definition

▶
┌─────────────────────────────────────────────┐ │ 5G Core │ │ │ │ ┌──────┐ ┌──────────────────────┐ │ │ │ SMF │──N4───►│ UPF (this class) │ │ │ └──────┘ PFCP │ │ │ │ │ ┌────────────────┐ │ │ │ │ │ PDR/FAR/QER │ │ │ │ │ │ Packet Rules │ │ │ │ │ └────────────────┘ │ │ │ │ │ │ └──────────────────┤ N3 N9 N6 ├──┘ └──┬─────┬─────┬──────┘ │ │ │ ┌───────────┘ │ └──────────┐ │ GTP-U │ GTP-U │ ▼ ▼ ▼ ┌─────────┐ ┌───────────┐ ┌──────────┐ │ gNB │ │ UPF (I-UPF)│ │ Internet │ │ │ │ (N9 peer) │ │ / DN │ └─────────┘ └───────────┘ └──────────┘
InterfacePeerProtocolTraffic
N3gNBGTP-UUser plane data to/from RAN
N9UPF (I-UPF)GTP-UUser plane between UPFs (UL-CL, branching)
N6Data NetworkIPPDU session to Internet / DN
N4SMFPFCPControl: session establishment, modification, deletion

5. UPF-Specific Threats

▶

The UPF is the most GTP-exposed element in the 5G architecture. It is the primary target for GTP-based attacks:

TR 33.926 §5.3.6.15 GTP traffic isolation — THE critical UPF threat ▶

TR 33.926 §5.3.3.5 IP spoofing on GTP-U source addresses ▶

TR 33.926 §5.3.4 DoS via GTP-U flooding or malformed packets ▶

TR 33.926 §5.3.7.3 Insecure network services exposed by UPF ▶

  • GTP-U TEID prediction: Sequential TEIDs may allow attacker to inject packets into user sessions
  • GTP-in-GTP: Malicious encapsulation bypassing outer tunnel filtering
  • N6 data exfiltration: Compromised UPF could exfiltrate all user traffic to external destination
  • N4 PFCP manipulation: Unauthorized PFCP session modification could redirect traffic
  • Cross-slice leakage: UPF serving multiple slices may leak data between them

6. UPF-Specific Security Requirements and Test Cases

▶

6.1 GTP-U Filtering (N3/N9)

▶
TC_UPF_GTP_U_FILTERING
CRITICAL — GTP
Objective

Verify that the UPF correctly filters GTP-U packets on N3 and N9 interfaces, preventing unauthorized GTP traffic.

Test Procedure
  1. Establish a valid PDU session with known TEID on N3
  2. Source IP check: Send GTP-U packets with valid TEID but from unauthorized source IP → verify DROPPED
  3. Invalid TEID: Send GTP-U packets from valid source IP but with unknown/invalid TEID → verify DROPPED
  4. GTP-U port check: Verify UPF only accepts GTP-U on UDP port 2152
  5. GTP version check: Send GTP-U with invalid version field → verify DROPPED
  6. GTP-in-GTP: Send GTP-U packet containing inner GTP-U encapsulation → verify DROPPED or inner packet not forwarded to N6
  7. Post-session teardown: After PDU session deletion, send GTP-U with old TEID → verify DROPPED
  8. TEID randomization: Verify that TEIDs are randomly assigned (not sequential)
  9. Rate limiting: Flood GTP-U traffic → verify UPF applies rate limiting or overload protection
  10. Oversized packets: Send GTP-U packets exceeding configured MTU → verify handled correctly
Expected Result

Only GTP-U packets with (1) valid source IP matching known gNB/UPF, (2) valid assigned TEID, and (3) correct protocol version/format are forwarded. All other GTP-U packets are dropped silently.

TR 33.926 §5.3.6.15 Mitigates GTP traffic isolation failure ▶

Cross-reference: This test extends TS 33.117 TC_GTP-U_FILTERING with UPF-specific TEID randomization and GTP-in-GTP checks.

6.2 GTP-C Processing

▶
TC_UPF_GTP_C_VALIDATION
CRITICAL — GTP
Objective

Verify that the UPF does not process GTP-C (control plane) messages directly. In 5G architecture, the UPF receives control instructions only via PFCP (N4) from the SMF — not via GTP-C.

Procedure
  1. Send GTP-C Create Session Request to UPF N3/N9 IP on port 2123 → verify DROPPED or port closed
  2. Send GTP-C Modify Bearer Request → verify no response
  3. Verify UPF does not listen on UDP 2123 (GTP-C port)
  4. For combined UPF/PGW-U: if GTP-C v2 is supported on S5/S8, verify it's restricted to configured SGW peers only
Expected Result

Pure 5G UPF: port 2123 is closed, no GTP-C processing. Combined UPF/PGW-U: GTP-C only accepted from configured peers.

6.3 N4 PFCP Security

▶
TC_UPF_PFCP_SECURITY
CRITICAL
Objective

Verify that the N4 interface (PFCP) between SMF and UPF is properly secured and cannot be abused.

Procedure
  1. Verify N4 is protected by IPsec or TLS (DTLS for PFCP over UDP)
  2. Send PFCP Session Establishment from unauthorized source → verify REJECTED
  3. Send PFCP with manipulated Node ID → verify REJECTED
  4. Verify PFCP Association Setup requires authentication
  5. Verify PFCP session modification from different SMF than original → verify REJECTED
Expected Result

Only the authorized SMF (via established PFCP association) can create/modify/delete sessions on the UPF. Unauthorized PFCP messages are silently dropped.

6.4 N6 Interface Security

▶
TC_UPF_N6_SECURITY
HIGH
Objective

Verify security at the N6 interface (UPF ↔ Data Network / Internet).

Procedure
  1. Verify that traffic from N6 cannot reach the N3/N9 GTP plane (plane separation)
  2. Verify that N6 ingress traffic is filtered (anti-spoofing: source IP must match allocated UE IP)
  3. Verify that the UPF does not route N6 traffic to internal management interfaces
  4. Verify UPF ACL/PDR rules enforce per-session traffic filtering

6.5 Traffic Separation and Slice Isolation

▶
TC_UPF_TRAFFIC_SEPARATION
CRITICAL
Objective

Verify that the UPF maintains strict separation between different traffic types and network slices.

Procedure
  1. Plane separation: Verify user plane (N3/N9/N6) traffic cannot reach management/OAM plane
  2. Slice isolation: If UPF serves multiple S-NSSAIs, verify that PDU sessions for different slices cannot access each other's data
  3. GTP-U to management: Verify that GTP-U decapsulated packets cannot be routed to the UPF's management IP
  4. N4/N6 separation: Verify PFCP (N4) traffic is on a separate interface or VLAN from N6 data

TR 33.926 §5.3.6.15 Lack of traffic isolation between GTP and other network planes ▶

6.6 N9 Inter-UPF Security

▶
TC_UPF_N9_SECURITY
HIGH
Procedure
  1. Verify N9 GTP-U traffic is protected by IPsec when crossing security domain boundaries
  2. Verify that N9 GTP-U only accepts traffic from configured peer UPF IPs
  3. Verify TEID validation on N9 (same filtering as N3)

7. SCAS Test Case Summary

▶
Test Case IDCategoryThreat RefPriority
TC_UPF_GTP_U_FILTERINGGTP-U Security§5.3.6.15, §5.3.3.5CRITICAL
TC_UPF_GTP_C_VALIDATIONGTP-C Security§5.3.6.15CRITICAL
TC_UPF_PFCP_SECURITYN4 Security§5.3.5CRITICAL
TC_UPF_N6_SECURITYN6 Security§5.3.6HIGH
TC_UPF_TRAFFIC_SEPARATIONPlane Separation§5.3.6.15CRITICAL
TC_UPF_N9_SECURITYN9 Security§5.3.6.15HIGH
Plus ALL test cases from TS 33.117