You are on page 1of 6

Seventh IEEE/ACIS International Conference on Computer and Information Science

Security Analysis and Implementation of *JUIT–Image Based Authentication


System using Kerberos Protocol

†,*
Nitin, **Durg Singh Chauhan, ***Vivek Kumar Sehgal, *Ankit Mahanot, *Pallavi Singh, *Sohit
Ahuja, *Utkarsh Shrivastava, *Manisha Rana, *Vineet Punjabi, *Shivam Vinay, and aNakul
Sharma
†,*
Member IEEE and Department of CSE and IT, **Professor and Vice Chancellor,
***
Member IEEE and Department of ECE, aHCL Technologies, Noida, INDIA
*,**,***
Jaypee University of Information Technology, Waknaghat, Solan–173215, HP, INDIA

{ delnitin, pdschauhan, vivekseh, ankit1986, pallavi.singh150287, sohit22, utkarsh12,
manisharana47, vineetpunjabi.juit and shivamvinay}@gmail.com, anakul_sharma@hcl.in

Abstract prove our identity-a secret key that only we should


know. Our username identifies us and the password
Secure environments protect their resources against validates us. But passwords have some weaknesses:
unauthorized access by enforcing access control more than one person can posses its knowledge at one
mechanisms. So when increasing security is an issue time. Password thefts can and do happen on a daily
text based passwords are not enough to counter such basis, so we need to protect them. Now merely using
problems. The need for something more secure along some random alphabets grouped together with special
with being user friendly is required. This is where characters does not ensure safety. We need something
Image Based Authentication (IBA) comes into play. new, something different as our password to make it
IBA encapsulates Kerberos Protocol, Version 5, and secure. Besides being different it should also be easy
provides clients a completely unique and secured enough to remembered by you and equally difficult to
authentication tool to work on. This paper is a be hacked by someone else. This is what Image Based
comprehensive study on the subject of using images as Authentication system provides you with [6]. The
the password set and the implementation of Jaypee human brain is more adept in recalling a previously
University of Information Technology (JUIT) IBA seen image than a previously seen text [7]. In a recent
system called as JUIT-IBA. This tool provides a secure user study conducted at University of California at
channel of communication between the communicating Berkeley, image-based authentication (IBA) systems
entities. The assortment of image set as client’s have been found to be more user-friendly than the
password aims at thwarting Brute Force attacks, usual text-based systems [8]. Besides being user
Shoulder attack, and Tempest attack at the client side friendly we need to strengthen the security during
while the attacks at the server side can be averted by authentication also. This is done using the Kerberos
putting into practice Kerberos protocol. It also protocol [9, 10, 11, 12, 13].
describes how our system works along with the
evaluation of its performances in different computing 2. Approach to JUIT-IBA System
environments.
2.1. Kerberos Protocol
1. Introduction
In spite of using images as user’s password set,
Authentication plays an important role in protecting which saves user from Brute Force attack, shoulder
resources against unauthorized use. Many attack also to some extent, security still remains a
authentication processes exist from simple password subject to be focused upon. The password set used for
based authentication system to costly and computation authentication remains secured using cryptographic
intensive biometric authentication systems [1, 2, 3, 4, algorithms but the channel of communication between
5] Passwords are more than just a key. They serve the user’s workstation and the server can be monitored
several purposes. They authenticate us to a machine to by hackers and those trying to penetrate into the system

*This Image Based Authentication System has been developed for Jaypee University of Information Technology (JUIT). It has been developed
using Scripting languages. It is uses PHP (ver. 5) and MySQL and AJAX has also been used extensively.

978-0-7695-3131-1/08 $25.00 © 2008 IEEE 575


