The present disclosure relates generally to wireless networking. More particularly, the present disclosure relates to international mobile subscriber identity (IMSI) catchers, and, more particularly, to a subscriber permanent identifier (SUPI) catcher for use in 5G networks which associates SUPI and subscriber concealed identifier (SUCI).
An IMSI Catcher is an eavesdropping device used for intercepting mobile phone traffic and tracking location data of mobile phone users. In 4G, when user equipment (UE) initially attaches to a long-term evolution (LTE) network (e.g., turning on the UE), it sends its IMSI to the network for authentication to have itself identified. One can therefore associate a mobile phone user to its IMSI and track the IMSI activity in the network traffic to obtain location data for the user.
In 5G networks the IMSI is replaced by a subscription permanent identifier (SUPI) that is also a representative value for the UE. However, 5G users do not send the SUPI in clear mode but rather send an encrypted value known as subscriber concealed identifier (SUCI), as defined in 3GPP TS 33.501 (see, e.g., Security architecture and procedures for 5G System, 3GPP TS 33.501 version 16.3.0 Release 16, August 2020, the contents of which are incorporated by reference in their entirety). This makes it very complicated for catchers to find the right user identifier especially since the SUCI could change at any time due to a refreshing parameter embedded in the encryption mechanism.
There is therefore a need for an IMSI/SUPI catcher for use in 5G networks.
The present disclosure relates to systems and methods for international mobile subscriber identity (IMSI) catchers, and, more particularly, to a subscriber permanent identifier (SUPI) catcher for use in 5G networks which associates SUPI and subscriber concealed identifier (SUCI). Systems and methods for detecting a subscriber permanent identifier (SUPI) from a subscriber concealed identifier (SUCI) include steps of receiving the SUCI that is a representative of user equipment (UE) of interest and that is encrypted; checking association data with the received SUCI to determine a corresponding SUPI, wherein the association data includes a mapping of a plurality of SUCIs to a plurality of SUPIs and is maintained over time based on monitoring messages in a 5G core network; and providing the corresponding SUPI. The steps can further include updating the association data based on monitoring exchanges on both sides of an access and mobility management function (AMF) associated with the 5G core network.
In various embodiments, the present disclosure includes a method having steps, a processing device with memory storing instructions that, when executed, cause one or more processors to perform the steps, and/or non-transitory computer-readable medium with instructions that, when executed, cause one or more processors to perform the steps. The steps include receiving the SUCI that is a representative of user equipment (UE) of interest and that is encrypted; checking association data with the received SUCI to determine a corresponding SUPI, wherein the association data includes a mapping of a plurality of SUCIs to a plurality of SUPIs and is maintained over time based on monitoring messages in a 5G core network; and providing the corresponding SUPI.
The steps can further include updating the association data based on monitoring one or more of i) exchanges on both sides of an access and mobility management function (AMF) associated with the 5G core network and ii) on communication between unified data management (UDM) and an authentication server function (AUSF). A SUCI changes for a corresponding SUPI based on any changes in associated encryption. The monitoring exchanges can be via a probe that captures data on the both sides of the AMF and via identifying specific messages on a message bus configured to receive the exchanges from the probe. The monitoring exchanges can include capturing raw frames, stream processing the raw frames, and identifying events via the stream processing. The monitoring exchanges can include identifying the mapping based on correlating a hypertext transfer protocol 2 (HTTP/2) request and response. The monitoring exchanges can include identifying the mapping based on a presence of a specific key in a response. The monitoring exchanges can include monitoring events in a stream processing system connected to one or more probes in the 5G core network. The updating can be based on enrichment events caused in the stream processing system based on correlation of tickets therein.
The receiving can be via catcher equipment that is configured as a base station interfacing with a 5G network associated with the 5G core network.
The present disclosure is illustrated and described herein with reference to the various drawings, in which like reference numbers are used to denote like system components/method steps, as appropriate, and in which:
Again, the present disclosure relates to systems and methods for international mobile subscriber identity (IMSI) catchers, and, more particularly, to a subscriber permanent identifier (SUPI) catcher for use in 5G networks which associates SUPI and subscriber concealed identifier (SUCI).
For homeland security, law enforcement, etc., there is a product called an IMSI catcher that act like a fake cell tower to intercept communications (calls, text messages, Internet traffic, and more) from a targeted UE, then relay to the target cell tower of the network operator. This solution allows also to check for the presence of a perpetrator in a specific area or even figure out their exact location without the need for operator cooperation. This type of procedures is also known as a man-in-the-middle (MitM) attack and those products are normally sold to law enforcement agencies. This product is based on catching IMSIs that are not encrypted on the 2G, 3G and 4G networks. Instead, they are transmitted in plain text over the air. So, although calls and texts are encrypted in 4G, the user's meta data—identity and location—is not.
However, the arrival of 5G implies a significant challenge to this type of product due to encrypted user identifiers. 5G created a new kind of identifier, the SUPI (subscription permanent identifier), but UEs do not send the SUPI over the air. Instead, they send an encrypted key called a SUCI (subscription concealed identifier) and this blinds the IMSI catchers completely and prevents them obviously from working independently away from operators.
In 5G Networks, the first registration uses a concealed SUPI for security purpose. The concealed SUPI (aka SUCI) is generated by using a public key of network. The public keys are stored to SIM card and never seen or exchanged between equipment involved in 5G. During this first registration, the UE and the Network negotiate a 5G-global unique temporary identifier (GUTI) that will be used for further registrations. So, if a system that supervises a 5G network is unable to get the SUPI (aka IMSI) from the SUCI during the first registration, it will be almost impossible to track users in 5G network based on the SUPI.
Of note, an IMSI catcher is a product/solution that operates in 2G, 3G, and 4G networks. In 5G, the equivalent product/solution can be referred to as a SUPI catcher.
Based on the fact the SUPI is encrypted as the SUCI over-the-air, there is a need to coordinate monitoring with the mobile network operator (MNO) to decrypt the SUCI. Since the MNO controls the security and privacy of the IMSI from the subscriber identify module (SIM) to the network, lawful intercept can still work with agents to monitor approved criminal targets.
In various embodiments, the present disclosure includes an approach that removes the dependency of the law enforcement agencies on operators by allowing them to capture requested details using over-the-top-provider (OTTP) components. The monitoring solution can capture and process the traffic without the need to get the operators approval to access data per session or per user.
The SUPI catcher 22 can be a fake base station or the like that is attached to the network as a genuine base station and interfaces with the operator core network 26. The setup of the SUPI catcher 22 as a base station is performed in a first step. A second step involves deploying an evolved software capture via the enrichment interface 24 that can obtain the SUCI 34 and SUPI 36 on both sides of the AMF 30 to create a matrix that associates each SUCI 34 (or updated SUCI 34 based on the encryption) with the relevant SUPI 36. The enrichment mechanism 24 is based on exchanges with tickets between processing units (PU) through a message bus (e.g., Apache Kafka) topics.
A summary of the present disclosure includes:
The approach described herein to obtain the SUPI 36 of the UE 10 and its associated traffic does not require any changes to the existing network design. This solution is important to homeland security agencies as well as service monitoring. The present disclosure uses OTTP components to remove the dependency of the law enforcement agencies on operators by allowing them to capture requested details. The monitoring solution can capture and process the traffic without the need to get the operators approval to access data per session or per user.
The evolved software capture to obtain the SUCI and SUPI can be also attached to both sides of the UDM 12, as well as or in addition to the AMF 30, to create a matrix that associates each SUCI 34 (or updated SUCI 34 based on the encryption) with the relevant SUPI 36. This use case can is more relevant to roaming model when catcher 20 equipment is located on a third-party operator and SUCIs are exchanged via SEPP or maybe through SCP exchanges.
The 5G core interfaces can be encrypted with TLS1.3 to improve their resiliency in a cloud native design as part of service-based architecture (SBI) model. In another model, the evolved software capture and enrichment mechanism could benefit from new decryption solutions to capture message exchanges in clear mode especially in fully encrypted SBI interfaces in live networks. Various decryption mechanisms could be used to decrypt SBI interfaces considering the type of 5G core deployment and hosting domain (for example, using eBPF, extended Berkeley Packet Filter).
There can be various probes in the 5G network for various service assurance functions and the like. As described herein, a probe can be a virtual network function (VNF), such as compliant with ETSI/MANO and ONAP standards, deployed in the cloud. In an embodiment, there can be a probe to supervise the 5G network that needs to get the IMSI (SUR) to track UEs.
In the 3GPP specification, there is a procedure in the Service Based Architecture between the UDM (Unified Data Management) and UDR (User Data Repository) that uses the SUCI in the request and gets the SUPI in the response because the SUPI is the main identity used in the 5G core network 26. The basic issue with this procedure is that the probe needs to capture this exchange so it must access deep in the 5G core network 26. Moreover, to avoid a security breach, some customers colocalizes these two network functions (UDM and UDR) in a unique network function so this procedure is not visible in the 5G core network 26.
One implementation of a probe, using the 3GPP specification, can implement the hypertext transfer protocol (HTTP)/2 Request/Response Correlation between the UDM and the AUSF. To remove the issue with colocalized network functions, the probe can implement the correlation between two HTTP/2 procedures using a correlation key named AuthCtxId. This can include a limitation due to HTTP/2 load balancing that prevents a good association between SUCI and SUPI. There can be a ticket exchange between HTTP/2 processing units (PU) to allow the two procedures to be processed by different PUs.
As is described herein, the existing probes are used to provide the enrichment mechanism 24 to enrich the SUPI catcher 20. The probes can be software, network functions, etc. that are configured to monitor and process data to a message bus (e.g., Apache Kafka). The enrichment mechanism 24 is based on monitoring the exchanges on the message bus.
The stream processing system 50 performs stream processing (also known as event stream processing, data stream processing, or distributed stream processing) which is a programming paradigm which views data streams, or sequences of events in time, as the central input and output objects of computation. Stream processing systems aim to expose parallel processing for data streams and rely on streaming algorithms for efficient implementation. The software stack for these systems includes components such as programming models and query languages, for expressing computation; stream management systems, for distribution and scheduling; and hardware components for acceleration including floating-point units, graphics processing units, and field-programmable gate arrays.
In an embodiment, the stream processing system 50 utilizes Apache Kafka, although other implementations are also contemplated. The foregoing description assumes the stream processing system 50 is Apache Kafka for illustration purposes. The stream processing system 50 includes a raw data collection component 60 that streams the raw data to processing units (PU) 62, 64, specifically an N1N2 PU 62 and a service based interface (SBI) PU 64. The N1 interface is a transparent interface from the UE 10 to the AMF 30. The N2 interface is the control plane interface between an Access Network—NG-RAN or non-3GPP WLAN—and the 5G core network 26. The data from the PUs 62, 64 is provided to an enrichment function 66, and various events 68 are detected based thereon.
The enrichment function 66 is configured to perform data enrichment which is a process of merging data from the PUs 62, 64. Enriching Data from numerous sources via joins is a fundamental process in streaming data (and traditional databases). In an embodiment, enrichment is based on exchanges with tickets between processing unit (PU) through message bus (e.g., Kafka) topics. Tickets are produced by the PUs 62, 64 as soon as the event 68 is ready. Tickets are consumed by the PUs 62, 64 when they are received. There is a delay between producing and consuming to counteract Kafka's latency.
The ECS 40 is responsible to load balance frames between the PUs 62, 64 from the same interfaces. For the SBI, it can use the Internet Protocol (IP) addresses and the Transmission Control Protocol (TCP) ports in ascending order to create the load balancing key. For Stream Control Transmission Protocol (SCTP), it can use the lowest SCTP Verification Tag between uplink and downlink and the SCTP Ports in ascending order to create the load balancing key.
The following are example enrichment topics via the stream processing system 50:
As is described herein, the data enrichment can be used to obtain data for the association of SUCI to SUPI.
In
In
In
In
In
This second example embodiment has a capture point at the AMF 30 not in the 5G core network 26. It only has one interface to decode. Its limitations include the following: Location and path parsing for AuthCtxId could be costly. The correlation between two procedures is based on a string search. If the two procedures do not use the same IP addresses, the correlation could fail due to load balancing algorithm in SBI Pipelines.
The process 100 includes receiving the SUCI that is a representative of user equipment (UE) of interest and that is encrypted (step 102); checking association data with the received SUCI to determine a corresponding SUPI, wherein the association data includes a mapping of a plurality of SUCIs to a plurality of SUPIs and is maintained over time based on monitoring messages in a 5G core network (step 104); and providing the corresponding SUPI (step 106).
The process 100 can further include updating the association data based on monitoring one or more of i) exchanges on both sides of an access and mobility management function (AMF) associated with the 5G core network and ii) on communication between unified data management (UDM) and an authentication server function (AUSF) (108). A SUCI changes for a corresponding SUPI based on any changes in associated encryption.
The monitoring exchanges can be via a probe that captures data on the both sides of the AMF and via identifying specific messages on a message bus configured to receive the exchanges from the probe. The monitoring exchanges can include capturing raw frames, stream processing the raw frames, and identifying events via the stream processing. The monitoring exchanges can include identifying the mapping based on correlating a hypertext transfer protocol 2 (HTTP/2) request and response. The monitoring exchanges can include identifying the mapping based on a presence of a specific key in a response.
The monitoring exchanges can include monitoring events in a stream processing system connected to one or more probes in the 5G core network. The updating can be based on enrichment events caused in the stream processing system based on correlation of tickets therein.
The receiving can be via catcher equipment that is configured as a base station interfacing with a 5G network associated with the 5G core network.
It will be appreciated that some embodiments described herein may include one or more generic or specialized processors (“one or more processors”) such as microprocessors; central processing units (CPUs); digital signal processors (DSPs): customized processors such as network processors (NPs) or network processing units (NPUs), graphics processing units (GPUs), or the like; field programmable gate arrays (FPGAs); and the like along with unique stored program instructions (including both software and firmware) for control thereof to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of the methods and/or systems described herein. Alternatively, some or all functions may be implemented by a state machine that has no stored program instructions, or in one or more application-specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic or circuitry. Of course, a combination of the aforementioned approaches may be used. For some of the embodiments described herein, a corresponding device in hardware and optionally with software, firmware, and a combination thereof can be referred to as “circuitry configured or adapted to,” “logic configured or adapted to,” etc. perform a set of operations, steps, methods, processes, algorithms, functions, techniques, etc. on digital and/or analog signals as described herein for the various embodiments.
Moreover, some embodiments may include a non-transitory computer-readable storage medium having computer-readable code stored thereon for programming a computer, server, appliance, device, processor, circuit, etc. each of which may include a processor to perform functions as described and claimed herein. Examples of such computer-readable storage mediums include, but are not limited to, a hard disk, an optical storage device, a magnetic storage device, a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), Flash memory, and the like. When stored in the non-transitory computer-readable medium, software can include instructions executable by a processor or device (e.g., any type of programmable circuitry or logic) that, in response to such execution, cause a processor or the device to perform a set of operations, steps, methods, processes, algorithms, functions, techniques, etc. as described herein for the various embodiments.
Although the present disclosure has been illustrated and described herein with reference to preferred embodiments and specific examples thereof, it will be readily apparent to those of ordinary skill in the art that other embodiments and examples may perform similar functions and/or achieve like results. All such equivalent embodiments and examples are within the spirit and scope of the present disclosure, are contemplated thereby, and are intended to be covered by the following claims. The foregoing sections include headers for various embodiments and those skilled in the art will appreciate these various embodiments may be used in combination with one another as well as individually.
The present disclosure claims priority to U.S. Provisional Patent Application Nos. 63/349,842, 63/354,971, and 63/390,657, filed on Jun. 7, 2022, Jun. 23, 2022, and Jul. 20, 2022, respectively, and the contents of which are incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
63349842 | Jun 2022 | US | |
63354971 | Jun 2022 | US | |
63390657 | Jul 2022 | US |