You are on page 1of 6

Third 2008 International Conference on Convergence and Hybrid Information Technology

Architecture and Protocols for Secure LAN by Using a Software-level


Certificate and Cancellation of ARP Protocol

Detchasit Pansa and Thawatchai Chomsiri

Faculty of Informatics, Mahasarakham University


Mahasarakham, Thailand.
detchasit@msu.ac.th, thawatchai@msu.ac.th

Abstract the “ARP Reply” sender is the real owner of that MAC
Address). In addition, ARP also updates ARP Cache as
This research presents a design of “architecture soon as it receives ARP Request and ARP Reply.
and protocols” for the LAN security preventing the This research aims at solving the problem about
process of MAC Address spoofing, ARP Spoof and capturing data on LAN systems by ARP Spoof [3] and
MITM. Each Network Card is designed to have a the problem about a lack of authentication of Network
Certificate, a Private Key and a Public Key, all of Card. Each Network Card is designed to have a
which are issued by the product vendor. A certificate is Certificate issued by the product vendor, and each will
in a form of software-data which may be available in have a Private Key and a Public Key (using PKI [6]:
the Card Network package, or can be downloaded Public Key Infrastructure). ARP enquiry (such as
from a vendor websites. A Certificate will certify MAC sending ARP Request to gain the MAC Address value
Address value. DHCP is re-designed to authenticate of IP Address which wants to communicate) will be
Network Cards before delivering IP Addresses. DHCP sent to the center. DHCP Server will be used as
Server also assigned to be the “MAC-IP database “MAC-IP database center” (or we called ARP Server)
center” which stores the data about matching between to store the data about matching between IP Address
MAC Address and IP Address. When any Hosts want and MAC Address. DHCP Server also has a function
to request MAC Address value, (for interested IP to answer and send “DHCP Reply-MAC”. Besides,
Addresses) they must send “DHCP Request-MAC” to since each Network Card has a Private Key and a
DHCP Server instead. Moreover, the designed system Public Key, they will be able to safely communicate
will not use ARP Protocol because the new DHCP with each other in Layer-2. This communication can be
(which co-works with Certificates) will cover all chose to be Normal Mode or Secure Mode.
functions.
2. Background
1. Introduction
2.1. ARP Spoofing
In the present internet systems, to authenticate the
members, websites use Session ID [1] sent with Hackers who are on the same LAN system as the
Cookies (Session ID is in Cookies). If hackers can victim or hackers who can remote hack any computers
capture the victims’ Cookies, they will be able to on the victims’ LAN system will be able to sniff [7]
access the victims’ systems. Moreover, it is easy to the victims’ data by using ARP Spoof [2][3][5]
conduct MITM [2][3] to deliver fake certificates to the techniques. ARP Spoof is the process of sending ARP
victims and deceive them in order to gain important Request or ARP Reply to deceive the victims’
data sent via HTTPS [4]. Meanwhile, Password computers which the hackers are Gateway Router.
capturing in websites which send Passwords via HTTP Then, hackers will send ARP Request or ARP Reply to
and capturing the Password of POP3 and IMAP of deceive Gateway Router that the hackers’ computers
LAN users still exist. All of the above, the problem is are the victims’ computers. This technique uses a weak
from the ARP Vulnerability [5] which does not have point of ARP Protocol which does not have the
the authentication of the Network Card (whether or not mechanism to authenticate. Another weak point is that

978-0-7695-3407-7/08 $25.00 © 2008 IEEE 21


DOI 10.1109/ICCIT.2008.345

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.
ARP Table (ARP Cache) of any Host will be changed 2.3.2 Notifying the victim-machine that the hacker-
when receiving ARP Request or ARP Reply. This machine is gateway-router.
ARP Table will be instantly changed according to the 2.3.3 Enabling packet routing feature on hacker-
data it receives (such as receiving ARP Reply as IP machine.
Address 192.168.1.1 containing MAC Address as AA- 2.3.4 Running DNS Spoof to enforce the victim to
BB-CC-DD-EE-FF). The value in ARP Table will connect to HTTP/HTTPS port at hacker machine.
remain for 15 seconds, so the program used for 2.3.5 Distributing fake certificate to the victim.
conducting ARP Spoof must send ARP Packet to 2.3.6 Communicating with the victim using fake
deceive the victims continually. The popular programs certificate
used for ARP Spoof are “arpspoof” on Linux (Auditor 2.3.7 Communicating with the HTTPS web-site
Security Tools [9] and Back Track 3 [9]) and “Switch using genuine certificate obtained from the HTTPS
Sniffer” program. Besides, there is “Win ARP Spoof” web-site.
program which runs on Windows. If on the Host which 2.3.8 Transmitting the parameters and data between
Static ARP is assigned such as using the command the victim and the HTTPS web-site.
2.3.9 Recording data transferred between two end-
arp –s 192.168.1.1 00-0C-85-72-05-FF host.
2.3.10 Decoding data.
on Windows XP/2003/2008, the Host will have a
permanent memory that IP Address 192.168.1.1 has 3. Design
MAC Address as 00-0C-85-72-05-FF. When hackers
send ARP Packet to deceive that 192.168.1.1 has other In this research, the system was designed under the
values of MAC Address, the Host which the Static following conditions
ARP is assigned, will not update the value in ARP
Table accordingly. Therefore, Static ARP is a good 3.1. Network Card
method to prevent ARP Spoof.
In the software-level of each Network Card
2.2. HTTPS Background (referring to Database Space of the Driver), there is the
memorizing of the Private Key, the Public Key and the
The communication is triggered when a client send Certificate which certify the matching between MAC
a request to the end-host by specifying an URL on Address and Public Key certified by the vendor. These
HTTPS protocol [6] using port number 443. The web- Private Key, Public Key and Certificate are created in
server, providing a service for HTTPS, responds the the process of production in the factory. Our system
client by sending the certificate to the client side. By design also has the following features.
this, web browser signifies a public key of the web-
server, which packed in the certificate. The key is used - Use Private Key certified by the vendor.
to encode the information that the client sends - In the database of NIC Driver (Network Interface
consecutively to the web-serve. Technically, the initial Card), there will have a Public Keys of all vendors in
information that the client sends to the web-server is a order to claim the ownership of MAC Address (in the
session key (which would be utilized for further data DHCP Packets, there will be the Certificate data).
transmission between the client and the web-server).
Consequently, web-server uses its private key to 3.2. DHCP Server
decode the information (session key) transmitted by
the client. As a consequence, only either the web- There must be a DHCP Server in the system to be
server or the client understands the session key and the database of the matching between MAC Address
that the further transmission is secured. and IP Address.

2.3. SSL MITM Background - Identify the MAC Address value of the DHCP
Server in the case that the Clients either use Dynamic
Decoding HTTPS using SSL Man in the middle [4] IP Address or Static IP Address. (This design, we
has following steps: modify the OS-Network to have the channel to specify
the DHCP Server MAC Address such as
2.3.1 Notifying a gateway-router that hacker-
machine is victim-machine. DHCP Server MAC Address = [………………….])

22

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.
- For Clients using Static IP Address (such as the to Host A, and DHCP is redesigned to authenticate
Server Host), the values of MAC Address and IP each party. This will enable the system to prevent the
Address must be set to the database of DHCP Server attack in the case that hackers trick DHCP Server to
directly. (In new design, DHCP daemon has the table deliver all IP Addresses to them. In addition, it will
to specify the MAC Address and IP Address value of also prevent DoS [8] (Denial of Service) which
the Hosts which use Static IP Address). hackers pretend to do in order for DHCP Server to
decode Packets deriving from the attacker.
3.3. DHCP Protocol
1. Host A informs DHCP Server that it needs IP
DHCP Protocol must be modified as follows. Address.

- DHCP must be added more function concerning 2. DHCP Server offer IP Address in return and
answering the question in resolving IP Address to authenticate Host A by its Certificate.
MAC Address by using the existing data.
3. Host A authenticates DHCP Server and requests
- Design that inside the DHCP Packet, there is a the IP Address as well as authenticates itself.
Certificate that certifies the matching between MAC
Address and Public Key. 4. DHCP Server confirms that Host A can use the
IP Address.
- Detect whether the IP Address requester is the real
MAC Address owner before delivering the IP Address In this case, if hackers want to pretend to conduct
(checking from Certificate). DoS [8] in order for DHCP Server to decode the
unnecessary Packets, they must decode to check in
- Design the system to have DHCP Request-MAC item 3 first. Then, DHCP Server will decode in item 4.
(to substitute ARP Request) by sending the request Thus, it is equal in workload. If hackers want to
directly to DHCP Server instead of enquiring by conduct DoS to the full efficiency, they must use the
sending Broadcast ARP Request to every Host. Host with higher speed than that of DHCP Server or
use several Hosts.
- Design the DHCP Request-MAC to have a
Certificate which certifies the matching between MAC Details
Address and Public Key.
1. Host A is assigned to work as DHCP Client
- Design the system to have DHCP Reply-MAC (to (assign MAC Server of DHCP Server to be on OS so
substitute ARP Reply). The operation is that when a that the Request will be sent to the real DHCP Server).
DHCP Reply-MAC appears, it needs to be checked Request IP Address by sending to MAC of the known
whether it is from DHCP Server. If it is not from DHCP Server (it is called DHCP Discovery). It is
DHCP Server, do not update the value in ARP Cache. assumed that the Switch functions correctly (DHCP
Discovery Packet will be sent to DHCP Server only).
3.4. ARP Protocol
2. DHCP detects the IP Address which is idle, and
Not use ARP protocol. then offers it to Host A (it is called DHCP Offer).

3.5. The System Operation - In DHCP Offer, there is a sent along


Certificate which certifies the matching between MAC
To make it easy to understand, scenarios in Address and Public Key of DHCP Server.
different situations will be presented as follows.
3. When Host A receives DHCP Offer, it will send
3.5.1. Scenario 1: when there are DHCP Server and DHCP Request as following details.
one Host.
- Decode the Certificate of DHCP Server by
This scenario is the beginning step that we install Public Key of the vendor to make sure that the sent
DHCP Server to be ready to use, and the first user Public Key is from the MAC Address of DHCP
enters (Host A). DHCP Server will deliver IP Address Server.

23

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.
- In this DHCP Request Packet, there is a sent In this process, Host B can send IP2MAC Request
along Certificate which certifies the matching between to DHCP Server correctly because it has the MAC
MAC Address and Public Key of Host A. Address of that DHCP Server. However, hackers can
attack the system by looping to false claim that they
4. DHCP Server detects MAC Address of the are the DHCP Server, and then they will send a false
requester whether it is the real one or not. reply all the time in the process. Therefore, more
conditions are added as the following details.
- The requester can be checked from the
Certificate which is in DHCP Packet. (If the MAC Details
Address decoded from Certificate matches with the
MAC Address of Frame, it is certain that the Request 1. Host B sends a Request to DHCP Server that its
is from Host A.) needs to gain MAC Address of Host A by designing
- If it is correct, DHCP response will be sent the Request to have the data in a field on IP2MAC
to Host A. Request to have a number randomly chosen by Host B.

5. DHCP Server memorizes the data of Host A (e.g. 2. DHCP Server searches for the reply and sends it
MAC Address, IP Address, Public Key and along with the random number to Host B.
Type=Dynamic).
3. Host B checks in the field if there is a random
6. Host A memorizes MAC Address and IP Address number matching with the number sent at the first
of DHCP Server in the form of Static and memorizes time. If there is, Host B will accept that Reply.
Public Key of DHCP Server as well.
The period from step 1 to step 3 must have the Time
Authentication is needed because the system must Out value (such as assigning to be 100 ms) in order to
prevent the MAC Address false claim to get the IP cut down the chance to encounter IP2MAC Reply
Address. For the old DHCP Server, hackers can write a Spoof sent by hackers who can correctly guess the
program to change MAC Address, and then request IP number. Such Time Out value is adjustable. The less
Address continuously until all IP Addresses are used the value is, the more the security is. Supposing that
up. An example of the programs used for this kind of hackers want to deceive Host B, they need to send
attack is dhcpx [9] which comes with Back Track 3 IP2MAC Reply Spoof all the time in the process. And
[9]. In our new design, hackers will not be able to supposing that the LAN system has Bandwidth = 1
create MAC Address by themselves because they do Gbps, and the size of IP2MAC Reply is 1024 byte
not have the Private Key of the vendor. However, they (8192 bit), the random numbers that hackers send to
can capture (collect data) the MAC Address value and DHCP Server in 1 second is
Certificates of the Hosts. Still, they will not be able to
request for IP Address because they do not know the (1*1024*1024*1024) / 8192 = 131,072 numbers.
Private Key value of each Card. (for this part we will
get benefits in item 4.7) If the number of bit is assigned to be 32 bit (gain
4,294,967,296 numbers), the chance for hackers to
3.5.2. Scenario 2: when the Host that used to gain successfully attack the system is only
IP Address from DHCP Server wants to get the IP
Address of other Hosts 131,072 /4,294,967,296 = 0.003% (Time Out = 1
Supposing that in the system, there are two Hosts sec).
which receive IP Address from DHCP Server, these
two Hosts are Hosts A and Host B. Thus, if the Time Out is assigned to be 100 ms, the
chance for hackers to attack the system is only
1. Host B sends a Request to DHCP Server that it 0.0003%.
needs to gain MAC Address of Host A. (This Request
is named “DHCP Request-MAC” or call “IP2MAC 3.5.3. Scenario 3: when any Hosts want to gain IP
Request” for short) Address of the Hosts using Static IP Address

2. DHCP Server searches for the reply and sends it Supposing that in the system, two Hosts--Host A
to Host B (This Reply is named “DHCP Reply-MAC” and Host B have already received IP Address from
or call “IP2MAC Reply” for short) DHCP Server, and Host C is assigned to be Static IP

24

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.
Address, when Hosts A wants to gain MAC Address certain that nobody can decode the data code except
value of Host C, the operation will be similar to the real receivers which have the Private Key.
Scenario 2. However, after Host A gain MAC Address We propose to encrypt/decrypt data by using ECC [10]
of Host C, it must update the value in ARP Table Algorithm (Elliptic Curve Cryptography algorithms)
(ARP Cache) to be Static ARP because Host C does which works faster than RSA Algorithm. ECC no need
not need to change IP Address. In addition, the process height performance of CPU to process. In the same
that DHCP Server searches for MAC Address of Host security level (in the same “successful – crack time”),
C will be conducted in the same way because ECC will use less bit numbers of the Key than RSA
specifying to Static has been conducted to the database does.
on DHCP Server already. Besides, Type=Static is
identified (Type=Static and Type=Dynamic are the 4. Benefits
additions in new DHCP).
If this design is authentically implemented, and the
3.5.4. Scenario 4: IP Release new DHCP as presented is used, the benefits will as
follows.
When any Dynamic Hosts want to return the IP
Address value (e.g. command “ipconfig /release” on 1. It can be checked whether the Host that we are
Windows), the Release Packet senders must communicating with is the owner of the claimed MAC
authenticate themselves. This can be done by encrypt Address or not. (preventing MAC Address Spoofing)
packet with Private Key. DHCP Server will decode by 2. It can be checked whether the Host that we are
the Public Key of that Host. If it can be decoded, it is communicating with is the owner of the claimed IP
proved to be the real one (that is the benefit in item Address or not. (preventing IP Address Spoofing)
4.8). 3. From items 4.1 and 4.2, ARP Spoofing can be
prevented. The result is that data capture on LAN can
Details be prevented.
4. From item 4.3, MITM: Man in the Middle can be
1. Host A sends Request for Release to DHCP prevented. (HTTPS Decode uses the technique
Server. MITM.)
2. DHCP Server randomly chooses a number and 5. Illegal DHCP Servers can be prevented (strange
sends to Host A. DHCP Servers cannot disturb the LAN system)
3. Host A accesses that code number and sends it to because every Client will identify MAC Address of
DHCP Server. DHCP Server which is used.
4. DHCP Server decodes by the Public Key of Host 6. It is unnecessary to use other more Servers. (For
A. If it gains the correct number matching with the example, S-RAP Protocol needs to use AKD [11]:
number sent at the first time, the IP Address of Host A Authoritative Key Distributor.)
is allowed to be released. protocol. 7. DHCP Server can be protected in the case that
hackers deceive DHCP Server to deliver all IP Address
3.6. Communication in Normal Mode and to them.
Secure Mode 8. Hosts can be protected in the case that hackers
send DHCP Release IP by deceiving that they are
Although the designed system can prevent ARP Hosts.
Spoof to capture the data, if the Network 9. There is an alternative to be able to communicate
Administrator assigns some ports of switch to work as in Normal Mode for the speed in sending the data and
monitoring ports, hackers will be able to receive the communicate in Secure Mode which has the process of
frame of other people. The System is designed to be data encryption which can be decrypt by only the
able to communicate in Layer 2, both in Normal Mode frame owner (the owner of destination MAC Address).
and in Secure Mode.
The communication in Normal Mode is the regular 5. Related Work
communication (without data encryption) which offers
speed in sending and receiving the data. For Secure There are some proposals to solve the ARP Spoof
Mode, it is the communication with the process of data problem by S-ARP [11], but it is found that S-ARP
encryption which senders will encrypt the data by still encounters some problems as follows.
using the Public Key of the receivers. Therefore, it is

25

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.
1. Hackers can fake MAC Address. (issued by the vendor) and a Private Key as well as a
2. S-ARP is designed to have AKD [11]: Public Key which are created during the production
Authoritative Key Distributor to be the caretaker and process in the factory and memorized in the software
the one who provides the data about Public Keys of level (install the data of a Certificate, a Public Key and
different Hosts in the system. However, the problems a Private Key on the database of the Network Card
are found as follows. Driver). DHCP Server is used as the center about the
- It is needed to add one more Servers matching between MAC Address and IP Address. At
although the data about the matching between IP the same time, DHCP Server also functions as the
Address and MAC Address already exists in DHCP “DHCP Reply-MAC” sender (to substitute ARP
Server. Reply) to offer an answer for the “DHCP Request-
- If AKD crashes down, the system cannot be MAC” from client hosts (to substitute ARP Request).
used. In the presented system, the operation in Protocol level
- AKD needs to be modified in order to be of DHCP will be modified, and the use of ARP
able to communicate with DHCP Server. Protocol will be canceled in order to suit and
- Clients need to contact ADK every time they correspond with the new architecture. This process is
receive ARP Reply in order to request the Public Keys conducted in order for the system to works efficiently
of ARP Request senders. Then, bring it to decode. and safely. In addition, users can choose to
- There could be more than one AKD, so it is communicate in Normal Mode for the speed in sending
possible that attackers will be able to fake an AKD to the data, or in Secure Mode which needs to have the
allow them to access the system. process of data encryption for the high security. This
frame can be decoded by only the frame owners (the
3. S-ARP will check only ARP Reply while the owners of destination MAC Address).
Netcut [12] program will deceive the victims by
sending ARP Request. 7. References
4. It is inconvenient in the first installation. That is,
a Private Key and a Public Key need to be created for [1] Cross M., Developers Guide to Web Application Security,
each Host. Besides, the value of Public Keys and IP Syngress Publishing Inc., 800 Hingham Street Rockland, MA
Address of AKD must be identified for different Hosts. 02370, 2007.
5. Clients need to communicate with AKD every [2] D. Song. “A suite for man in the middle attacks”.
time they receive ARP Reply, and this may decrease http://www.monkey.org/∼ dugsong/dsniff.
the system performance. [3] R. Wagner. “Address resolution protocol spoofing and
6. It is possible that the system will be attacked by manin-the-middle attacks”.
http://rr.sans.org/threats/address.php, 2001.
Reply Attack which causes the victimized Host to
[4] Thawatchai Chomsiri, "HTTPS Hacking Protection".
focus only on decoding. Although S-ARP is designed Proceeding of the IEEE 21st International Conference on
to possess Time Stamp to solve the problem, hackers Advanced Information Networking and Applications (AINA-
can also set the Time Stamp value in order for the 07), IEEE CS Press, Niagara Falls, CANADA, May 2007
system to evaluate the Packets used to attack. [5] B. Fleck. “Wireless access points and arp poisoning”.
7. S-ARP cannot be used with other Gateways http://www.cigitallabs.com/resources/papers/download/arppo
which are not Linux. ison.pdf
8. Kernel must be modified, and other programs [6] Ross, K.W., J.F. Kurose, Computer Networking: a top-
must be installed. (For example, sarpd [11] daemon down approach featuring the Internet, Addison Wesley
Longman Inc., USA, 2004.
program must be installed.)
[7] Orebaugh, A.D., G. Ramirez, Ethereal Packet Sniffing.
Syngress Publishing, USA, February 2004.
6. Conclusion & Future Works [8] McClure, S., J. Scambray, G. Kurtz, Hacking Exposed
5th Edition, McGraw-Hill, USA, April 19, 2005.
This research presents the design of the [9] www.remote-exploit.org
communication in the LAN system which has high [10] S. Barbara, "Use of elliptic curves in cryptography",
security. This is to authenticate the MAC Address Lecture Notes in Nomputer Sciences; 218 on Advances in
cryptology---CRYPTO, California, USA, pp: 417 – 426.
owners, preventing hackers to fake MAC Address and
[11] Bruschi D., Ornaghi A., and Rosti E., "S-ARP: a secure
use it to attack the system. The system is also designed address resolution protocol", Proceedings of the 19th Annual
to have the protection against ARP Spoof and MITM Computer Security Applications Conference (ACSAC 2003),
attack by assigning a Certificate of Network Card. 2003, pp 66 – 74.
Each Network Card also possesses a Private Key [12] http://www.sgc.co.th/netcut.php

26

Authorized licensed use limited to: MAHASARAKAM UNIVERSITY. Downloaded on October 30, 2009 at 05:56 from IEEE Xplore. Restrictions apply.

You might also like