DOI 10.1109/ICIS.2008.93
The protocol works as
follows. The Authentication
Server is where the user can
negotiate to claim his
identify. In the IBA tool,
after the user feeds his
username, the AS is called.
The first requirement is
that, username and AS
agree on two large
numbers, n and g such that
n is always less than g.
After deciding on n and g,
the user’s workstation
calculates,
A = g mod n (1)
where x is a private key of
the user, and sends A to the
AS (Refer Equation (1)). In
order to make the
Figure 1. Kerberos Protocol. communication more reliable, user also sends a nonce
Na (random number generated on the user’s end) to the
The instant user is confronted with the login page, the AS. So, the payload transmitted in the packet from
session starts. If user is unable to login within the userÆAS contains: a) username (should contain
specified session, his time expires and he has to re- alphanumeric character), b) Na, c) A. The AS after
login into the system. Specifying sessions, guards receiving the packet, sets up a key between the AS and
users’ against brute force attacks i.e. if some intruder is the TGS, by computing
constantly trying to break into the system by B = g mod n (2)
permutations and combinations, the time factor will y being the private key of the AS (Refer Equation (2)),
forbid him to do so. Sessions do not prevent the also generates a new nonce, Nb. The AS sends B and
intruders from monitoring the channel and thereby previously received A (From Equation 1), along with
routing the packets to unauthorized destinations. So, in Nb to TGS. AS sends A to TGS so that TGS can create
addition to sessions we append the concept of shared the shared secret key between the user and the service
secret keys. User and the service which user wants to at a later phase. TGS, calculates
avail, communicate with each other by encrypting and C = g mod n (3)
correspondingly decrypting the messages using Data and sends it to AS, along with the Nb received from
Encryption Standard algorithm [6, 12]. The 56-bit key, AS and also a newly created nonce Nc. AS now
which goes as one of the two inputs to the DES determines the shared secret key,
algorithm is provided by the secret keys, shared and BC = g (4)
decided in advance, for the transfer of services. and forwards it to TGS. For verification purpose, AS
Another matter of concern between the two also puts the nonce Nc together with BC, thereby
communicating parties is trust. The two producing a shared secret key between the AS and the
communicating entities should give assurance that they TGS. In parallel to key generation between AS and
are the ones who claimed. There comes a necessity to TGS, AS also responds to the request by user. It passes
call for a trusted third party i.e. a party between the a packet to user, which can be revealed only if the user
user and the service. The dependency between the user selects correct images from the image password set.
and the service regarding trust leads to the notion of an Consequently, the password set of the user becomes
Authentication Server (AS). This provides shared-key the shared secret key between the user and the AS.
third-party authentication in a distributed network. Once the user has successfully selected his image
Rather than trusting all workstations, we trust only a based password set, he receives a series of keys. The
central authentication server. The trusted third party is initial key is the shared secret key between user and
further decomposed into two components – the TGS. Shared secret key between user and TGS is
Authentication Server (AS) and the Ticket Granting determined by AS and is simply
Server (TGS). AC = g mod n (5)

576
Next key in row is BC (Refer Equation (4)), which security of the system yet keeping the system user-
is the shared key between AS and TGS. Key BC is friendly.
used to encrypt the following data – a) username, b)
AC. Key BC cannot be revealed by user, because it is
shared between AS and TGS. On receiving the keys
from AS, user sends TGS key BC as it is. User also
appends the service it wants to avail; in addition to the
session time encrypted with the secret key user is
sharing with TGS. TGS now creates the shared secret
key; it is going to share with the service. TGS sends
previously calculated C (Refer Equation (3)) and the
nonce Nc to the service, S. S computes,
D = gv mod n (6)
v being the private key of the service. S in turn, sends
D (Refer Equation (6)), Nc and a new nonce Nd to
TGS. TGS now generates the shared secret key by
computing,
CD = g mod n (7)
and sends the same to S, together with the nonce Nd.
Next, TGS responds to user by sending the service,
user had requested for along with the shared secret key
AD, which is determined by TGS, encrypted with the Figure 2. AJAX Implementation in JUIT-IBA. The
key AC. It also sends key AD appended to the above module is a part of JUIT-IBA system.
username A, encrypted with the shared secret key CD
(Refer Equation (7)). The second part of the message While ‘r’ and ‘c’ should be chosen such that image
cannot be revealed by the user, since the key CD is grid that appears to the user should not be visible in
only shared between TGS and the service. Finally user one eye-span i.e. a user must scroll up or down/ left or
sends the second part of the message to the service as it right to view the entire image grid. The system divides
is. it’s users into three levels namely beginner, moderate
and advanced (in hierarchy from lowest level to
2.2. AJAX Explanation highest level). As the user proceeds up the hierarchy, it
becomes difficult for the intruder to get his/her
AJAX, shorthand for Asynchronous JavaScript and password. This is because the system provides 3 image
XML, is a web development technique [16, 17]. The sets (i.e. 3 x 40 = 120 images) for a beginner from
intent is to make web pages feel more responsive by which he/she can select 5 images (max.); further the
exchanging small amounts of data with the server system provides 4 image sets (i.e. 4 x 40 = 160 images)
behind the scenes, so that the entire web pages does not for an intermediate level user, from which he/she can
have to be reloaded each time the user makes a change. select 9 images (max.) as his/her password while for an
In AJAX, the browser allows the JavaScript to call the advanced user, it has 5 image sets (i.e. 5 x 40 = 200
server without pasting the entire page back to the images) and from these he/she can select up to 13
server, but instead retrieves small amount of data images. This maximum limit for selection of images as
dynamically and updates the parts of the page. your password set is not based on any mathematical
calculation.
2.3. Image Set Generation and Selection The Images selected to form an image set:
1. should not be easily describable
This section deals with another important part in the 2. should be easy to remember
security of IBA - the selection of images in an image 3. should be unique and abstract
set and generation of image set itself. Image set is a 4. should differ in color schemes and
collection of ‘n’ images arranged into ‘r’ rows and ‘c’ structure
columns. For JUIT-IBA system, n=40 arranged into 4 We use a random display of images within an image
rows (r=4) and 10 columns (c=10). It’s the discretion set i.e. within an image set, images are arranged
of the designers to choose ‘n’, ‘r’ and ‘c’. Several randomly and their position is no where related to
factors should be considered while choosing n, r and c. previous image set that was generated.
‘n’ should be chosen such that it should increase the Now we move onto selection of images. As mentioned

