08_threat_model_4g

Part 8: Threat Model - 4G LTE Attack Surface

Learning Objective: Apply STRIDE threat modeling to identify 4G EPC vulnerabilities and mitigations.


STRIDE Framework

Category Threat Type
S Spoofing (identity)
T Tampering (data)
R Repudiation (deny actions)
I Information Disclosure
D Denial of Service
E Elevation of Privilege

4G Attack Surface Map

graph TB
    subgraph "Radio Access"
        UE[πŸ“± UE]
        eNB[πŸ“‘ eNodeB]
    end
    
    subgraph "Control Plane"
        MME[MME]
        HSS[HSS]
        PCRF[PCRF]
    end
    
    subgraph "User Plane"
        SGWU[SGW-U]
        UPF[UPF]
    end
    
    UE -.->|❌ S1-MME
Unencrypted NAS| MME UE -.->|❌ S1-U
Unencrypted GTP| SGWU eNB -.->|❌ S1-MME
No mutual auth| MME eNB -.->|❌ S1-U
No encryption| SGWU MME -.->|❌ S6a Diameter
No TLS| HSS MME -.->|❌ S11 GTP-C
No encryption| SGWU SGWU -.->|❌ S5-U GTP-U
No encryption| UPF style UE fill:#ffcccc style eNB fill:#ffcccc style MME fill:#ffcccc style HSS fill:#ffcccc

Threat Catalog

1. IMSI Catching (S, I)

Attack Vector:

Impact:

Mitigation:

Real-World Examples:

STRIDE Score: S=High, I=High


2. Rogue eNodeB / Man-in-the-Middle (S, T, I, D)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: S=High, T=High, I=High, D=Medium


3. GTP-U Injection (T, D)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: T=High, D=High


4. Diameter Exploitation (S, I, E)

Attack Vector:

Impact:

Mitigation:

Real-World Examples:

STRIDE Score: S=High, I=Critical, E=High


5. HSS Credential Exfiltration (I, E)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: I=Critical, E=Critical


6. UE Tracking via TAU (I)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: I=Medium


7. S1-MME / S1-U Unencrypted Transport (I, T)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: I=High, T=High


8. Downgrade Attack (T, D)

Attack Vector:

Impact:

Mitigation:

STRIDE Score: T=High, D=Medium


Threat Summary Table

Threat S T R I D E Severity
IMSI Catching βœ… βœ… High
Rogue eNB βœ… βœ… βœ… βœ… Critical
GTP-U Injection βœ… βœ… High
Diameter Exploit βœ… βœ… βœ… Critical
HSS Exfiltration βœ… βœ… Critical
UE Tracking βœ… Medium
S1 Unencrypted βœ… βœ… High
Downgrade Attack βœ… βœ… High

πŸ”¬ Lab Exercises (Threat Testing)

Using the Docker lab from Part 4, try these security exercises:

Exercise 1: Capture IMSI in Cleartext

# Capture S1AP traffic and look for InitialUEMessage containing IMSI
docker exec -it open5gs_mme tcpdump -i any -w /tmp/s1ap.pcap sctp
# Open in Wireshark, filter: s1ap.InitialUEMessage
# Look for: NAS-PDU β†’ Attach Request β†’ Mobile Identity β†’ IMSI

Exercise 2: Observe Unencrypted GTP-U

# Capture GTP-U traffic (user data in cleartext)
docker exec -it open5gs_upf tcpdump -i any -w /tmp/gtpu.pcap udp port 2152
# Open in Wireshark, filter: gtp
# You'll see the UE's IP packets inside GTP tunnels (unencrypted)

Exercise 3: Test Null Cipher

# In mme.yaml, set null cipher first:
security:
  ciphering_order: [EEA0, EEA1, EEA2]  # EEA0 = null cipher!
# Then capture NAS and observe: NAS messages are integrity-protected but NOT encrypted
Warning

These exercises are for educational purposes only in your isolated Docker lab. Never test against real networks.


3GPP References

Document Title Relevance
TS 33.401 3GPP System Architecture Evolution (SAE) Security EPS security architecture
TS 33.210 Network Domain Security: IP layer security IPsec for backhaul
TS 29.272 Diameter-based S6a interface MME↔HSS protocol spec
NIST SP 800-187 Guide to LTE Security US gov LTE security guidelines
GSMA FS.19 Diameter Interconnect Security Diameter firewall recommendations

Summary

Next: Part 9: 5G Threat Model β†’