Security and Isolation⚓︎
Mobile Asset traffic is contained, subscribers are authenticated with the configured algorithms and re-synchronized when needed, the 5G permanent identity is never sent in clear, the management path is outbound only, access to xControl follows the role model, changes are audited, and the core withstands a flood of unknown subscribers.
| ID | Test | Category | Applies to |
|---|---|---|---|
| EXP-SEC-001 | UE-to-UE communication prevented | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-002 | UE-to-platform communication prevented | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-003 | Authentication failure with wrong key material | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-004 | Signalling security algorithms | Security | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-005 | Management path is outbound only and encrypted | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-006 | Role-based access control in xControl | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-007 | Audit trail of provisioning and access | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-008 | Unknown-subscriber signalling storm | Security | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-009 | Subscriber identity concealment (SUCI) | Security | 5G · Local radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-010 | Authentication re-synchronisation | Security | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-011 | Illegal UE reject (cause #3) after a failed authentication | Security | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| EXP-SEC-012 | PLMN not allowed (cause #11) for a UE of a PLMN the Site does not serve | Security | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
EXP-SEC-001 — UE-to-UE communication prevented⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 15 min |
| Prerequisite procedures | EXP-SES-007 — Multiple UE attach |
| Included in | Installation and Upgrade Verification |
Objective. The network blocks direct communication between two Mobile Assets served by the platform.
Preconditions
- Platform
- An xCore is deployed and operational, and its Site shows as online in xControl.
- The xCore is configured to prevent UE-to-UE communication (the default configuration).
- The xCore has a System.
- Mobile Asset
- Two Mobile Assets are provisioned on the System.
- Tooling and access
- Log in to xControl with an account that can view the Mobile Asset under test.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | — | Execute EXP-SES-007 — Multiple UE attach as a prerequisite procedure. | As defined in EXP-SES-007. |
| 2 | xControl | Open Mobile Assets, select the target UE, and note its IP address. | The target UE's IP address is recorded. |
| 3 | UE | From the source UE, ping the target UE's IP address, then attempt a TCP connection to a port the target UE listens on (for example a local web server or file-sharing application). | The ping receives no reply and the connection attempt fails. |
| 4 | UE | Repeat from the target UE toward the source UE. | No reply and no connection in the other direction either. |
Pass criteria
- No packet from one UE reaches the other in either direction.
Evidence collected: ICMP result from the UE.
EXP-SEC-002 — UE-to-platform communication prevented⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 20 min |
| Prerequisite procedures | EXP-SES-001 — UE-initiated attach |
| Included in | Installation and Upgrade Verification |
Objective. The network blocks communication from a UE to the software components of the Expeto Platform: the xCore's own addresses, its monitoring endpoints and the cluster's node addresses.
Preconditions
- Platform
- An xCore is deployed and operational, and its Site shows as online in xControl.
- The xCore is configured to prevent UE-to-UE communication (the default configuration).
- The xCore has a System on which the UE is provisioned.
- Tooling and access
- Log in to xControl with an account that can view the Mobile Asset under test.
- The node addresses of the cluster hosting the xCore (
kubectl get nodes -o wide).
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | — | Execute EXP-SES-001 — UE-initiated attach as a prerequisite procedure. | As defined in EXP-SES-001. |
| 2 | xControl | Open Mobile Assets, select the UE, and open the details page of its Site. Note the IP addresses of the Site and of its monitoring endpoints. | The platform IP addresses are recorded. |
| 3 | UE | From the UE, ping each recorded address and each cluster node address. | No ping receives a reply. |
| 4 | UE | From the UE, attempt TCP connections to the Kubernetes API port (6443), the metrics ports and the CLI pod's service ports on those addresses. | Every connection attempt fails. |
Pass criteria
- No platform or node address answers the UE on any protocol tried.
Evidence collected: ICMP result from the UE.
EXP-SEC-003 — Authentication failure with wrong key material⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore, xControl |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 25 min |
Objective. A SIM whose secret key does not match the key stored for its Mobile Asset fails authentication and obtains no service, and the failure is visible in xControl.
Preconditions
- Platform
- The Site has a System with a System Profile and a Keyset.
- Mobile Asset
- A Mobile Asset provisioned for the UE's IMSI with a deliberately wrong secret key (K) or operator key (OPc), state Active.
- Device
- The UE is powered off or in airplane mode.
- Tooling and access
- Log in to xControl with an account that holds the ADMIN role.
- Start a 3GPP signalling capture (pcap) with your preferred tool on the interfaces the procedure exercises.
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | UE | Power on the UE, or take it out of airplane mode, and wait for it to attempt to connect. | The UE fails to obtain service. |
| 2 | Capture | Inspect the signalling capture. | The messages match the sequence under Expected signalling; no Security Mode Command follows. |
| 3 | xControl | Open the Mobile Asset and its Event Log. | The status is not Connected; the failed authentication is recorded. |
| 4 | xControl | Correct the key material (or re-provision the Mobile Asset with the right values) and toggle airplane mode on the UE. | The UE connects as in EXP-SES-001. |
Expected signalling
Capture points: S1-MME / N2 (point 1), S6a / N8 (point 4).
4G (EPS) sequence
- Attach Request, then Authentication Information Request / Answer on S6a
- Authentication Request to the UE
- Authentication Failure from the UE (MAC failure) when the operator key is wrong, or Authentication Response with a response the network rejects when the secret key is wrong
- Authentication Reject from the network
5G (5GS) sequence
- Registration Request, then the authentication vector retrieval on the service-based interfaces
- Authentication Request to the UE
- Authentication Failure from the UE, or Authentication Response rejected by the AUSF
- Authentication Reject, or Registration Reject
Pass criteria
- No session is created and the UE obtains no service until the key material is corrected.
- The failed authentication is visible in xControl within 60 seconds.
Evidence collected: 3GPP signalling capture (pcap); xControl session event log.
References: 3GPP TS 33.401 §6.1.1 (AKA procedure); 3GPP TS 24.301 §5.4.2.5 (Authentication not accepted by the network); 3GPP TS 33.501 §6.1.3 (Authentication procedures).
EXP-SEC-004 — Signalling security algorithms⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| Duration | About 20 min |
| Prerequisite procedures | EXP-SES-001 — UE-initiated attach |
Objective. The network selects the configured ciphering and integrity algorithms for NAS and access stratum signalling, and every NAS message after the security mode procedure is integrity protected.
Preconditions
- Platform
- You know the ciphering and integrity algorithms configured on the xCore (by default 128-EEA1 / 128-EIA1 for 4G and 128-NEA1 / 128-NIA1 for 5G).
- Tooling and access
- Start a 3GPP signalling capture (pcap) with your preferred tool on the interfaces the procedure exercises.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | — | Execute EXP-SES-001 — UE-initiated attach as a prerequisite procedure. | As defined in EXP-SES-001. |
| 2 | Capture | Open the Attach Request or Registration Request and read the UE's security capabilities. | The UE supports the configured algorithms. |
| 3 | Capture | Open the Security Mode Command. | The selected NAS ciphering and integrity algorithms equal the configured ones. |
| 4 | Capture | Open the Initial Context Setup Request. | It carries the UE security capabilities and the security key for the access stratum; the radio's subsequent Security Mode Command (on the air interface, not captured here) uses algorithms from that set. |
| 5 | Capture | Inspect every NAS message after the Security Mode Complete. | Each is marked integrity protected (and ciphered where ciphering is configured); no plain NAS message follows. |
Pass criteria
- The selected algorithms equal the configured ones.
- Every NAS message after Security Mode Complete is integrity protected.
Evidence collected: 3GPP signalling capture (pcap).
References: 3GPP TS 33.401 §7.2.4 (NAS security mode command procedure); 3GPP TS 33.501 §6.7.2 (NAS security mode command procedure).
EXP-SEC-005 — Management path is outbound only and encrypted⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore, xControl |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 30 min |
| Prerequisite procedures | EXP-INS-002 — Management path and subscriber synchronization |
Objective. The connection between an xCore and xControl is initiated by the xCore, uses TLS at an accepted protocol version, and requires no inbound connection to the xCore from the management network.
Preconditions
- Tooling and access
- A signalling capture on the xCore's egress (capture point 6).
- A host on the management network (where xControl runs) with a port scanner.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | — | Execute EXP-INS-002 — Management path and subscriber synchronization as a prerequisite procedure. | As defined in EXP-INS-002. |
| 2 | Capture | Restart the agent pod and inspect the capture. | The TCP connection and the TLS Client Hello originate from the xCore toward xControl's address on port 443. |
| 3 | Capture | Open the TLS handshake. | The negotiated protocol version is TLS 1.2 or later, and the server certificate is xControl's. |
| 4 | Test host | From the management network, scan the xCore's external addresses for open TCP ports. | No port used by the management path is open toward the xCore; only the ports documented for the deployment (for example the radio-facing SCTP port on the radio network) are listening. |
| 5 | Infrastructure | Block all inbound connections from the management network to the xCore for ten minutes, keeping the outbound path open. | The Site stays online in xControl and provisioning changes still reach the Site (EXP-PRV-001, first steps). |
Pass criteria
- Every management connection is initiated by the xCore.
- TLS 1.2 or later is negotiated, with a cipher suite from the list in the platform's security documentation.
- Blocking inbound traffic to the xCore has no effect on management.
Evidence collected: 3GPP signalling capture (pcap); CLI output.
EXP-SEC-006 — Role-based access control in xControl⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xControl |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 40 min |
Objective. Each xControl role can perform exactly the actions the permission model grants it, in the portal and through the API, and a Customer-scoped role sees only its own Customer's objects.
Preconditions
- Platform
- Two Customers exist, each with at least one Mobile Asset.
- Tooling and access
- Accounts with the ADMIN, CUSTOMER_ADMIN and READ_ONLY roles; the last two scoped to the first Customer.
- An API token for each account.
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | xControl | Log in as READ_ONLY and open Mobile Assets, Systems and Sites. | The objects of the first Customer are listed; there is no New, Edit, Delete, Import or Bulk Actions control. |
| 2 | xControl API | With the READ_ONLY token, attempt to create a Mobile Asset and to change an existing one. | Both requests are refused with an authorization error. |
| 3 | xControl | Log in as CUSTOMER_ADMIN, open a Mobile Asset, click Edit, change Status, and click Submit. | The change is saved. |
| 4 | xControl | As CUSTOMER_ADMIN, look for New on Mobile Assets, Cancel Session on a Mobile Asset, and Import. | None of these controls is available. |
| 5 | xControl | As CUSTOMER_ADMIN, search for a Mobile Asset of the second Customer by IMSI. | Nothing is found. |
| 6 | xControl | As CUSTOMER_ADMIN, open Accounts and try to create an account with the ADMIN role. | The ADMIN role is not offered. |
| 7 | xControl | Log in as ADMIN and repeat the actions refused above. | Every action is available and succeeds. |
Pass criteria
- Every action tried matches the permission model for the role, in the portal and through the API.
- A Customer-scoped role never sees another Customer's objects.
Postconditions
- Revert the status change made as CUSTOMER_ADMIN.
Evidence collected: xControl screenshot.
EXP-SEC-007 — Audit trail of provisioning and access⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xControl |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 25 min |
| Prerequisite procedures | EXP-PRV-001 — Provision a Mobile Asset |
Objective. Provisioning changes and portal logins are recorded with the account, the time and, for logins, the origin address, so that an administrator can reconstruct who changed what.
Preconditions
- Tooling and access
- Log in to xControl with an account that holds the ADMIN role.
- A superuser account, for the revision history.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | xControl | Log in as ADMIN, then log out and attempt a login with a wrong password, then log in again correctly. | The correct logins succeed and the wrong one is refused. |
| 2 | xControl | Open Accounts and the Audit tile for your account. | The successful and the failed attempts are listed with their times and origin addresses. |
| 3 | — | Execute EXP-PRV-001 — Provision a Mobile Asset as a prerequisite procedure. | As defined in EXP-PRV-001. |
| 4 | xControl | Edit the new Mobile Asset (change its System Profile), then delete it. | Both changes are saved. |
| 5 | xControl | Log in as a superuser and open the revision history of the Mobile Asset. | Create, update and delete entries exist, each with the account that made the change and the time. |
Pass criteria
- Every login attempt and every provisioning change tried is recorded with account and time.
Evidence collected: xControl screenshot.
EXP-SEC-008 — Unknown-subscriber signalling storm⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| Duration | About 45 min |
| Prerequisite procedures | EXP-SES-001 — UE-initiated attach |
| Automated by | Platform suite, 4G split core: unknown-IMSI signalling soak (250 unserved IMSIs) |
Objective. A sustained flood of attach attempts from subscribers the platform does not know is rejected in full, without a restart of any network function, without unbounded memory growth, and without degrading service for known subscribers.
Service impact
This procedure interrupts service. Run it in a maintenance window or in a pre-production environment.
Preconditions
- Platform
- The 3GPP peer simulator is connected to the xCore as a radio and configured with 250 IMSIs that are not provisioned (for example on an unserved PLMN).
- Container CPU and memory of the MME or AMF and the subscriber database can be read (
kubectl top pod, or the container metrics in xView).
- Mobile Asset
- One Mobile Asset is connected and passing data (execute the UE-initiated attach procedure first if it is not).
- Tooling and access
- Access to the CLI.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | Tester | Record the restart count and the memory of every core pod (kubectl top pod -n <namespace>), and the MME or AMF context count (read mme or read amf, table footer total). |
The baseline is recorded. |
| 2 | Tester | Start the simulator's attach flood for ten minutes, ramping the number of concurrent attempts from 2 to 32 while the MME or AMF stays below its CPU limit. | Attempts are answered continuously. |
| 3 | UE | During the flood, open a web page or ping from the connected UE, and detach and re-attach it once. | The known UE keeps service and re-attaches normally. |
| 4 | Tester | Stop the flood and read the simulator's counters. | At least 100 attempts were made, every one was rejected, and none was accepted. |
| 5 | Kubernetes | Five minutes after the flood ended, compare pod restart counts and memory with the baseline. | No pod restarted; the MME or AMF memory is back at the baseline. |
| 6 | UE | Power on a UE with an unknown IMSI. | It is rejected promptly, as in EXP-PRV-005. |
| 7 | CLI | Run read mme (or read amf) again and read the table footer total. |
The context count is back to the baseline (the known UE only). |
Pass criteria
- Zero unknown subscribers accepted; no network function restarted.
- The known UE keeps service and re-attaches during the flood.
- MME or AMF memory is back at its pre-flood baseline within five minutes of the flood ending, and no context remains for any unknown IMSI.
Evidence collected: Kubernetes pod and node status; CLI output; UE connectivity check.
EXP-SEC-009 — Subscriber identity concealment (SUCI)⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 5G · Local radio · Single node, HA cluster, Geo-redundant |
| Duration | About 30 min |
Objective. A 5G UE never sends its permanent identity in clear. The Registration Request and every identity response carry a SUCI protected with the home network's public key, the UDM de-conceals it with the private key provisioned on the Site, and registration fails when that key is absent.
Preconditions
- Platform
- The home network private key for the Site's PLMN is provisioned on the Site's subscriber database (
cd /nr, thenadd suci pkId=<key id> plmn=<mccmnc>, entering the private key when prompted) andread sucilists it.
- The home network private key for the Site's PLMN is provisioned on the Site's subscriber database (
- Mobile Asset
- The UE's Mobile Asset is provisioned in xControl on the System under test, with state Active and status Provisioned or Disconnected.
- The SIM has SUCI concealment enabled with protection scheme Profile A or Profile B, the same key identifier, and the matching home network public key.
- Device
- The UE is powered off or in airplane mode.
- Tooling and access
- Log in to xControl with an account that can view the Mobile Asset under test.
- A signalling capture on N2 (capture point 1).
- Access to the CLI.
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | UE | Power on the UE, or take it out of airplane mode, and wait for it to register. | The UE registers and obtains a data connection. |
| 2 | Capture | Open the Registration Request and read the 5GS mobile identity. | The identity type is SUCI, the protection scheme is Profile A or Profile B (not null), the home network public key identifier equals the provisioned key identifier, and the scheme output is present. |
| 3 | Capture | Search the whole capture for the IMSI digits and for a 5GS mobile identity of type SUPI. | The IMSI does not appear in clear anywhere on N2. |
| 4 | Capture | Follow the registration. | Authentication and Security Mode complete and the Registration Accept assigns a 5G-GUTI. |
| 5 | CLI | Run cd /nr, then delete amf <imsi>, so that the network forgets the UE's context, then toggle airplane mode on the UE. |
The UE registers again with its 5G-GUTI; because the context is unknown, the network sends an Identity Request for the SUCI and the UE answers with a SUCI, again without the IMSI in clear. |
| 6 | CLI | Run delete suci pkId=<key id> (record the key first), then toggle airplane mode on the UE. |
Registration fails at authentication because the SUCI cannot be de-concealed; the UE obtains no service. |
| 7 | CLI | Run add suci pkId=<key id> plmn=<mccmnc> with the recorded key, then toggle airplane mode on the UE. |
The UE registers as in the first step. |
Expected signalling
Capture points: N2 (point 1).
5G (5GS) sequence
- Registration Request with 5GS mobile identity of type SUCI (protection scheme Profile A or B, home network public key identifier, scheme output)
- Authentication Request / Authentication Response, Security Mode Command / Security Mode Complete
- Registration Accept with 5G-GUTI, Registration Complete
- After the context is deleted, Registration Request with 5G-GUTI, Identity Request (identity type SUCI), Identity Response with a SUCI, then authentication and registration
- Without the private key, Authentication Reject or Registration Reject after the Registration Request
Pass criteria
- Every identity the UE sends on N2 is a SUCI with a non-null protection scheme and the provisioned key identifier; the IMSI never appears in clear.
- Registration succeeds with the private key present and fails without it.
Postconditions
- Confirm with
read sucithat the key is present again.
Evidence collected: 3GPP signalling capture (pcap); CLI output.
References: 3GPP TS 33.501 §6.12 (Subscription identifier privacy); 3GPP TS 24.501 §9.11.3.4 (5GS mobile identity (SUCI)); 3GPP TS 24.501 §5.4.3 (Identification procedure); 3GPP TS 23.003 §2.2B (Subscription Concealed Identifier (SUCI)).
EXP-SEC-010 — Authentication re-synchronisation⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore, xRouter |
| Applies to | 4G, 5G · Local radio, Public radio · Single node, HA cluster, Geo-redundant |
| Duration | About 45 min |
| Prerequisite procedures | EXP-SES-001 — UE-initiated attach |
Objective. A SIM that has been authenticated by one subscriber database (for example the private Site's) and then attaches through another (the xRouter's, or a second private Site's) reports a sequence-number mismatch. The network re-synchronises with the SIM and completes the authentication without any action on the device.
Preconditions
- Platform
- Two Sites of the same Customer with independent subscriber databases that both hold the Mobile Asset, A and B (a private Site and the xRouter, or two private Sites with a Shared System), each with a capture point on its S1-MME / N2 and S6a / N8 interfaces.
- Mobile Asset
- The Mobile Asset is provisioned on a System available at both Sites.
- Tooling and access
- Start a 3GPP signalling capture (pcap) with your preferred tool on the interfaces the procedure exercises.
- Log in to xControl with an account that can view the Mobile Asset under test.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | UE | At Site A, attach and detach the UE five times (EXP-SES-008), so that Site A's database advances the SIM's sequence number. | Every cycle completes. |
| 2 | UE | Move the UE to Site B's coverage (EXP-MOB-004 or EXP-MOB-006) and let it attach. | The UE attaches and obtains service without any action on the device. |
| 3 | Capture | Inspect the capture at Site B. | The messages match the sequence under Expected signalling; exactly one re-synchronisation round occurs. |
| 4 | UE | Detach and attach again at Site B. | The attach completes without a re-synchronisation. |
| 5 | UE | Return to Site A and attach. | At most one re-synchronisation round occurs and the attach completes. |
Expected signalling
Capture points: S1-MME / N2 at Site B (point 1), S6a / N8 at Site B (point 4).
4G (EPS) sequence
- Attach Request, Authentication Information Request / Answer, Authentication Request
- Authentication Failure from the UE with EMM cause #21, synch failure, carrying the AUTS parameter
- Authentication Information Request on S6a carrying Re-Synchronization-Info, and Authentication Information Answer with new vectors
- Authentication Request / Authentication Response, then the attach completes
5G (5GS) sequence
- Registration Request, authentication vector retrieval, Authentication Request
- Authentication Failure from the UE with 5GMM cause #21, synch failure, carrying AUTS
- Re-synchronisation between the AUSF and the UDM, then Authentication Request / Authentication Response and the registration completes
Pass criteria
- The attach at the second Site completes without any action on the device.
- Exactly one re-synchronisation round is needed on arrival, none on the following attach at the same Site.
Evidence collected: 3GPP signalling capture (pcap); xControl session event log.
References: 3GPP TS 33.102 §6.3.5 (Re-synchronisation procedure); 3GPP TS 24.301 §5.4.2.7 (Abnormal cases in the UE (synch failure)); 3GPP TS 29.272 §5.2.3.1 (Authentication Information Retrieval (Re-Synchronization-Info)); 3GPP TS 33.501 §6.1.3.3 (Synchronisation failure or MAC failure); 3GPP TS 24.501 §5.4.1.3.7 (Abnormal cases in the UE (5G AKA synch failure)).
EXP-SEC-011 — Illegal UE reject (cause #3) after a failed authentication⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore, xControl |
| Applies to | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| Duration | About 25 min |
| Prerequisite procedures | EXP-SEC-003 — Authentication failure with wrong key material |
Objective. A UE the network cannot authenticate is refused with cause 3, Illegal UE: the network abandons the attach or registration with that cause, releases the radio connection and keeps no context, and the UE treats its SIM as invalid for the network until it is power-cycled instead of retrying. EXP-SEC-003 covers the failure itself and its visibility; this test covers the exact cause and what follows it.
Preconditions
- Platform
- The Site has a System with a System Profile and a Keyset.
- Mobile Asset
- A Mobile Asset provisioned for the UE's IMSI with a deliberately wrong secret key (K), state Active, as in EXP-SEC-003.
- Device
- The UE is powered off or in airplane mode.
- Tooling and access
- Log in to xControl with an account that holds the ADMIN role.
- Start a 3GPP signalling capture (pcap) with your preferred tool on the interfaces the procedure exercises.
- Procedures executed first
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | UE | Power on the UE, or take it out of airplane mode, and note the time. | The UE fails to obtain service on the private network. |
| 2 | Capture | Inspect the radio-side capture (point 1). | The attach or registration ends with a reject carrying cause #3, Illegal UE, as listed under Expected signalling, followed by the release of the UE's radio connection. |
| 3 | UE | Leave the UE on for five minutes and watch the capture. | No further Attach Request or Registration Request from the UE on this network: the UE treats its SIM as invalid for the network until it is switched off. |
| 4 | CLI | In the CLI on the Site: cd /lte then read mme -f imsi=<imsi> (4G), or cd /nr then read amf <imsi> (5G). |
No context exists for the IMSI. |
| 5 | xControl | Open the Mobile Asset and its Event Log. | The status is not Connected; the failed authentication is recorded. |
| 6 | xControl | Correct the secret key, then power the UE off and on. | The UE attaches as in EXP-SES-001. The power cycle is needed because the UE had marked its SIM invalid. |
Expected signalling
Capture points: S1-MME / N2 (point 1), S6a / N8 (point 4).
4G (EPS) sequence
- Attach Request, then Authentication Information Request / Answer on S6a and Authentication Request to the UE
- Authentication Failure from the UE (EMM cause #20, MAC failure), optionally followed by Identity Request / Response for the IMSI and a second Authentication Request / Failure; or, with a simulator, an Authentication Response whose RES the MME rejects
- Authentication Reject when a response was received, then Attach Reject with EMM cause #3, Illegal UE
- UE Context Release Command / Complete
5G (5GS) sequence
- Registration Request, then the authentication vector retrieval through the AUSF and UDM and Authentication Request to the UE
- Authentication Failure from the UE (5GMM cause #20, MAC failure), or an Authentication Response the AUSF rejects
- Authentication Reject, or Registration Reject with 5GMM cause #3, Illegal UE
- UE Context Release Command / Complete
Pass criteria
- The reject carries cause #3, Illegal UE (EMM on 4G, 5GMM on 5G), the radio connection is released, and no MME or AMF context remains.
- The UE makes no further attach or registration attempt on the network for five minutes after the reject.
- The failed authentication is visible in the xControl Event Log within 60 seconds, and service returns once the key is corrected and the UE power-cycled.
Postconditions
- Restore the correct key material on the Mobile Asset.
Deployment notes
- Simulator: With the 3GPP peer simulator, send an Authentication Response with a wrong RES instead of using a mis-keyed SIM: the network rejects the response and the same cause follows.
Evidence collected: 3GPP signalling capture (pcap); xControl session event log; CLI output.
References: 3GPP TS 24.301 §5.4.2.7 (Authentication procedure, abnormal cases on the network side); 3GPP TS 24.301 §5.5.1.2.5 (Attach not accepted by the network); 3GPP TS 24.501 §5.4.1.3.5 (Authentication not accepted by the network); 3GPP TS 24.501 §5.5.1.2.5 (Initial registration not accepted by the network); 3GPP TS 33.401 §6.1.1 (AKA procedure).
EXP-SEC-012 — PLMN not allowed (cause #11) for a UE of a PLMN the Site does not serve⚓︎
| Attribute | Value |
|---|---|
| Status | Accepted |
| Category | Security |
| Components | xCore |
| Applies to | 4G, 5G · Local radio · Single node, HA cluster, Geo-redundant |
| Duration | About 25 min |
Objective. A UE whose IMSI belongs to a PLMN the Site does not serve selects the private network and is refused with cause 11, PLMN not allowed, before any authentication: the UE places the private PLMN on its forbidden list and returns to its own network instead of retrying, and the private core spends no subscriber-database exchange on it. This is the behaviour a private radio owes the mobile operator's other subscribers and any third-party device in its coverage.
Preconditions
- Platform
- The private radio broadcasts a PLMN of its own, different from the home PLMN of the UE under test.
- The Site's served PLMN list holds only the PLMNs of the Mobile Assets it hosts; the UE's home PLMN is not among them.
- Mobile Asset
- A UE with a SIM of another network (a consumer SIM of the mobile operator, or a third party's) that is not provisioned in xControl.
- Device
- The UE is powered off or in airplane mode.
- Tooling and access
- Start a 3GPP signalling capture (pcap) with your preferred tool on the interfaces the procedure exercises.
Procedure
| # | Where | Action | Expected result |
|---|---|---|---|
| 1 | UE | Power on the UE and select the private network's PLMN manually in its network selection menu, or power it on where only the private radio has coverage. Note the time. | The UE is refused and shows no service on the private network. |
| 2 | Capture | Inspect the radio-side capture (point 1). | The attach or registration is answered with a reject carrying cause #11, PLMN not allowed, with no Authentication Request before it, as listed under Expected signalling. |
| 3 | Capture | Inspect the subscriber-database capture (point 4). | No Authentication Information Request (4G) and no authentication request to the AUSF or UDM (5G) is sent for the UE's IMSI. |
| 4 | UE | Set network selection back to automatic and watch the UE and the capture for five minutes. | The UE selects its home network where it has coverage and sends no further Attach Request or Registration Request to the private network. |
| 5 | CLI | In the CLI on the Site: cd /lte then read mme -f imsi=<imsi> (4G), or cd /nr then read amf <imsi> (5G). |
No context exists for the IMSI. |
Expected signalling
Capture points: S1-MME / N2 (point 1), S6a / N8 (point 4).
4G (EPS) sequence
- Attach Request with the IMSI, or with a GUTI followed by Identity Request / Identity Response for the IMSI
- Attach Reject with EMM cause #11, PLMN not allowed; no Authentication Request to the UE and no Authentication Information Request on S6a
- UE Context Release Command / Complete
5G (5GS) sequence
- Registration Request with a SUCI, or with a 5G-GUTI followed by Identity Request / Identity Response for the SUCI
- Registration Reject with 5GMM cause #11, PLMN not allowed; no Authentication Request to the UE and no request to the AUSF or UDM
- UE Context Release Command / Complete
Pass criteria
- The reject carries cause #11, PLMN not allowed, and is sent without an authentication attempt; no request for the UE's identity reaches the subscriber database.
- The UE makes no further attempt on the private PLMN in automatic selection for five minutes and returns to its home network where it has coverage.
- No MME or AMF context remains for the IMSI.
Postconditions
- Power-cycle the UE to clear the private PLMN from its forbidden list before using it in other tests.
Deployment notes
- MNO PLMN broadcast: Where the private radio broadcasts the mobile operator's own PLMN, cause #11 would forbid the UE's home network; such a deployment refuses unserved subscribers through the subscriber database instead (EXP-PRV-005) and this test does not apply.
Evidence collected: 3GPP signalling capture (pcap); CLI output.
References: 3GPP TS 24.301 §5.5.1.2.5 (Attach not accepted by the network); 3GPP TS 24.501 §5.5.1.2.5 (Initial registration not accepted by the network); 3GPP TS 23.122 §3.1 (Forbidden PLMN list (definition)).