577
earlier the user is first asked for username after which 3.1.2. Shoulder Attack
he/she is given the first image set. Since the images are
arranged randomly, his password image will appear in For Shoulder Attack (Refer Figure (5)). To counter
random position & not fixed position. Though the this attack the images that have been selected to be
arrangement of the image sets is same i.e. first Image displayed in the image grid are all very abstract images
set Number 1 will appear to user followed by Image which are not describable easily. Also while selecting
Set 2 and so on. But images within the image set will an image; it is not highlighted, so the attacker does not
shuffle every time. Considering the security aspect, the get a clue as to which image was selected. Most of the
JUIT - IBA system doesn’t change the mouse cursor display screens use a resolution of 800x600 pixels. The
when taken over any image. Normally we see when Image grid in JUIT-IBA is designed in such a way that
you roll-over the mouse over some image or link; it at any given instant all the 40 images of a particular
changes itself to a hand (in Microsoft Windows). Also image set are not visible to the onlooker.
there is no special mark on the images that you have
currently selected. This way, no third person will be
able to make out the password.

3. Performance of JUIT-IBA System

3.1. Attack Scenario on Client Side

This section discusses the security performance of


the JUIT-IBA system. This section also includes the
preventive measures that have been taken to prevent
these attacks and how is it better than text based
passwords.

Figure 4. Screenshot showing the same image grid as


figure 3 but at different time instant. Note the encircled
image and its position. It has changed randomly. All
other images have changed their position.

Figure 3. Screenshot showing one of the image sets.


Note the encircled image and its position.

3.1.1. Keystroke Logging

For Keystroke Logging (Refer Figure (3) and (4)).


An attacker may attempt to note down the positions of
the displayed images in an image grid but it would be
of no use as no image is displayed in its same position Figure 5. Screenshot showing one of the image grid.
inside the image grid when it is generated for the next Note: the entire grid is not visible at one time. We need
time. to scroll up/down or right/left to view the entire grid.

578
One complete row and almost two and a half columns IBA system has a time limit imposed on each of its
are hidden in a single display. This further reduces the image grid page and the session expires after certain
risk of shoulder attack. To further confuse the attacker, time. This means that the attacker must start from
the images have been chosen in such a way that each scratch after the session expires.
image has atleast one closely resembling image in the
grid. This again helps in preventing shoulder attack.

3.1.3. Tempest Attack

For Tempest Attack (Refer Figure (6) and (7)).


Electromagnetic emanations from a monitor can be
read by sensitive receiver equipments kept at certain
distance from it [4, 5, 6]. The attacker can extract the
color information from the images. When a user selects
an image it is not displayed on the screen but stored in
the background.

Figure 7. Screenshot showing the images that a user


has selected. Note the encircled image. When the user
moves the mouse over those images, they become
colored. This is done to provide a facility to users to
view his selected images.

3.2. Attack Scenario on Server Side

1. Single point of failure: It requires continuous


