VSecure - University of Missouri

advertisement
VSECURE: A Secure Service Access
Scheme for GSM
By
VINIT NAGDA
School of Computing and Engineering
University of Missouri Kansas City
Abstract
Global System for Mobile Communications (GSM) provides a basic range of security
features to ensure adequate protection for both the operator and customer. Over the
lifetime of any system, the threat and technology change and so the security needs
periodically reviewed and enhanced. The functional features of any system must be well
supported by secured procedures to ensure incessant working of the system. The security
provided by GSM is well in advance of similar mobile radio systems, and should ensure
that it remains at the front of the field for the time to come. In this paper we discuss,
security loopholes in the existing GSM system, and provide alternatives by making use of
Public Key Cryptography.
VSecure: A Secure Service Access Scheme for GSM
I. Introduction
There are many service domains in the Personal Communication Systems (PCS’s), each
operated under a different administration with a different level of protection. Some
service domains are more vulnerable to attacks than the others from intruders or insiders.
The objective of security for GSM system is to make the system as secure as the Public
Switched Telephone Network (PSTN). The use of radio as the transmission media allows
a number of potential threats resulting in eavesdropping the transmissions.
Mobile computing and communication is a rapidly developing area. But mobility is
associated with problems of security and privacy beyond those in open networks. The
current state of the art GSM security system has several loopholes. It transmits user
information in plain text and requires the need to send other security sensitive
information a number of times. Our proposed solution eliminates the loopholes, using the
same number of exchanged messages as before. For subsequent calls, our scheme reduces
the number of messages exchanged.
We present the security requirements in the following section followed by some
background concepts, related work and our idea, and finally the conclusion.
II. Security Requirements
Existing mobile systems have a number of potential weaknesses. These were considered
in the security requirements for GSM and are listed as follows.









