Docstoc

blocking

Document Sample
blocking Powered By Docstoc
					BLOCKING OF ILLEGITIMATE CLIENT/SERVER                               1
        BLOCKING OF ILLEGITIMATE CLIENT/SERVER

A reflection attack is a method of attacking a challenge-response
authentication system that uses the same protocol in both
directions. That is, the same challenge-response protocol is used by
each side to authenticate the other side. The essential idea of the
attack is to trick the target into providing the answer to its own
challenge

Explination:




In the above figure,
User is having 16 bytes and server is having 16 bytes….!!

When user send 16bytes of random number,then the server takes it
and sends the random number in encrypted form to the user in
return.

We know that,both server and user will have a common key,to
verify each other that they are correct persons.so,with that key,the
user decrypts the encrypted one,so in turn the user makes sure that
the server is correct one.

In the same way,the server sends the user any random number
generated by him,then the user in return sends it to the server in
Encrypted form.




V.DEVENDRA CHARY & N.RANJITH KUMAR                               1
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                         2
The encrypted random number was decrypted by the server with
the common key,which was with the server,so in this way he can
Found out that the user is a correct one.

So this is how the process is carrying out,here comes the
reflection attack problem




The general attack outline is as follows:

   1. The attacker initiates a connection to a target.
   2. The target attempts to authenticate the attacker by sending it
      a challenge.
   3. The attacker opens another connection(session-2) to the
      target, and sends the target this challenge as its own.
   4. The target responds to the challenge.
   5. The attacker sends that response back to the target on the
      original connection(session-1).




V.DEVENDRA CHARY & N.RANJITH KUMAR                               2
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                              3


NOTE:

HERE, IT IS A CONNECTION ORIENTED SERVICE,AND IN THIS TYPE OF
SERVICE TIME STAMP IS NOT AVAILABLE,AS THERE IS NO TIME STAMP
PROTOCOL.THE PREVIOUS SESSIONS ARE NOT EXPIRED.SO THERE IS
POSSIBILTY OF HAPPENING THE REFLECTION ATTACK.



SO NOW IN ORDER TO AVOID THE ABOVE PROBLEMS LIKE
REFLECTION ATTACK IN AUTHENTICATING PROCESS…,

WE HAVE FOUNDA NEW PATH(PROCESS/CONCEPT) ,which can be called
as

Blocking of illegitimate client/server
Statement:

The client/server which can be an intruder is not allowed
to prove himself as a correct authenticated one,by taking
the size of random number differently on both sides,with
some constraints on both sides.



Client/user constraints:

    1. Taking 10 bytes for generating random number.
    2. A random word of 10 characters will be generated from the
       alphabets
    3. Random word will be transferred to ASCII VALUES.



Server constraints:

   1. Taking 16 bytes for generating random number.
   2. This random number will be generated from digits 0-9
   3. Must satisfy NIBBLE condition




V.DEVENDRA CHARY & N.RANJITH KUMAR                              3
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                              4


The client or server may be the attackers…



So,we explain here,how to handle the situation when user acts as
an attacker.




When user acts as an INTRUDER:




User can send only 10 bytes of information(i.e 10 bytes of random
number) towards server.

So,he cant use the chance of absence of TIMESTAMP PROTOCOL,
And get valid by sending the same 16 digit encrypted form of
information in original session(session-1) ,which was sent by the
server in the next session(session-2).

And here,the chance of padding is also not available,as we can send
only 10 bytes of information.




V.DEVENDRA CHARY & N.RANJITH KUMAR                              4
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                             5
So, strongly there is no chance for the USER(hacker\attacker)to get
the exact random number,
which is to be sent as his random number for the SERVER in next
session(session-2),and use the encrypted random number
generated by user,which in turn the server(hacker/ attacker) tries
to send it as reply to the user in previous session(session-1).




When server acts as an INTRUDER:




Here,Server can send only 16 bytes of information as a random
number.

And,on receiving the user’s random number he cannot encrypt the
users random number as he don’t have the key,so he may try
padding concept and add 6 more bytes for the users random
number.

but,here we are using the alphabets ASCII values for user
generated random number(according to constraint-1)
so,its difficult for the attacker(server here to find out the exact
one).




V.DEVENDRA CHARY & N.RANJITH KUMAR                                    5
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                                6

Constraint-2:

IN case,If server(who acting as an attacker) may, finds the
Generated number,( as the generated number which contains
alphabets also converts into binary form.) by using the padding
concept,which may work in rare cases.

So,in order to break the above situation,NIBBLE condition is
used
(according to Constraint-2)


NIBBLE CONDITION:

The condition of having first nibble all zero’s in random number
generated by server because each byte generated from (0-9),may
avoid possibility of equating the user and server random number,so
in this way we can block the server with this NIBBLE condition.




So, strongly there is no chance for the server(hacker\attacker)to
get the exact random number,
which is to be sent as his random number for the user in next
session(session-2),and use the encrypted random number
generated by user,which in turn the server(hacker/ attacker) tries
to send it as reply to the user in previous session(session-1).



SO,IN THIS WAY BLOCKING OF ILLEGITIMATE CLIENT/SERVER IS
DONE.




V.DEVENDRA CHARY & N.RANJITH KUMAR                                6
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                                7

EXAMPLE:
Now, by taking an example(it might be more clear)

Username: devranjith

Random number of username(Ru):
  VDCRANJITH( A random word Generated from (A-Z) of 10bytes)

Random number of server(Rs):
  9133337770871041(A random number generated from (0-9)
16bytes)

Now the Ru converted to ASCII

    V D C R A N J I T H  Random word
   86 68 67 82 65 78 74 73 84 72  ASCII values

 Now those 2 random numbers converted to binary format which is
can be understood by system

 Ru:-

01010110|01000100|01000011|01010010|01000001|01001110|01
001010|01001001|01010100|01001000 (10 bytes)

 Rs:-

00001001|00000001|00000011|00000011|00000011|00000011|00
000111|00000111|00000111|00000000|00001000|00000111|0000
0001|00000000|00000100|00000001 (16 bytes)

From above two random numbers we can easily observe that

 The first nibble of each byte of user random number consists a
value greater than 0.

 The first nibble of each byte of server random numbe consists
only 0.

So each byte of one random number is different from that of other
random number.

 Then there is a no chance of using random number of user as that
of server or viceversa.




V.DEVENDRA CHARY & N.RANJITH KUMAR                                7
BLOCKING OF ILLEGITIMATE CLIENT/SERVER                                8
NOTE:-

Here we can use another concept like storage

In this
    we use 2 memory location
      1st one at user side
     2nd one at server side

    Now we can store the random numbers of both at their
respective memory locations.

   Then we have to use comparision between random number sent
and random number number received from other end.

So here also we have a possiblity to restrict using same key on
other end.




V.DEVENDRA CHARY & N.RANJITH KUMAR                                8
BLOCKING OF ILLEGITIMATE CLIENT/SERVER       9




V.DEVENDRA CHARY & N.RANJITH KUMAR       9