availability of a central server. When the
Kerberos server is down, no one can log in.
This can be solved by using multiple Kerberos
Figure 6. Screenshot showing the images that a user servers.
has selected. Note the encircled image. It’s black & 2. Kerberos requires the clocks of the involved
white to hide the color information and it’s blurred hosts to be synchronized. The tickets have
also. This prevents tempest attack. time availability period and, if the host clock
is not synchronized with the clock of
So this insures that the attacker cannot get the color Kerberos server, the authentication will fail.
information of the selected images. Even if the attacker The default configuration requires that clock
manages to extract information of the displayed image times are no more than 10 minutes apart.
grid he would still have to figure out the password
from that grid which is not an easy task. Now when the 3.3. Comparison with UFL-IBA
user wants to see the selected images, those images are
displayed to the user as black and white as well as The selected images are displayed on the left hand side
blurred so as to send out no signal which can be column and get highlighted when the mouse cursor is
detected by the eavesdropper. moved over them. This means that they are prone to
shoulder and tempest attacks when highlighted. On the
3.1.4 Brute Force Attack other hand JUIT-IBA does not display the selected
images anywhere on the screen making it impossible
In brute force attack, all the possible combinations for the attacker to identify them. Refer Figure (8) gives
have to be tried to crack the password. Doing this on the values of the time draw against the loading of
the IBA is not possible because this means that the images with the different traffics at different interval of
attacker has to sit and try out all the combinations. The time.

579
Table 1
Comparison of JUIT-IBA with UFL-IBA
Feature JUIT-IBA UFL-IBA
Indication on selected images (in your password set) No Yes
Visibility of entire image set. No Yes
Resemblance of one image with some other image in the same grid Yes No

0.005
0.0045
0.004
0.0035
0.003 Internet(Low Traffic)
Time

0.0025 Internet(High Traffic)


0.002 LAN (100 MBPS)
0.0015
0.001
0.0005
0
Image Image Image
Set 1 Set 2 Set 3

Figure 8. The timing analysis diagram showing the loading of images with the different traffics at different interval
of time.

4. Conclusions [3] Rachna Dhamija and Adrian Perrig, “Déjà vu: A user
study Using Images for Authentication,” Proceedings of
the 9th Usenix Security Symposium, August 2000.
Image Based Authentication systems combined with [4] Win van Eck, “Electromagnetic Radiation from Video
strong protocol (Kerberos Protocol) assures a scope for Display Units: An Eavesdropping Risk?,” Computers &
secured systems in the future. Such systems provide a Security, vol. 4, pp. 269-286, 1985.
secure channel of communication between the [5] Markus G. Kuhn, “Electromagnetic Eavesdropping
communicating entities. The ease of using & Risks of Flat-Panel Displays,” Proceedings of the 4th
remembering images as a password also support the Workshop on Privacy Enhancing Technologies, May
scope of these systems. As we have seen in this paper, 2004.
JUIT-IBA system proves it's toughness against today’s [6] William Stallings, “Cryptography and Network
Cryptanalytic algorithms & other basic hacking Security,” Pearson Education.
[7] Andrew S. Tanenbaum and Maarten Van Steen,
mechanisms. Apart from the security factor, the run “Distributed Systems,” Pearson Education.
performance of the system is most apt for today's [8] http://www.w3schools.com/ajax/default.asp.
internet configuration. Hence on the basis of security [9] http://www.php.net.
(Kerberos with shared keys) performance, time [10] http://www.cise.ufl.edu.
performance & ease of usage of such systems, we can [11] http://en.wikipedia.org/wiki/Diffie-Hellman.
conclude this paper by saying that IBA Systems hold a [12] http://www.Kerberos.info.
vital position in the future of network security. [13] http://en.wikipedia.org/wiki/Kerberos.
[14] Enterprise Network Security Guidelines: Prevention and
Response to Hacker Attacks by Faulkner Information
5. References Services (Digital - Jun 1, 2001).
[15] Security in Distributed and Networking Systems
[1] Richard E. Newman, Piyush Harsh, and Prashant (Computer and Network Security) by Yang Xiao
Jayaraman, “Security Analysis of and Proposal for (Hardcover - Sep 30, 2007).
Image Based Authentication,” 2005. [16] Beginning Ajax with PHP: From Novice to Professional
[2] David Melcher, “The persistence of visual memory for by Lee Babin (Paperback - Oct 16, 2006)
scenes,” Nature, 412(6845) pp. 401, July 2001. [17] Beginning Ajax (Programmer to Programmer) by Chris
Ullman and Lucinda Dykes (Paperback - Mar 19, 2007).

580

You might also like