Issue bills to the right people, and that the services cannot be compromised.
The customer requires some privacy against traffic being overheard.
To prevent operators from compromising each others' security, whether
inadvertently or because of competitive pressures.
The security measures must not significantly add to the delay of the initial call set
up or subsequent communication.
The security measures must not increase the bandwidth of the channel.
The security measures must not allow for increased error rates, or error
propagation.
The security measures must not add excessive complexity to the rest of the
system.
The proposed solution must be cost effective.
Implement secure procedures for the generation and distribution of keys,
exchange of information between operators, and the confidentiality of the
algorithms.
2
VSecure: A Secure Service Access Scheme for GSM
III. Background Concepts
IMSI:
The International Mobile Subscriber Identity (IMSI) is a unique non - dialable number
allocated to each mobile subscriber in the GSM system that identifies the subscriber and
his or her subscription within the GSM network. The IMSI resides in the Subscriber
Identity Module (SIM). The IMSI is made up of three parts (1) the mobile country code
(MCC) consisting of three digits, (2) the Mobile Network Code (MNC) consisting of two
digits, and (3) the Mobile Subscriber Identity Number (MSIN) with up to 10 digits.
HLR:
A Home Location Register (HLR) is a database that contains mobile subscriber
information for a wireless carrier. HLR subscriber information includes the International
Mobile Subscriber Identity (IMSI), service subscription information, location information
(the identity of the currently serving Visitor Location Register (VLR) to enable the
routing of mobile-terminated calls), service restrictions and supplementary service
information.
VLR:
A Visitor Location Register (VLR) is a database which contains temporary information
concerning the mobile subscribers that are currently located in a given MSC serving area,
but whose Home Location Register (HLR) is elsewhere. When a mobile subscriber roams
away from his home location and into a remote location, SS7 messages are used to obtain
information about the subscriber from the HLR, and to create a temporary record for the
subscriber in the VLR. There is usually one VLR per MSC.
Wireless Security Concepts
Mobile
Subscriber
Base Station
Communication
Network
Wireless
Link
The mobile unit communicates with the base station using an insecure wireless channel.
The Base Station (BS) however communicates with the rest of the network using a wired
network, which is secure. So the security problem we are concerned about is at the
wireless link between the subscriber and the BS. The subscriber and the BS make use of
cryptography to provide data confidentiality. Both establish and share a common session
key for communication. Thus the BS needs to store one session key per customer.
3
VSecure: A Secure Service Access Scheme for GSM
When the mobile user roams outside the service providers “home area”, he will approach
the VLR to connect the phone calls. However VLR needs to authenticate the Mobile
Subscriber before providing the service. It needs to confirm with the subscribers HLR, so
that he can later bill the HLR for the accessed services. Also the HLR cannot hand over
the secret key shared between itself and the mobile subscriber to the VLR.
We need a mechanism by which the HLR can provide some information to the VLR, on
the basis of which the VLR can authenticate the mobile subscriber, at the same time
hiding the secret key shared between the HLR and the mobile subscriber. The existing
GSM protocol provides a solution but has several security loopholes. The solution is
presented in the next section.
Cryptographic Functions:
Authentication is used to identify the user (or holder of a Smart Card) to the network
operator. It uses a technique that can be described as a "Challenge and Response", based
on encryption. Authentication is performed by a challenge and response mechanism. A
random challenge is issued to the mobile, the mobile encrypts the challenge using the
authentication algorithm (A3) and the key assigned to the mobile, and sends a response
back. The operator can check that, given the key of the mobile, the response to the
challenge is correct. Eavesdropping the radio channel reveals no useful information, as
the next time a new random challenge will be used. Authentication can be provided using
this process. A random number is generated by the network and sent to the mobile. The
mobile use the Random number R as the input (Plaintext) to the encryption, and, using a
secret key unique to the mobile Ki, transforms this into a response Signed RESponse
(SRES) (Cipher text) which is sent back to the network.
MOBILE
RADIO INTERFACE
FIXED NETWORK
Key
Ki
Challenge R
Ki
A3
Response SRES
A3
?
A8
A8
SIM
Kc
Kc
ENCRYPTED DATA
A5
A5
The network can check that the mobile really has the secret key by performing the same
SRES process and comparing the responses with what it receives from the mobile. The
response is then passed through an algorithm A8 by both the mobile and the network to
4
VSecure: A Secure Service Access Scheme for GSM
derive the key Kc used for encrypting the signaling and messages to provide privacy (A5
series algorithms).
IV. Related work
The Existing GSM security scheme
Mobile
Subscriber
VLR
HLR
1
IMSI
IMSI
IMSI, (Rnd No, SRES, Kc)
Rnd No
SRES
3
2
A5(Kc,TMSI)
Rnd No: Random Number
Kc = A8 (Ki, Rnd No)
SRES = A3 (Ki, Rnd No)
Rnd No, SRES, Kc are called as a 3-tuple.
The existing GSM security scheme is as follows. When the mobile user roams outside the
service providers “home area”, he will approach the VLR to connect the phone calls. He
provides the VLR with its own IMSI. The VLR obtains the MNC from the IMSI, which
enables it to identify the HLR, whom it will send the IMSI to. The HLR identifies the
mobile subscriber based on the MSIN, picks up the shared session key from its database
for that subscriber and prepares a 3-tuple, which consists of a random number, SRES
based on the random number and the Kc, again based on the same random number. The
HLR sends the 3-tuple across to the VLR to enable it authenticate the mobile subscriber.
The VLR picks the random number obtained in the 3-tuple and sends it to the mobile
subscriber. Since the mobile subscriber also has the same shared session key Ki, it can
compute the SRES and the Kc by itself. It sends the computed SRES to the VLR. The
VLR then matches the SRES it obtained earlier from the HLR with the one obtained from
the mobile subscriber. If both the SRES match, then the VLR knows the mobile
subscriber is authentic.
The VLR then encrypts a Temporary Mobile Subscriber Identity (TMSI) using the
encryption algorithm A5 and key Kc. The TMSI is used so that sending the IMSI in
5
VSecure: A Secure Service Access Scheme for GSM
unencrypted form can be prevented further. A new TMSI is used for every subsequent
transaction, that the mobile subscriber contacts the VLR.
The HLR actually sends a number of 3-tuples across to the VLR, so that every time the
mobile subscriber wants to make a phone call, the VLR doesn’t need to contact the HLR.
Each 3-tuple can be used only once. The VLR obtains the locally stored 3-tuple and uses
them for subsequent transactions. The VLR will need to contact the HLR, when the
stored 3-tuples for that subscriber are depleted. This practice of sending multiple 3-tuples
is not a very good one, since the 3-tuple is very security sensitive information. Thus if the
storage is not secure, the 3-tuple may be compromised which can create security
problems, since that is the only way to authenticate a roaming user. Also the VLR
requesting the HLR, every time it needs a 3-tuple is also not a good idea, since it
increases the communication overhead. So we need a way which can avoid the multiple
3-tuple problems.
One more problem that exists with the current scheme is that of non-repudiation. Since
the HLR sends multiple 3-tuples to the VLR, some of them may remain unused. However
there is no way to check how many of them were actually used, but to believe the VLR.
The VLR can make false claims that the mobile subscriber made the calls, since it has the
information about the SRES.
Thus we observe 3 security loopholes in the existing system.
1) Transmitting the IMSI in plain text.
2) Sending multiple 3-tuples across to the VLR.
3) Non repudiation.
4)
V. VSecure: The Scheme
VLR
Mobile
Subscriber
MNC, PubHLR[ IMSI, PriMS(IMSI)]
HLR
PubHLR[ IMSI, PriMS(IMSI)]
PubVLR[IMSI, Auth data], PubMS
PubMS(R1), PubVLR
PriMS(R1, timestamp) , PubVLR(R2)
PubMS(R2)
We propose the use of public key security and digital signatures to avoid the above
problems. Our method uses the same number of exchanged messages and achieves a
better level of security.
6
VSecure: A Secure Service Access Scheme for GSM
When the mobile user roams outside the service providers “home area”, he will approach
the VLR to connect the phone calls. He sends the following information to the VLR. Its
IMSI encrypted using its own private key, and another copy of IMSI, all of this encrypted
using the public key of the HLR, and the MNC in the plain text.
The VLR looks at the MNC and routes the remaining part of the packet to the appropriate
HLR based on the MNC. The HLR decrypts the packet using its own private key, obtains
the IMSI, retrieves the MSIN of the mobile user from the IMSI, and obtains the public
key from the database stored for that user. It uses the public key to decrypt the digital
signature of the user. If decrypted successfully, the IMSI contained inside the digital
signature should match the IMSI outside it. Thus the HLR authenticates the mobile
subscriber. It then prepares a packet which contains the IMSI and the authorization data
of the mobile subscriber encrypted using the public key of the VLR. It appends the public
key of the mobile user to the packet and sends it to the VLR.
The VLR decrypts the packet using its own private key, obtains the IMSI and
authorization data. The VLR and the mobile subscriber then initiate a random challenge
to authenticate each other. The VLR sends a random number encrypted in the mobile user
public key, and appends its own public key to the packet.
The mobile user decrypts the packet using its own private key, obtains the random
number and encrypts the random number along with the current timestamp in its own
private key. This serves as a digital signature. It also selects another random number and
encrypts it using the public key of the VLR.
The VLR then makes 2 copies of the digital signature received from the mobile user. It
saves one copy in its local memory and uses it to bill the HLR. It decrypts another copy
using the public key of the user and matches the timestamp. It also decrypts the second
random challenge initiated by the user using its own private key and encrypts it using the
public key of the mobile user.
Each subsequent transaction avoids the 3-way handshake present in the earlier scheme
and requires the user to just send the digital signature encrypted message containing the
current timestamp.
VI. Benefits of VSecure:
VSecure is better than the current GSM security scheme in the following respects:

VSecure avoids sending the IMSI in plain text. It always sends the information
encrypted, and thus avoids the chances of the IMSI being eavesdropped on.

VSecure doesn’t require the HLR to send multiple copies of the 3-tuple. The 3tuple contains security sensitive information and we should avoid prolonged
7
VSecure: A Secure Service Access Scheme for GSM
storage of multiple 3-tuples. VSecure provides the VLR to independently
authenticate the mobile user, without even sending the 3-tuple information.

VSecure avoids the non-repudiation problem by making use of timestamp. Now
the VLR cannot make false claims to the HLR about phone calls that the mobile
user hasn’t made. Since the VLR is required to store a copy of the digital
signature obtained from the mobile user for each call, the security loophole is
avoided. Whenever the VLR tries to cheat, the HLR can ask for the digital
signature copy. Using the public key of the mobile user, one can easily decrypt
the digital signature and thus obtain the timestamp, of when the call was made.

VSecure doesn’t require 3-way handshake for the establishment of subsequent
calls. Sending the time stamped digital signature avoids the need for a TMSI and
a 3 way handshake for each subsequent call. Thus the scheme reduces the number
of messages exchanged for each subsequent call.
VII. Conclusion
Global System for Mobile Communications (GSM) is one of the most widely used
protocols for mobile communications in today’s world. Security of GSM is thus an
important concern. The existing security scheme for GSM has certain loopholes, which
can be avoided using VSecure. VSecure makes use of public key cryptography, a scheme
better than the one-key system. The functionality requirement for the state of the art
protocols change periodically, and so does the security requirement. These schemes will
have to be revised periodically to provide an optimized secure and functional protocol.
8
VSecure: A Secure Service Access Scheme for GSM
VIII. References
[1]
Astrid Lubinski, Security Issues in Mobile Database Access, draft-ietf-pppextl2tp-08.txt (November 1997) (work in progress).
[2]
Astrid Lubinski, Database Security Meets Mobile Requirements, draft-ietfpppext-01.txt (November 1998) (work in progress).
[3]
Audun Josang and Gunnar Sanderud , Security in Mobile Communications:
Challenges and Opportunities.
[4]
T. Vuong and Peng Fu, Security Architecture and Design for Mobile Intelligent
Agent Systems.
[5]
Rafael Alonso and Henry F. Korth , Database system issues in Nomadic
Computing.
[6]
Vijay Varadharajan , Security Enhanced Mobile Agents.
[7]
Andreas Heuer , Database Access in Mobile Environments.
[8]
Iliya K. Georgiev , A Security Model For Distributed Computing.
[9]
Marc Lacoste , Towards a Secure Platform for Distributed Mobile Object.
[10]
Srivaths Ravi, Anand Raghunathan and Nachiketh Potlapally Securing Wireless
Data: System Architecture Challenges.
[11]
Hua Wang, Jinli Cao, Yanchuan Zhang , Ticket-Based Service Access Scheme for
Mobile Users, draft-ietf-pppext-l0-08.txt (Nov. 1999) (work in progress).
9
Download