WO2012153913A1 - 차단서버를 이용한 스푸핑 공격 방어방법 - Google Patents

차단서버를 이용한 스푸핑 공격 방어방법 Download PDF

Info

Publication number
WO2012153913A1
WO2012153913A1 PCT/KR2012/001714 KR2012001714W WO2012153913A1 WO 2012153913 A1 WO2012153913 A1 WO 2012153913A1 KR 2012001714 W KR2012001714 W KR 2012001714W WO 2012153913 A1 WO2012153913 A1 WO 2012153913A1
Authority
WO
WIPO (PCT)
Prior art keywords
address
mac address
arp
arp packet
client
Prior art date
Application number
PCT/KR2012/001714
Other languages
English (en)
French (fr)
Inventor
김준섭
정우영
Original Assignee
주식회사 이스트소프트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 이스트소프트 filed Critical 주식회사 이스트소프트
Priority to DE112012002054.5T priority Critical patent/DE112012002054T5/de
Priority to US14/117,131 priority patent/US9038182B2/en
Priority to JP2014510237A priority patent/JP5826920B2/ja
Publication of WO2012153913A1 publication Critical patent/WO2012153913A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL

Definitions

  • the present invention relates to a method of protecting a spoofing attack using a blocking server, and more particularly, to a method of protecting a spoofing attack using a blocking server by checking IP and MAC addresses included in an ARP packet received by a client in a network, And the MAC address is changed to a MAC address corresponding to the MAC address.
  • ARP or IP spoofing is the fundamental means used for hacking such as DoS, DDoS, Sniffing or Hijacking.
  • ARP (Address Resolution Protocol) spoofing manipulates the sender hardware address and sender IP address, and uses the MAC address of the attacking system as the source information of the ARP reply packet for the IP address of another system in the local network.
  • ARP table of other routers, switches, and hosts in the local network it is an attack technique that makes packets that are not the IP address of the attacking system to be transmitted to the attacking system with the MAC address of the attacking system.
  • IP spoofing is used as a means of attack to change its source IP to make it mistaken to another system without knowing who it is or to another system.
  • IP spoofing For example, by stealing various IP packets from other hosts connected to the same internal network through ARP spoofing, personal information may be leaked, even financial information may be exposed, and the administrator level It is a reality that it is possible to manipulate server information freely by stealing ID and password. Furthermore, if IP spoofing is used to steal online work done on an external network, more systems are vulnerable to attack.
  • a router having a filtering function is used as a currently used technique.
  • IP packets coming from an external network IP packets allocated to a local network
  • IP network address and mask There is a way to filter using IP network address and mask.
  • the attacker can not catch it when spoofing using another address of an arbitrary local network.
  • the ARP spoofing There was a problem that could not cope.
  • each client PC obtains valid IP-MAC address information of all the client PCs in the network network obtained from the blocking server by using an allowed IP-MAC address list and a blocked MAC address list, And to provide a spoofing attack defense method using a blocking server that allows an ARP spoofing attack to be responded in real time or after, by inspecting an ARP packet.
  • the present invention also provides a spoofing attack prevention method using a blocking server that allows a blocking server or a client to independently monitor and block a spoofing attack by storing a permitted IP-MAC address list and a blocked IP-MAC address list in a blocking server or each client And to provide the above objects.
  • the present invention examines an IP address and a MAC address included in an ARP packet relayed through an L2 switch 104 in a network, and when it is determined that a spoofing attack is occurring, A method for blocking transmission of a packet, the method comprising: collecting an IP address and a MAC address of a client (106) connected to the network, the address collecting unit (108-1) of the blocking server (108); The address collecting unit 108-1 generates a permissible IP-MAC address list in which the IP address and the MAC address collected in the first step correspond to each other, 108-3); The address collecting unit 108-1 transmits a blocking MAC address list, which is information on the MAC address of the client 106 used by the attacker who is performing the spoofing attack among the clients 106 connected to the network, to the blocking address DB 108 -4); When the ARP packet is input to the client 106, the ARP packet processor 106-1c of the client 106 extracts the IP address and the
  • the fifth step may be performed when the sender's IP address and MAC address are not in the allowed IP-MAC address list, If the IP address and the MAC address of the allowed IP-MAC address are mapped to the allowed IP-MAC address list and are different from the configuration of the allowed IP-MAC address stored in the address pair, the ARP packet is defined as a suspicious ARP packet;
  • the address checking unit 108-2 counts the transmission number of ARP packets having the same sender MAC address as the MAC address of the sender included in the suspicious ARP packet among the ARP packets that have been inputted to the client 106 for a unit time 5-2; And classifying the suspicious ARP packet as an infected ARP packet when the accumulated number of transmissions exceeds a threshold value for a predetermined period of time.
  • the address collecting unit 108-1 generates a permissible IP-MAC address list in which the IP address and the MAC address collected in the first step correspond to each other, 108-3);
  • the address collecting unit 108-1 transmits a blocking MAC address list, which is information on the MAC address of the client 106 used by the attacker who is performing the spoofing attack among the clients 106 connected to the network, to the blocking address DB 108 -4);
  • the ARP table protection unit 106-1b of the client 106 extracts the IP address and the MAC address of the ARP entry included in the ARP table of the client 106 and transmits the extracted IP address and MAC address to the blocking
  • the address collecting unit 108-1 generates a permissible IP-MAC address list in which the IP address and the MAC address collected in the first step correspond to each other, and transmits the permissible IP-MAC address list to the client 106 To the allowed address DB (106-1d) of the server (106);
  • the address collection unit 108-1 transmits a blocked MAC address list, which is information on a MAC address of a client 106 used by an attacker who is performing a spoofing attack among the clients 106 connected to the network, In a blocking address DB (106-1e); If an ARP packet is input to the client 106, the ARP packet processor 106-1
  • the fifth step may be performed when the sender's IP address and MAC address are not in the allowed IP-MAC address list, If the IP address and the MAC address of the allowed IP-MAC address are mapped to the allowed IP-MAC address list and are different from the configuration of the allowed IP-MAC address stored in the address pair, the ARP packet is defined as a suspicious ARP packet;
  • the ARP packet processing unit 106-1c accumulates the transmission number of the ARP packet having the same sender MAC address as the MAC address of the sender included in the suspicious ARP packet among the ARP packets inputted to the client 106 for a unit time Step 5-2; And classifying the suspicious ARP packet as an infected ARP packet when the accumulated number of transmissions exceeds a threshold value for a predetermined period of time.
  • the address collecting unit 108-1 generates a permissible IP-MAC address list in which the IP address and the MAC address collected in the first step correspond to each other, and transmits the permissible IP-MAC address list to the client 106 To the allowed address DB (106-1d) of the server (106);
  • the address collection unit 108-1 transmits a blocked MAC address list, which is information on a MAC address of a client 106 used by an attacker who is performing a spoofing attack among the clients 106 connected to the network, In a blocking address DB (106-1e);
  • a fourth step of the ARP table protection unit 106-1b of the client 106 extracting
  • the ARP packet processor 106-1c of the specific client 106 extracts the IP address and the MAC address of the sender included in the transmitted ARP packet, A second step of inspecting whether or not there is an abnormality; If the sender's IP address extracted in the second step is not included in the local IP-MAC address list or the MAC address stored corresponding to the extracted IP address of the sender is included in the transmitted ARP packet, A third step of the ARP packet processor 106-1c classifying the transmitted A
  • the IP address and the MAC address of the normal hardware connected to the network can be previously stored and monitored in order to block the spoofing attack against the network, thereby enabling accurate defense in a short time.
  • each client can store the allowed address list and the blocking address list, and each client can detect and protect the attack, thereby reducing the load on the blocking server and shortening the response time for the attack There is an effect.
  • FIG. 1 is a block diagram illustrating components of a network including a blocking server according to an embodiment of the present invention
  • FIG. 2 is a block diagram illustrating the components of the shutdown server of FIG.
  • FIG. 3 is a block diagram illustrating the components of the client of FIG.
  • FIG. 4 is a flowchart showing a process of blocking a spoofing attack
  • FIG. 5 is a flowchart showing a process of monitoring a suspected packet as a spoofing attack
  • router 104 L2 switch
  • client 108 blocking server
  • FIG. 1 is a block diagram illustrating a network element including a blocking server according to an exemplary embodiment of the present invention.
  • FIG. 2 is a block diagram illustrating the components of the blocking server shown in FIG. 1.
  • a spoofing attack defense method includes a client 106 connected to a lower end of an L2 switch 104 included in a network, a blocking server 108 connected to each client 106, And is performed by the administrator terminal 110 that inputs an object. It is described that the client 106 is composed of N terminals from the client 1 (106-1) to the client N (106-N).
  • the client 1 (106-1) to the client N (106-N) exchange IP packets with each other through the ARP.
  • the ARP packet includes a MAC address mapped to the IP address of the client 1 106-1 through the client N 106-N.
  • the blocking server 108 receives the valid IP-MAC address list from the client 106 or the administrator terminal 110 through the IP-MAC address list collection procedure, and configures the allowed IP-MAC address list based on the valid IP-MAC address list.
  • the blocking server 108 has an allowed IP-MAC address list, and checks the ARP packets entering and exiting through the L2 switch 104 to determine whether or not the packet is a spoofing attack.
  • the blocking server 108 may forward the list of allowed IP-MAC addresses to each client 106 and store them, and may allow the client 106 to directly monitor the spoofing attack.
  • the IP address of the client 106 and the corresponding MAC address are combined to form an 'IP-MAC address'.
  • the client 106 checks whether the ARP table is infected through the ARP table protection unit 106-1b and the ARP packet processing unit 106-1c in the ARP spoofing attack checking step and checks whether the ARP table 106-1b and the ARP packet processing unit 106-1c Lt; / RTI >
  • the ARP table protection unit 106-1b grasps all the ARP entries of the ARP table configured in the client 106. [ The identification of the ARP entry may be performed periodically or whenever the information about the blocking address is updated. If there is an infected ARP entry among the ARP entries, the attack blocking process proceeds.
  • the ARP packet processing unit 106-1c checks whether or not the ARP is infected.
  • the infected ARP entry or the infected ARP packet found in the inspection process is processed in the ARP spoofing attack blocking step by the blocking server 108 (see FIG. 4), and the suspicious ARP entry or suspicious ARP packet is processed in the suspicious MAC address confirmation request step (See Fig. 5)
  • FIG. 4 is a flowchart illustrating a process of blocking a spoofing attack
  • FIG. 5 is a flowchart illustrating a process of monitoring a packet suspected of being a spoofing attack.
  • the blocking server 108 collects and stores a list of IP-MAC addresses of all the clients 106 in the network network (S102).
  • the blocking server 108 collects all the terminals constituting the local network Refers to all L2 switches 104 and clients 106 connected to the lower portion of one router 102.
  • the client 106 included in the network collects its own IP address and MAC addresses of all adapters (hardware) and transmits them to the blocking server 108.
  • IP-MAC addresses may occur automatically (periodically), or when certain events occur, such as equipment replacement or addition.
  • the client 106 sends the latest IP-MAC address changed to the blocking server 108 when a change in the adapter information is detected by adding a new adapter or removing the existing adapter.
  • IP-MAC addresses may be manually performed by an administrator, which collects IP-MAC addresses for one or more individual clients 106-1 through 106-N connected to the network, And manually inputs it to the blocking server 108 via the terminal 110.
  • the IP-MAC address information which is automatically collected by the client 106 or manually input by the administrator, is stored in the blocking server 108.
  • the address collecting unit 108-1 receives a valid IP-MAC address list input from the client 106 or the administrator terminal 110.
  • IP-MAC address information stored in the blocking server 108 is valid address information for devices (switches, clients) included in the network, it is a white list allowing exchange of data packets.
  • a true IP-MAC address list that is not distorted is defined as a permitted IP-MAC address list, and address information on devices installed in a specific client 106 in the allowed IP- 106). ≪ / RTI >
  • the local IP-MAC address list is automatically generated by the particular client 106 and sent to the blocking server 108.
  • the list excluding the local IP-MAC address list from the allowed IP-MAC address list is entered manually by the administrator or acquired by the client 106 during the attack monitoring process or obtained from the security system of the external organization and stored.
  • the IP address of the sender included in the ARP packet to be transmitted is the local IP-MAC If the MAC address stored in the address list is different from the MAC address of the sender included in the transmitted ARP packet, the client 106 has already received the spoofing attack, It can be seen that the address and the MAC address are changed. At this time, the transmission of the ARP packet should be blocked immediately. For this purpose, it is preferable to separately manage the local IP-MAC address list.
  • IP address and MAC address in the allowed IP-MAC address list is 1: N relation. That is, since a plurality of adapters having an independent MAC address can be installed in the client 106 having one IP address, one IP address and a plurality of MAC addresses can be stored as respective address pairs.
  • the blocking server 108 automatically requests the client 106 to request a list of allowed IP-MAC addresses to manage the allowed IP-MAC address list, or if the administrator manually inputs the permitted IP-MAC address list Can be supported.
  • the MAC address of the originator (sender) recorded in the Ethernet header of the ARP packet relayed through the L2 switch 104 is used for the spoofing attack, it may be added to the blocked MAC address list to prevent future attacks .
  • the terminal attempting the spoofing attack may be one of the clients 106 included in the network, and the blocked MAC address list referred to in the present invention means the hardware address of the client 106 used by the attacker.
  • the blocking MAC address list can be generated and added by a continuous monitoring by the blocking server 108 and an input by an administrator.
  • the blocking server 108 stores the allowed IP-MAC address list and the blocked MAC address list in the allowed address DB 108-3 and the blocked address DB 108-4, respectively.
  • the blocking server 108 confirms whether an ARP packet entering or exiting the network is infected based on the allowed IP-MAC address list and the blocked MAC address list stored in the two DBs 108-3 and 108-4.
  • the blocking server 108 transmits the allowed IP-MAC address list and the blocked MAC address list to the corresponding client 106 immediately when the specific client 106 is notified of the time when the specific client 106 is connected to the network.
  • the blocking server 108 transmits a list of changed allowed IP-MAC addresses and blocked IP-MAC addresses to all the clients 106 included in the network do.
  • the permitted IP-MAC address list and the blocked MAC address list transmitted to the client 106 are stored in the allowed address DB 106-1d and the blocked address DB 106-1e existing in the client 106, respectively.
  • the client 106 may selectively accept the IP-MAC address list and the blocked MAC address list. If the client 106 has such an address list, It is possible to judge whether or not a spoofing attack is caused by inspecting the packet by itself. If it is set to not transmit an address list to each client 106 by policy selection, the blocking server 108 will determine whether or not the ARP packet is attacked each time an ARP packet is input.
  • the ARP table protection unit 106-1b checks an ARP entry included in the ARP table of the client 106 every time a new allowed IP-MAC address list and a blocked MAC address list are transmitted to check for infection.
  • the L2 switch 104 relays (receives and transmits) all ARP packets coming and going from inside the network (S104)
  • the network filter driver installed in the client 106 inspects ARP packets coming in and going out through the client 106 in real time.
  • the ARP packet refers to all operation type ARP packets including an ARP request (Request) and an ARP reply (Reply).
  • the ARP packet processing unit 106-1c of the client 106 that has received the ARP packet extracts the IP address and the MAC address of the source (sender) included in the received ARP packet and transmits the extracted IP address and MAC address to the blocking server 108, (S106)
  • the ARP table protection unit 106-1b extracts the IP address and the MAC address of the source of the ARP entry included in the ARP table, and transmits the extracted IP address and MAC address to the blocking server 108.
  • the inspection request may be made at regular intervals or whenever an ARP packet is input or whenever an allow or block address list is changed.
  • the address checking unit 108-2 compares the extracted IP-MAC address with the address list stored in the DBs 108-3 and 108-4 to check whether or not the spoofing attack is occurring (S108)
  • the address checking unit 108-2 checks whether an address identical to the MAC address of the source ARP packet or the source address of the ARP entry is stored in the blocking address DB 108-4.
  • this ARP packet is modulated It can be judged that it is used for a spoofing attack to intercept packet data with a MAC address, and this is referred to as an infected ARP packet.
  • the client 1 (106-1) is the attacker's terminal and wants to intercept a packet coming and going between the client 2 (106-2) and the client 3 (106-3).
  • the client 1 (106-1) sends an infected ARP packet to the client 2 (106-2) and the client 3 (106-3) and tricks its MAC address into the address of the normal receiver. That is, in the ARP table of the client 2 (106-2), the MAC address of the client 1 (106-1) is written in the place where the MAC address of the client 3 (106-3) is recorded, In the ARP table, the MAC address of the client 1 (106-1) is written in a place where the MAC address of the client 2 (106-2) is recorded.
  • the client 1 (106-1) captures and stores the packets input from the client 2 (106-2) and the client 3 (106-3) and sends the packet to the normal destination again, or blocks the transmission of the packet, .
  • the blocking server 108 compares the IP-MAC address pair of all the previously stored clients 106 with the IP-MAC address pair included in the newly input ARP packet or ARP entry, and determines whether the client has the normal MAC address.
  • the infected ARP packet input from the attacker client 106 is blocked (dropped) by the blocking server 108 so as not to be transmitted to the client 106 having the MAC address of the receiver, and the ARP table of the client 106 is transmitted MAC address.
  • the address checking unit 108-2 transmits the accepted address DB 108-3 And determines whether there is the same MAC address.
  • this ARP packet is sent from the normal device and can be regarded as irrelevant to the spoofing attack. Therefore, the data packet must be transmitted to the client 106 corresponding to the IP-MAC address of the destination included in the ARP packet, but the suspicious packet is inspected before that.
  • the packet is classified as a suspicious ARP packet and is passed through a separate inspection process (shown in FIG. 5 as step A in FIG. 4).
  • the MAC address of the sender of the incoming ARP packet is not in the blocked MAC address list, it is highly likely that it is not an infected packet, but it is classified as a suspicious ARP packet after confirming that two additional conditions are satisfied.
  • the first is when the sender's IP address and MAC address are not in the allowed IP-MAC address list. In other words, if it is not on the block list but is not on the whitelist, it is likely to be the first incoming packet from the sender, so it is classified as a suspicious ARP packet.
  • the second is that the sender's IP address and MAC address are included separately in the allowed IP-MAC address list, but are different from the combination stored in the allowed IP-MAC address list.
  • the IP-MAC addresses of the client 1 106-1 and the client 2 106-2 are mapped to [Aa] and [Bb] respectively and stored in the allowed IP-MAC address list as address pairs.
  • the IP-MAC address pair of the sender of the ARP packet received in the client 106 is [Ab] or [Ba].
  • the packets are classified into suspicious packets.
  • the address checking unit 108-2 For the suspicious ARP packet, the address checking unit 108-2 accumulates the transmission number of the ARP packet having the same source MAC address as the source MAC address of the suspected ARP packet for a unit time (S202)
  • the spoofing attack is attempted because the ARP packet is continuously sent to the network when the number of accumulated packets over a certain time exceeds a certain threshold value (S204). Normally, at least 20 times per second It is determined that a spoofing attack is attempted when an ARP packet is sent, but this value may vary depending on the state of the network. Thereafter, the suspicious ARP packet is classified as an infected ARP packet and the blocking process is performed.
  • the address checking unit 108-2 checks whether the source IP address and the source MAC address of the Ethernet header of the ARP packet destined for the other client 106 via the L2 switch 104 are included in the local IP-MAC address list. Since the local IP-MAC address list has address information for all the hardware of the specific client 106 included in the network, if the source address of the ARP packet from the specific client 106 is different from the local IP-MAC address list The corresponding specific client 106 may already be considered to have been infected by a spoofing attack.
  • the ARP packet in which the source IP address and the source MAC address of the Ethernet header of the ARP packet are not included in the local IP-MAC address list is judged to be an infected ARP packet, and the interception process is performed. If the source IP address and the MAC address are extracted from the ARP packet to be transmitted and the extracted IP address is not included in the local IP-MAC address list, it is an infected ARP packet.
  • the same IP address as the extracted IP address is included in the local IP-MAC address list. If the same IP address is found as a result of the inquiry, the corresponding MAC address is inquired. If the source MAC address of the ARP packet to be transmitted and the MAC address found in the local IP-MAC address list are not the same, this is also an infected ARP packet.
  • the ARP packet is transmitted / received to the designated destination (S118)
  • the client also has an accepted address list.
  • the ARP table protection unit 106-1b of the client 106 and the ARP table protection unit 106-1b of the client 106 are updated each time the ARP packet is inputted to the client 106 or when the allowed address DB 106-1d and the blocking address DB 106-1e are updated,
  • the processing unit 106-1c checks itself for a spoofing attack. At this time, the client 106 does not request the blocking server 108 to check for infection.
  • the ARP table protection unit 106-1b receives the allowed IP-MAC address list and the blocked MAC address list, which are collected and generated by the blocking server 108, periodically or whenever a specific event occurs, 1d and the blocking address DB 106-1e are always updated.
  • the ARP table protection unit 106-1b periodically checks the ARP entry and compares the extracted IP-MAC address with the address list stored in the DBs 106-1d and 106-1e to determine whether the packet is infected.
  • the ARP packet processing unit 106-1c extracts the IP-MAC address every time an ARP packet comes in or out, and determines whether the ARP packet is infected or not.
  • the ARP packet processing unit 106-1c blocks the corresponding ARP packet, or the ARP table protection unit 106-1b deletes the MAC Change the address.
  • the same ARP packet having the same MAC address is monitored for a certain period of time, and if it exceeds a certain threshold value, it is classified as an infected ARP packet.
  • the source IP-MAC address of the ARP packet leaving the client 106 is different from the information stored in the local IP-MAC address list, it is classified as an infected ARP packet.
  • the corresponding ARP packet should not be routed inside the network.
  • step S112 the ARP packet processing unit 106-1c determines whether the ARP packet is used for the spoofing attack from the blocking server 108. If the ARP packet is used for the spoofing attack, When the test result is notified, the sending / receiving of the infected ARP packet is blocked.
  • the ARP table protection unit 106-1b When the ARP table protection unit 106-1b is notified of the result of the inspection that the ARP entry is used for the spoofing attack, the ARP table protection unit 106-1b extracts the IP address from the IP-MAC addresses included in the infected ARP entry, The normal MAC address is inquired by the DBs 108-3 and 108-4 of the blocking server 108 or the DBs 106-1d and 106-1e of the client 106. [ When the normal MAC address is searched, the originator (sender) address of the infected ARP entry is fixed to the stored normal MAC address (S114). In the future, when the ARP packet having the corresponding IP address is received, 0.0 > MAC < / RTI > address.
  • the ARP table protection unit 106-1b and the ARP packet processing unit 106-1c block the information such as the operation type of the blocked packet, the source IP address, the source MAC address, the destination IP address, the destination MAC address, (S116)
  • the address collecting unit 108-1 of the blocking server 108 receives the data transmitted from the ARP table protecting unit 106-1b and the ARP packet processing unit 106-1c And updates the block address DB 108-4.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은 차단서버를 이용한 스푸핑 공격 방어방법에 관한 것으로서, 보다 상세하게는 네트워크망 내부의 클라이언트에 수신되는 ARP 패킷에 포함된 IP 및 MAC 주소를 검사하여 스푸핑 공격에 이용되는 것으로 확인되면 정상적인 IP 주소와 대응되는 MAC 주소로 변경하는 것을 특징으로 하는 차단서버를 이용한 스푸핑 공격 방어방법에 관한 것이다. 본 발명에 따르면 네트워크망에 대한 스푸핑 공격을 차단함에 있어서 네트워크망에 연결된 정상 하드웨어에 대한 IP 주소 및 MAC 주소를 미리 저장하여 감시할 수 있으므로, 빠른 시간안에 정확한 방어가 가능해지는 효과가 있다.

Description

차단서버를 이용한 스푸핑 공격 방어방법
본 발명은 차단서버를 이용한 스푸핑 공격 방어방법에 관한 것으로서, 보다 상세하게는 네트워크망 내부의 클라이언트에 수신되는 ARP 패킷에 포함된 IP 및 MAC 주소를 검사하여 스푸핑 공격에 이용되는 것으로 확인되면 정상적인 IP 주소와 대응되는 MAC 주소로 변경하는 것을 특징으로 하는 차단서버를 이용한 스푸핑 공격 방어방법에 관한 것이다.
인터넷의 사용이 날로 증가함에 따라 해킹의 기술 또한 증가하고 있으며, 현재에 이르러서는 해킹 프로그램 등이 네트워크 상에 산재하는 상황에까지 이르게 됨으로써 이제 전문가가 아닌 일반인도 해커가 될 수 있는 상황에 이르렀다.
이와 같이, DoS, DDoS, Sniffing 또는 Hijacking 과 같은 해킹을 위해 사용되는 근본적인 수단이 ARP 또는 IP 스푸핑(Spoofing)이다. 이 중 ARP(Address Resolution Protocol) 스푸핑은 발신자(Sender) 하드웨어 주소와 발신자 IP 주소를 조작하는 것으로서, 로컬 네트워크에서 다른 시스템의 IP 주소에 대해서 공격 시스템의 MAC 주소를 ARP Reply 패킷의 소스 정보로 사용하여 로컬 네트워크 내의 다른 라우터나 스위치, 호스트들의 ARP 테이블을 변경함으로써, 공격 시스템의 IP 주소가 아닌 패킷을 공격 시스템의 MAC 주소를 달고 공격 시스템으로 전달되게 만드는 공격 기법이다.
또한, IP 스푸핑은 자신의 소스 IP를 변경하여 다른 시스템에게 자신이 누군지 모르게 또는 다른 시스템으로 오인하도록 만드는 공격을 위한 수단으로 사용된다.
현재, ARP나 IP 스푸핑 공격으로 인한 피해는 해킹 피해의 대부분을 차지한다고 볼 수 있으며, 누구나 인터넷에서 돌아다니는 스푸핑 툴을 이용하여 특정 호스트를 공격하거나 망 내에서 돌아다니는 정보를 훔쳐 봄으로써 보안이 유지되어야 할 개인 정보들이 쉽게 도용되는 일이 빈번한 실정이다.
예를 들면, ARP 스푸핑을 통하여 동일한 내부 네트워크에 연결된 다른 호스트에서 행하여지는 여러 가지 IP 패킷들을 훔쳐 봄으로써 개인 정보가 유출될 수 있고, 심지어 금융정보까지도 노출되는 위험이 있으며, 특정 서버의 관리자 레벨의 ID와 패스워드를 훔쳐 봄으로써 서버 정보를 마음대로 조작하는 것이 가능한 게 현실이다. 더 나아가, IP 스푸핑을 하여 외부 네트워크 상에서 행하여지는 온라인 작업을 훔쳐 볼 경우 더 많은 시스템이 공격에 쉽게 노출되게 된다.
이러한 스푸핑을 방지하기 위하여 현재 사용되고 있는 기법으로는, 필터링 기능이 있는 라우터를 사용하여 외부망으로부터 들어오는 IP 패킷에 대해서 각각의 포트에 연결된 호스트들에 대한 개별적인 IP 주소를 이용하지 않고 로컬 네트워크에 할당된 IP 네트워크 주소와 마스크를 이용하여 필터링하는 방법이 있다. 그러나, 상기 방법은, 필터링에 각 호스트의 개별적인 IP 주소가 아니라 로컬 네트워크 주소를 사용함으로 인해 공격자가 임의의 로컬 네트워크의 다른 주소를 이용한 스푸핑을 할 경우 이를 잡아내지 못할 뿐만 아니라, ARP 스푸핑에 대해서는 전혀 대처하지 못하는 문제점이 있었다.
전술한 문제점을 해결하기 위한 본 발명은 각 클라이언트 PC가 차단서버로부터 얻은 네트워크망 내 모든 클라이언트 PC의 유효한 IP-MAC 주소정보를 담고 있는 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 이용해 ARP 테이블과 ARP 패킷을 검사함으로써 ARP 스푸핑 공격에 실시간으로 또는 사후에 대응할 수 있도록 하는 차단서버를 이용한 스푸핑 공격 방어방법을 제공하는 것을 목적으로 한다.
또한 본 발명은 허용 IP-MAC 주소 목록과 차단 IP-MAC 주소 목록을 차단서버 또는 각 클라이언트에 저장하여 차단서버나 클라이언트가 독자적으로 스푸핑 공격을 감시 및 차단할 수 있도록 하는 차단서버를 이용한 스푸핑 공격 방어방법을 제공하는 것을 목적으로 한다.
전술한 문제점을 해결하기 위해 안출된 본 발명은 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서, 차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와; 상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 허용주소DB(108-3)에 저장하는 제2단계와; 상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 차단주소DB(108-4)에 저장하는 제3단계와; 상기 클라이언트(106)에 ARP 패킷이 유입되면, 상기 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 상기 차단서버(108)로 전송하면서 스푸핑 공격 여부에 대한 검사를 요청하는 제4단계와; 차단서버(108)의 주소검사부(108-2)의 검사 결과, 상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단주소DB(108-4)에 저장된 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 패킷이 감염 ARP 패킷이라는 것을 상기 차단서버(108)가 상기 클라이언트(106)에 통보하는 제5단계와; 상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송수신을 차단하는 제6단계;를 포함한다.
상기 제5단계는 상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함되어 있지 않은 경우, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 없거나, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 맵핑되어 주소쌍으로 저장되어 있는 허용 IP-MAC 주소의 구성과 다르다면 상기 ARP 패킷을 의심 ARP 패킷으로 정의하는 제5-1단계와; 상기 주소검사부(108-2)가 단위시간 동안 상기 클라이언트(106)에 유입된 ARP 패킷 중에서 상기 의심 ARP 패킷에 포함된 송신자의 MAC 주소와 동일한 송신자 MAC 주소를 가지는 ARP 패킷의 전송 개수를 누적하는 제5-2단계와; 일정한 시간 동안 누적된 전송 개수가 임계치를 넘는 경우, 상기 의심 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5-3단계;를 추가로 포함한다.
다른 실시예에 따른 본 발명은 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서, 차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와; 상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 허용주소DB(108-3)에 저장하는 제2단계와; 상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 차단주소DB(108-4)에 저장하는 제3단계와; 상기 클라이언트(106)의 ARP 테이블보호부(106-1b)가 상기 클라이언트(106)의 ARP 테이블에 포함된 ARP 엔트리의 IP 주소와 MAC 주소를 추출하여 상기 차단서버(108)로 전송하면서 스푸핑 공격 여부에 대한 검사를 요청하는 제4단계와; 차단서버(108)의 주소검사부(108-2)의 검사 결과, 상기 제4단계에서 추출된 MAC 주소가 상기 차단주소DB(108-4)에 저장된 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 엔트리가 감염 ARP 엔트리라는 것을 상기 차단서버(108)가 상기 클라이언트(106)에 통보하는 제5단계와; 상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리에 포함된 IP 주소를 추출하고, 상기 추출된 IP 주소와 대응하여 저장된 정상 MAC 주소를 상기 허용 IP-MAC 주소 목록에서 조회하는 제6단계와; 상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리의 MAC 주소를 상기 조회된 정상 MAC 주소로 변경시키는 제7단계;를 포함한다.
또 다른 실시예에 따른 본 발명은 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서, 차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와; 상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와; 상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 상기 클라이언트(106)의 차단주소DB(106-1e)에 저장하는 제3단계와; 상기 클라이언트(106)에 ARP 패킷이 유입되면, 상기 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제4단계와; 상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 패킷처리부(106-1c)가 상기 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5단계와; 상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송수신을 차단하는 제6단계;를 포함한다.
상기 제5단계는 상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함되어 있지 않은 경우, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 없거나, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 맵핑되어 주소쌍으로 저장되어 있는 허용 IP-MAC 주소의 구성과 다르다면 상기 ARP 패킷을 의심 ARP 패킷으로 정의하는 제5-1단계와; 상기 ARP 패킷처리부(106-1c)가 단위시간 동안 상기 클라이언트(106)에 유입된 ARP 패킷 중에서 상기 의심 ARP 패킷에 포함된 송신자의 MAC 주소와 동일한 송신자 MAC 주소를 가지는 ARP 패킷의 전송 개수를 누적하는 제5-2단계와; 일정한 시간 동안 누적된 전송 개수가 임계치를 넘는 경우, 상기 의심 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5-3단계;를 추가로 포함한다.
또 다른 실시예에 따른 본 발명은 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서, 차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와; 상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와; 상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 상기 클라이언트(106)의 차단주소DB(106-1e)에 저장하는 제3단계와; 상기 클라이언트(106)의 ARP 테이블보호부(106-1b)가 상기 클라이언트(106)의 ARP 테이블에 포함된 ARP 엔트리의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제4단계와; 상기 제4단계에서 추출된 MAC 주소가 상기 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 테이블보호부(106-1b)가 상기 ARP 엔트리를 감염 ARP 엔트리로 분류하는 제5단계와; 상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리에 포함된 IP 주소를 추출하고, 상기 추출된 IP 주소와 대응하여 저장된 정상 MAC 주소를 상기 허용 IP-MAC 주소 목록에서 조회하는 제6단계와; 상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리의 MAC 주소를 상기 조회된 정상 MAC 주소로 변경시키는 제7단계;를 포함한다.
또 다른 실시예에 따른 본 발명은 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서, 특정 클라이언트(106)에 설치되어 있는 장치들의 IP 주소와 MAC 주소를 수집하는 제1단계와; 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 로컬 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와; 상기 특정 클라이언트(106)로부터 ARP 패킷이 송신될 때, 상기 특정 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 송신되는 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제2단계와; 제2단계에서 추출된 송신자의 IP 주소가 상기 로컬 IP-MAC 주소 목록에 포함되어 있지 않거나, 추출된 송신자의 IP 주소와 동일한 IP 주소에 대응하여 저장된 MAC 주소가 상기 송신되는 ARP 패킷에 포함된 송신자의 MAC 주소와 다른 경우, 상기 ARP 패킷처리부(106-1c)가 상기 송신되는 ARP 패킷을 감염 ARP 패킷으로 분류하는 제3단계와; 상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송신을 차단하는 제4단계;를 포함한다.
본 발명에 따르면 네트워크망에 대한 스푸핑 공격을 차단함에 있어서 네트워크망에 연결된 정상 하드웨어에 대한 IP 주소 및 MAC 주소를 미리 저장하여 감시할 수 있으므로, 빠른 시간 안에 정확한 방어가 가능해지는 효과가 있다.
또한 차단서버뿐만 아니라 각각의 클라이언트에도 허용 주소 목록과 차단 주소 목록을 저장하고, 각각의 클라이언트가 공격의 감지와 방어를 수행할 수 있으므로, 차단서버의 부하를 줄이고 공격에 대한 대응 시간을 단축시킬 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 차단서버가 포함된 네트워크망의 구성요소를 나타낸 블럭도.
도 2는 도 1의 차단서버의 구성요소를 나타낸 블럭도.
도 3은 도 1의 클라이언트의 구성요소를 나타낸 블럭도.
도 4는 스푸핑 공격을 차단하는 과정을 나타낸 순서도.
도 5는 스푸핑 공격으로 의심되는 패킷을 감시하는 과정을 나타낸 순서도.
102 : 라우터 104 : L2스위치
106 : 클라이언트 108 : 차단서버
110 : 관리자단말기
이하에서 도면을 참조하여 본 발명의 실시예에 따른 "차단서버를 이용한 스푸핑 공격 방어방법"(이하, '방어방법'이라 함)을 설명한다.
도 1은 본 발명의 실시예에 따른 차단서버가 포함된 네트워크망의 구성요소를 나타낸 블럭도이며, 도 2는 도 1의 차단서버의 구성요소를 나타낸 블럭도, 도 3은 도 1의 클라이언트의 구성요소를 나타낸 블럭도이다.
본 발명의 실시예에 따른 스푸핑 공격 방어방법은 네트워크망에 포함된 L2스위치(104)의 하단에 연결된 클라이언트(106)와, 각각의 클라이언트(106)와 연결된 차단서버(108)와, 수동으로 차단 대상을 입력하는 관리자단말기(110)에 의하여 수행된다. 클라이언트(106)는 클라이언트1(106-1)부터 클라이언트N(106-N)까지 N개의 단말기로 구성되는 것으로 설명한다.
클라이언트1(106-1) 내지 클라이언트N(106-N)은 ARP를 통해 서로 IP 패킷을 주고받게 된다. 이를 위해 ARP 패킷에는 클라이언트1(106-1) 내지 클라이언트N(106-N)의 IP 주소와 맵핑(mapping)된 MAC 주소가 포함된다.
차단서버(108)는 IP-MAC 주소 목록 수집 절차를 통해 클라이언트(106) 또는 관리자단말기(110)로부터 유효한 IP-MAC 주소 목록을 전달받고, 이를 토대로 허용 IP-MAC 주소 목록을 구성한다. 차단서버(108)는 허용 IP-MAC 주소 목록을 가지고 있다가 L2스위치(104)를 통해 출입하는 ARP 패킷을 검사하여 스푸핑 공격인지를 판단한다.
차단서버(108)는 허용 IP-MAC 주소 목록을 각각의 클라이언트(106)에 전달하여 저장하도록 하고, 클라이언트(106)가 직접 스푸핑 공격을 감시하도록 할 수도 있다.
본 발명에서는 클라이언트(106)의 IP 주소와, 이에 대응하는 MAC 주소(각각의 클라이언트에 설치된 어댑터의 MAC 주소)를 결합하여 'IP-MAC 주소'라 한다.
클라이언트(106)는 ARP 스푸핑 공격 검사 단계에서 ARP 테이블보호부(106-1b)와 ARP 패킷처리부(106-1c)를 통해 ARP 테이블의 감염 여부를 검사하고, 클라이언트(106)를 통해 출입하는 ARP 패킷을 검사한다.
ARP 테이블보호부(106-1b)는 클라이언트(106)에 구성된 ARP 테이블의 모든 ARP 엔트리를 파악한다. ARP 엔트리의 파악은 주기적으로 이루어질 수도 있고, 차단 주소에 대한 정보가 업데이트될때마다 할 수도 있다. ARP 엔트리 중에서 감염 ARP 엔트리가 있는 경우에는 공격 차단 과정이 진행된다.
ARP 패킷처리부(106-1c)는 ARP 패킷이 클라이언트(106)에 들어올때마다 ARP 의 감염 여부를 검사한다.
검사 과정에서 발견된 감염 ARP 엔트리 혹은 감염 ARP 패킷은 차단서버(108)에 의해 ARP 스푸핑 공격 차단 단계에서 처리되고,(도 4 참조) 의심 ARP 엔트리 혹은 의심 ARP 패킷은 의심 MAC 주소 확인 요청 단계에서 처리된다.(도 5 참조)
도 4는 스푸핑 공격을 차단하는 과정을 나타낸 순서도이며, 도 5는 스푸핑 공격으로 의심되는 패킷을 감시하는 과정을 나타낸 순서도이다.
이하에서 도 1 내지 5를 참조하여 본 발명의 실시예에 따른 차단서버(108)의 동작과정을 설명한다.
차단서버(108)는 네트워크망 내부의 모든 클라이언트(106)의 IP-MAC 주소 목록을 수집하여 저장한다.(S102) 차단서버(108)가 수집하는 대상은 로컬 네트워크를 구성하는 모든 단말기를 포함하는 것으로서, 하나의 라우터(102)의 하부에 연결된 모든 L2스위치(104)와 클라이언트(106)를 의미한다.
이를 위해 네트워크망에 포함된 클라이언트(106)는 자신의 IP 주소와 모든 어댑터(하드웨어)의 MAC 주소를 수집해 차단서버(108)에 전송한다.
IP-MAC 주소의 수집과 전송은 자동으로(주기적으로) 이루어질 수도 있고, 장비의 교체나 추가와 같은 일정한 이벤트가 발생했을 때, 이루어질 수도 있다.
클라이언트(106)는 새로운 어댑터를 추가하거나 기존 어댑터를 제거함으로써 어댑터 정보의 변경이 감지되는 경우에 변경된 최근 IP-MAC 주소를 차단서버(108)로 전송한다.
IP-MAC 주소의 수집은 관리자에 의해 수동으로 이루어질 수도 있는데, 네트워크망에 대한 관리자는 네트워크망에 연결된 1대 이상의 개별 클라이언트(106-1 내지 106-N)에 대한 IP-MAC 주소를 수집해 관리자단말기(110)를 통해 차단서버(108)에 수동으로 입력한다.
클라이언트(106)에 의해 자동으로 수집되거나 관리자에 의해 수동으로 입력된 IP-MAC 주소 정보는 차단서버(108)에 저장된다. 주소수집부(108-1)는 클라이언트(106) 또는 관리자단말기(110)로부터 입력되는 유효한 IP-MAC 주소 목록을 전송받는다.
차단서버(108)에 저장되는 IP-MAC 주소 정보는 네트워크망에 포함되어 있는 장치(스위치, 클라이언트)들에 대한 유효한 주소 정보이므로, 데이터 패킷의 교환이 허용되는 화이트리스트(white list)가 된다.
본 발명에서는 왜곡되지 않은 진정한 IP-MAC 주소 목록을 허용 IP-MAC 주소 목록이라고 정의하며, 허용 IP-MAC 주소 목록 중에서 특정 클라이언트(106)에 설치되어 있는 장치들에 대한 주소 정보를 해당하는 클라이언트(106)의 로컬 IP-MAC 주소 목록이라고 지칭한다.
로컬 IP-MAC 주소 목록은 주로 특정 클라이언트(106)에 의해 자동으로 생성되어 차단서버(108)에 보내진다. 허용 IP-MAC 주소 목록 중에서 로컬 IP-MAC 주소 목록을 제외한 나머지 목록은 관리자가 수동으로 입력하거나, 클라이언트(106)가 공격 감시 과정에서 획득하여 입력하거나, 외부 기관의 보안시스템으로부터 입수하여 저장된다.
로컬 IP-MAC 주소 목록을 특별히 따로 보관하는 것은 클라이언트(106)에서 나가는 ARP 패킷의 감염 여부를 확인하기 위해서이다. 클라이언트(106) 자신의 모든 장치들에 대한 MAC 주소를 가지고 있는 상황에서 클라이언트(106)가 다른 호스트를 향해서 ARP 패킷을 송신할 때, 송신되는 ARP 패킷에 포함된 송신자의 IP 주소가 로컬 IP-MAC 주소 목록에 포함되어 있지 않거나, 송신자의 IP 주소와 동일한 IP 주소에 대응하여 저장된 MAC 주소가 송신되는 ARP 패킷에 포함된 송신자의 MAC 주소와 다른 경우에는 클라이언트(106) 자신이 이미 스푸핑 공격을 받아서 IP 주소와 MAC 주소의 변경이 이루어져 있는 것으로 볼 수 있다. 이때에는 즉시 ARP 패킷의 송신을 차단하여야 하는데, 이를 위해 로컬 IP-MAC 주소 목록을 따로 관리하는 것이 바람직하다.
허용 IP-MAC 주소 목록의 IP주소와 MAC 주소 관계는 1:N 관계이다. 즉, 하나의 IP 주소를 갖는 클라이언트(106)에 독립적인 MAC 주소를 갖는 다수의 어댑터가 설치될 수 있으므로, 하나의 IP 주소와 다수의 MAC 주소가 각각의 주소쌍으로 저장될 수 있다.
차단서버(108)는 허용 IP-MAC 주소 목록을 관리하기 위해 자동으로 클라이언트(106)에 허용 IP-MAC 주소 목록을 요청하여 전송받거나, 관리자가 수동으로 허용 IP-MAC 주소 목록을 입력하면 이를 저장하는 방식을 모두 지원할 수 있다.
한편, L2스위치(104)를 통해 중계되는 ARP 패킷의 이더넷 헤더에 기록된 출발지(송신자)의 MAC 주소가 스푸핑 공격에 이용되는 것일 경우에는 차단 MAC 주소 목록에 추가함으로써 앞으로의 추가 공격을 막을 수 있다.
스푸핑 공격을 시도하는 단말기는 네트워크망에 포함된 클라이언트(106) 중의 하나일 것이며, 본 발명에서 지칭하는 차단 MAC 주소 목록은 공격자가 사용하는 클라이언트(106)의 하드웨어 주소를 의미한다. 차단 MAC 주소 목록은 차단서버(108)에 의한 지속적인 감시와 관리자의 입력 등의 방식으로 생성 및 추가가 가능하다.
IP 주소와 이에 대응하는 MAC 주소를 쌍으로 대응시켜 저장하는 허용 IP-MAC 주소 목록과 달리 차단 MAC 주소 목록에는 패킷 전달이 차단되는 MAC 주소만 기재된다. 이것은 공격자가 IP 주소를 임의로 변조하여 ARP 패킷에 포함시키는 경우에도 동일한 MAC 주소를 가진 L2스위치(104)로 데이터가 전송되어 스푸핑 공격이 이루어지므로, 이를 방지하기 위하여 IP 주소에 관계없이 동일한 MAC 주소를 가진 L2스위치(104)로 데이터 패킷이 전해지지 않도록 하기 위한 것이다.
차단서버(108)는 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 각각 허용주소DB(108-3)와 차단주소DB(108-4)에 저장한다. 차단서버(108)는 두 개의 DB(108-3, 108-4)에 저장된 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 바탕으로 네트워크망을 출입하는 ARP 패킷의 감염여부를 확인한다.
그리고 차단서버(108)는 특정 클라이언트(106)가 네트워크망에 연결되는 시점을 통지받는 즉시 해당 클라이언트(106)로 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 전송한다.
허용 IP-MAC 주소 목록과 차단 MAC 주소 목록에 변동이 발생되면 차단서버(108)는 네트워크망에 포함된 모든 클라이언트(106)에게 변동된 허용 IP-MAC 주소 목록과 차단 IP-MAC 주소 목록을 전송한다.
클라이언트(106)에게 전송된 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록은 클라이언트(106) 내부에 존재하는 허용주소DB(106-1d)와 차단주소DB(106-1e)에 각각 저장된다. 클라이언트(106)에 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 전송하여 저장하도록 하는 것은 선택적으로 채택할 수 있는 정책이며, 클라이언트(106)가 이러한 주소 목록을 가지고 있는 경우에는 자신에게 입력되는 ARP 패킷을 스스로 검사하여 스푸핑 공격 여부를 판단할 수 있다. 만약 정책적인 선택에 의해 각각의 클라이언트(106)에는 주소 목록을 전송하지 않는 것으로 설정한다면, ARP 패킷이 입력될 때마다 차단서버(108)가 공격 여부를 판단하게 될 것이다.
ARP 테이블보호부(106-1b)는 새로운 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록이 전송될 때마다 클라이언트(106)의 ARP 테이블에 포함된 ARP 엔트리를 검사하여 감염 여부를 검사한다.
차단서버에만 허용 주소 목록이 저장된 경우
먼저, 차단서버(108)만 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 가지고 있는 경우의 검사과정을 설명한다.
L2스위치(104)는 네트워크망 내부에서 오고가는 모든 ARP 패킷을 중계(수신 및 송신)한다.(S104)
클라이언트(106)에 설치된 네트워크 필터 드라이버는 클라이언트(106)를 통해 들어오고 나가는 ARP 패킷을 실시간으로 검사한다. 여기서 ARP 패킷은 ARP 요청(Request)과 ARP 응답(Reply)을 포함한 모든 Operation 타입의 ARP 패킷을 지칭한다.
ARP 패킷을 수신한 클라이언트(106)의 ARP 패킷처리부(106-1c)는 수신된 ARP 패킷에 포함된 출발지(송신자)의 IP 주소와 MAC 주소를 추출하여 차단서버(108)로 전송함으로써 스푸핑 공격 여부에 대한 검사를 요청한다.(S106) 또한 ARP 테이블보호부(106-1b)는 ARP 테이블에 포함된 ARP 엔트리의 출발지의 IP 주소와 MAC 주소를 추출하여 차단서버(108)로 전송한다.
검사요청은 일정한 시간을 주기로 이루어질 수도 있고, ARP 패킷이 입력될 때마다 또는 허용 또는 차단 주소 목록이 변경될 때마다 이루어질 수도 있다.
주소검사부(108-2)는 추출된 IP-MAC 주소를 DB(108-3, 108-4)에 저장된 주소 목록과 비교하여 스푸핑 공격 여부를 검사한다.(S108)
주소검사부(108-2)는 먼저 전송된 ARP 패킷 또는 ARP 엔트리의 출발지의 MAC 주소와 동일한 주소가 차단주소DB(108-4)에 저장되어 있는지를 검사한다.
공격자가 사용하는 클라이언트(106)로부터 전송된 ARP 패킷 또는 ARP 엔트리의 출발지의 MAC 주소가 차단주소DB(108-4)에 저장된 IP-MAC 주소 목록의 MAC 주소와 동일하다면, 이 ARP 패킷은 변조된 MAC 주소로 패킷 데이터를 가로채려는 스푸핑 공격에 사용되는 것으로 판단할 수 있으며, 이를 감염 ARP 패킷이라고 지칭한다.
예를 들어 클라이언트1(106-1)이 공격자의 단말기이고, 클라이언트2(106-2)와 클라이언트3(106-3) 사이를 오고가는 패킷을 가로채려고 한다고 가정한다.
클라이언트1(106-1)은 클라이언트2(106-2)와 클라이언트3(106-3)에 감염 ARP 패킷을 보내서 자신의 MAC 주소를 정상적인 수신자의 주소인 것처럼 속인다. 즉, 클라이언트2(106-2)의 ARP 테이블에서 클라이언트3(106-3)의 MAC 주소를 기록하는 곳에 클라이언트1(106-1)의 MAC 주소가 기재되도록 하며, 클라이언트3(106-3)의 ARP 테이블에서 클라이언트2(106-2)의 MAC 주소를 기록하는 곳에 클라이언트1(106-1)의 MAC 주소가 기재되도록 하는 것이다.
이렇게 감염이 되면, 클라이언트2(106-2)가 클라이언트3(106-3)에게 보내는 패킷과, 클라이언트3(106-3)이 클라이언트2(106-2)에게 보내는 패킷이 모두 클라이언트1(106-1)에게 전달된다. 클라이언트1(106-1)은 클라이언트2(106-2)와 클라이언트3(106-3)으로부터 입력되는 패킷을 캡쳐하여 저장한 후 다시 정상적인 목적지로 보내거나, 패킷의 전달을 차단하여 정상적인 통신이 이루어지지 않도록 한다.
차단서버(108)는 미리 저장한 모든 클라이언트(106)의 IP-MAC 주소쌍과 새로 입력되는 ARP 패킷 또는 ARP 엔트리에 포함된 IP-MAC 주소쌍을 비교하여 정상적인 MAC 주소를 가진 것인지를 판단한다.
공격자 클라이언트(106)로부터 입력된 감염 ARP 패킷은 차단서버(108)에 의해 수신자의 MAC 주소를 갖는 클라이언트(106)로 전송되지 않도록 차단(드롭)되며, 클라이언트(106)의 ARP 테이블은 정상적인 장치의 MAC 주소로 변경된다.
전송된 ARP 패킷 또는 ARP 엔트리의 송신자(출발지)의 MAC 주소와 동일한 주소가 차단주소DB(108-4)에 포함되어 있지 않다면, 주소검사부(108-2)는 허용주소DB(108-3)를 검사하여 이와 동일한 MAC 주소가 있는지를 판단한다.
만약 송신자의 IP 주소와 MAC 주소의 조합이 허용 IP-MAC 주소 목록에 저장된 조합의 내용과 동일하다면, 이 ARP 패킷은 정상적인 장치에서 보낸 것이므로 스푸핑 공격과 무관한 것이라고 볼 수 있다. 따라서 ARP 패킷에 포함된 목적지의 IP-MAC 주소에 해당하는 클라이언트(106)로 데이터 패킷을 전송하여야 하는데, 그 전에 의심 패킷에 대한 검사단계를 거친다.
두 개의 DB(108-3, 108-4)에 저장된 주소 중에서 송신자의 MAC 주소와 동일한 주소를 찾을 수 없거나, 송신자의 MAC 주소가 차단 MAC 주소 목록에는 없지만 IP 주소와 MAC 주소의 조합이 허용 IP-MAC 주소 목록에 저장된 조합의 내용과 다르다면 아직 최종적으로 안전한 패킷인지 감염된 패킷인지를 확정할 수 없는 상태이다. 이때에는 의심 ARP 패킷으로 분류하여 별도의 검사과정(도 4의 A 단계로서 도 5에 도시)을 거치도록 한다.
유입된 ARP 패킷의 송신자의 MAC 주소가 차단 MAC 주소 목록에 없다면 감염 패킷이 아닐 가능성이 크지만, 추가적인 두 가지 조건의 충족 여부를 확인한 후 의심 ARP 패킷으로 분류한다.
첫 번째는 송신자의 IP 주소와 MAC 주소가 허용 IP-MAC 주소 목록에 없는 경우이다. 다시 말해서 차단 목록에도 없지만 허용 목록에도 없다면 그 송신자로부터는 처음으로 들어온 패킷일 가능성이 크므로, 의심 ARP 패킷으로 분류한다.
두 번째는 송신자의 IP 주소와 MAC 주소가 허용 IP-MAC 주소 목록에 개별적으로 포함되어 있기는 하지만, 허용 IP-MAC 주소 목록에 저장된 조합과는 다른 경우이다. 예를 들어서 클라이언트1(106-1)과 클라이언트2(106-2)의 IP-MAC 주소가 [A-a]와 [B-b]로 각각 맵핑되어 허용 IP-MAC 주소 목록에 주소쌍으로 저장되어 있는데, 특정 클라이언트(106)에 들어온 ARP 패킷의 송신자의 IP-MAC 주소쌍이 [A-b] 또는 [B-a]인 경우를 말한다. 각각의 IP 주소인 A, B와, MAC 주소인 a, b가 허용 목록에 있기는 하지만 맵핑된 주소쌍의 구성요소가 달라진 경우이므로, 스푸핑 공격에 의해 주소가 변질된 것으로 의심해 볼 수 있다.
허용 IP-MAC 주소 목록에 저장된 주소쌍의 내용과 정확히 일치하지 않는 경우에는 바로 감염 ARP 패킷으로 분류하여 차단시킬 수도 있지만, 네트워크망 내부의 통신 상황에 따라서 MAC 주소를 변경하는 경우도 생길 수 있으므로, 최종적인 확인을 위해서 일단은 의심 패킷으로 분류한다.
의심 ARP 패킷에 대해서는 주소검사부(108-2)가 단위시간 동안 해당 의심 ARP 패킷의 출발지 MAC 주소와 동일한 출발지 MAC 주소를 가지는 ARP 패킷의 전송 개수를 누적한다.(S202)
일정한 시간동안 누적된 개수가 특정한 임계치를 넘는 경우에는 네트워크망에 대해서 지속적으로 과도한 ARP 패킷을 발송하는 것이므로, 스푸핑 공격을 시도하는 것으로 간주하는 것이 안전하다.(S204) 통상적으로는 1초당 20회 이상의 ARP 패킷의 발송이 이루어지는 경우에 스푸핑 공격이 시도되고 있는 것으로 판단하도록 하지만, 이 수치는 네트워크의 상태에 따라서 달라질 수 있다. 이후에는 의심 ARP 패킷을 감염 ARP 패킷으로 분류하여 차단과정이 진행된다.
한편, 어느 하나의 클라이언트(106)로부터 다른 클라이언트(106)로 나가는 ARP 패킷에 대해서도 동일한 방법으로 스푸핑 공격 감염 여부를 판단할 수 있다.
주소검사부(108-2)는 L2스위치(104)를 경유해서 다른 클라이언트(106)로 향하는 ARP 패킷의 이더넷 헤더의 출발지 IP 주소와 출발지 MAC 주소가 로컬 IP-MAC 주소 목록에 포함되는지를 검사한다. 로컬 IP-MAC 주소 목록은 네트워크망에 포함된 특정 클라이언트(106)의 모든 하드웨어에 대한 주소 정보를 가지고 있으므로, 특정 클라이언트(106)에서 나가는 ARP 패킷의 출발지 주소가 로컬 IP-MAC 주소 목록과 다르다면 해당하는 특정 클라이언트(106)는 이미 스푸핑 공격에 의해 감염이 된 것으로 볼 수 있다.
따라서 ARP 패킷의 이더넷 헤더의 출발지 IP 주소와 출발지 MAC 주소가 로컬 IP-MAC 주소 목록에 포함되지 않는 ARP 패킷은 감염 ARP 패킷으로 판단하여 차단과정을 진행한다. 송신되는 ARP 패킷에서 출발지 IP 주소 및 MAC 주소를 추출하고, 추출된 IP 주소가 로컬 IP-MAC 주소 목록에 없으면 감염 ARP 패킷이다.
또한 추출된 IP 주소와 동일한 IP 주소가 로컬 IP-MAC 주소 목록에 포함되어 있는지를 조회한다. 조회 결과 동일한 IP 주소가 발견되고, 이와 대응하여 저장된 MAC 주소가 있다면 이를 조회한다. 송신되는 ARP 패킷의 출발지의 MAC 주소와 로컬 IP-MAC 주소 목록에서 조회한 MAC 주소가 동일하지 않다면 이 역시 감염 ARP 패킷이다.
이와 같은 모든 검사과정을 거쳐서 안전한 ARP 패킷인 것으로 인정되는 경우에는 지정된 목적지로 ARP 패킷의 송수신이 진행된다.(S118)
클라이언트에도 허용 주소 목록이 저장된 경우
개별 클라이언트(106)의 허용주소DB(106-1d)와 차단주소DB(106-1e)에 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록이 저장되어 있는 경우에는 L2스위치(104)를 거쳐서 각 클라이언트(106)에 ARP 패킷이 입력되었을 때 또는 허용주소DB(106-1d)와 차단주소DB(106-1e)가 업데이트될 때마다 클라이언트(106)의 ARP 테이블보호부(106-1b)와 ARP 패킷처리부(106-1c)가 자체적으로 스푸핑 공격 여부를 검사한다. 이때에는 차단서버(108)에 감염 여부의 검사를 요청하지 않고 클라이언트(106)가 직접 수행한다.
이 경우에도 전술한 바와 같이 출발지의 MAC 주소가 DB(106-1d, 106-1e)에 저장된 주소 목록과 동일한지를 판단한다. ARP 테이블보호부(106-1b)는 차단서버(108)가 수집하여 생성한 허용 IP-MAC 주소 목록과 차단 MAC 주소 목록을 주기적으로 또는 특정 이벤트가 발생했을 때마다 수신함으로써 허용주소DB(106-1d)와 차단주소DB(106-1e)가 항상 업데이트된 상태가 되도록 한다.
ARP 테이블보호부(106-1b)는 주기적으로 ARP 엔트리를 검사하여 추출된 IP-MAC 주소를 DB(106-1d, 106-1e)에 저장된 주소 목록과 비교하여 감염 여부를 판단한다. 그리고 ARP 패킷처리부(106-1c)는 ARP 패킷이 들어오거나 나갈 때마다 IP-MAC 주소를 추출하여 감염 여부를 판단한다.
만약 출발지의 MAC 주소가 차단 IP-MAC 주소 목록에 저장된 MAC 주소와 동일하다면 ARP 패킷처리부(106-1c)가 해당 ARP 패킷을 차단시키거나, ARP 테이블보호부(106-1b)가 ARP 엔트리의 MAC 주소를 변경한다.
또한 의심 ARP 패킷에 대해서도 앞에서와 동일하게 일정한 시간 동안 동일한 MAC 주소를 갖는 ARP 패킷이 유입되는지를 감시하고, 특정한 임계치를 넘는 경우에는 감염 ARP 패킷으로 분류한다.
또한 클라이언트(106)로부터 나가는 ARP 패킷의 출발지 IP-MAC 주소가 로컬 IP-MAC 주소 목록에 저장된 정보와 다를 경우에 감염 ARP 패킷으로 분류한다.
스푸핑 공격 차단 과정
차단서버(108) 또는 클라이언트(106)에 의해 감염 ARP 패킷으로 밝혀진 경우, 해당 ARP 패킷이 네트워크망 내부를 돌아다니지 않도록 해야 한다.
이를 위해 먼저 감염된 ARP 패킷의 송수신을 차단하고, ARP 테이블에서 해당 IP-MAC 주소를 수정한다.(S112) ARP 패킷처리부(106-1c)는 차단서버(108)로부터 ARP 패킷이 스푸핑 공격에 사용되고 있다는 검사결과를 통보받으면 해당 감염 ARP 패킷의 송수신을 차단시킨다.
그리고 ARP 테이블보호부(106-1b)는 ARP 엔트리가 스푸핑 공격에 사용되고 있다는 검사결과를 통보받으면 해당 감염 ARP 엔트리에 포함된 IP-MAC 주소 중에서 IP 주소를 추출하고, 추출된 IP 주소와 대응하여 저장된 정상 MAC 주소를 차단서버(108)의 DB(108-3, 108-4)나 클라이언트(106)의 DB(106-1d, 106-1e)에서 조회한다. 정상 MAC 주소가 조회되면, 감염 ARP 엔트리의 출발지(송신자) 주소를 저장된 정상 MAC 주소로 고정(static) 설정한다.(S114) 향후에는 해당 IP 주소를 가진 ARP 패킷이 들어왔을 때, 고정으로 설정된 정상 MAC 주소를 가진 클라이언트(106)로만 향하게 된다.
ARP 테이블보호부(106-1b)와 ARP 패킷처리부(106-1c)는 차단된 패킷의 Operation 타입, 출발지 IP 주소, 출발지 MAC 주소, 대상지 IP 주소, 대상지 MAC 주소, 패킷 발신 프로세스 등의 정보를 차단서버(108)로 전송한다.(S116) 차단서버(108)의 주소수집부(108-1)는 ARP 테이블보호부(106-1b)와 ARP 패킷처리부(106-1c)가 전송한 데이터를 수신하여 차단주소DB(108-4)를 업데이트한다.
이상 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명하였지만, 상술한 본 발명의 기술적 구성은 본 발명이 속하는 기술 분야의 당업자가 본 발명의 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해되어야 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (7)

  1. 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서,
    차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와;
    상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 허용주소DB(108-3)에 저장하는 제2단계와;
    상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 차단주소DB(108-4)에 저장하는 제3단계와;
    상기 클라이언트(106)에 ARP 패킷이 유입되면, 상기 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 상기 차단서버(108)로 전송하면서 스푸핑 공격 여부에 대한 검사를 요청하는 제4단계와;
    차단서버(108)의 주소검사부(108-2)의 검사 결과, 상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단주소DB(108-4)에 저장된 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 패킷이 감염 ARP 패킷이라는 것을 상기 차단서버(108)가 상기 클라이언트(106)에 통보하는 제5단계와;
    상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송수신을 차단하는 제6단계;를 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  2. 제1항에 있어서,
    상기 제5단계는
    상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함되어 있지 않은 경우, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 없거나, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 맵핑되어 주소쌍으로 저장되어 있는 허용 IP-MAC 주소의 구성과 다르다면 상기 ARP 패킷을 의심 ARP 패킷으로 정의하는 제5-1단계와;
    상기 주소검사부(108-2)가 단위시간 동안 상기 클라이언트(106)에 유입된 ARP 패킷 중에서 상기 의심 ARP 패킷에 포함된 송신자의 MAC 주소와 동일한 송신자 MAC 주소를 가지는 ARP 패킷의 전송 개수를 누적하는 제5-2단계와;
    일정한 시간 동안 누적된 전송 개수가 임계치를 넘는 경우, 상기 의심 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5-3단계;를 추가로 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  3. 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서,
    차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와;
    상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 허용주소DB(108-3)에 저장하는 제2단계와;
    상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 차단주소DB(108-4)에 저장하는 제3단계와;
    상기 클라이언트(106)의 ARP 테이블보호부(106-1b)가 상기 클라이언트(106)의 ARP 테이블에 포함된 ARP 엔트리의 IP 주소와 MAC 주소를 추출하여 상기 차단서버(108)로 전송하면서 스푸핑 공격 여부에 대한 검사를 요청하는 제4단계와;
    차단서버(108)의 주소검사부(108-2)의 검사 결과, 상기 제4단계에서 추출된 MAC 주소가 상기 차단주소DB(108-4)에 저장된 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 엔트리가 감염 ARP 엔트리라는 것을 상기 차단서버(108)가 상기 클라이언트(106)에 통보하는 제5단계와;
    상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리에 포함된 IP 주소를 추출하고, 상기 추출된 IP 주소와 대응하여 저장된 정상 MAC 주소를 상기 허용 IP-MAC 주소 목록에서 조회하는 제6단계와;
    상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리의 MAC 주소를 상기 조회된 정상 MAC 주소로 변경시키는 제7단계;를 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  4. 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서,
    차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와;
    상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와;
    상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 상기 클라이언트(106)의 차단주소DB(106-1e)에 저장하는 제3단계와;
    상기 클라이언트(106)에 ARP 패킷이 유입되면, 상기 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제4단계와;
    상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 패킷처리부(106-1c)가 상기 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5단계와;
    상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송수신을 차단하는 제6단계;를 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  5. 제4항에 있어서,
    상기 제5단계는
    상기 제4단계에서 추출된 송신자의 MAC 주소가 상기 차단 MAC 주소 목록에 포함되어 있지 않은 경우, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 없거나, 상기 송신자의 IP 주소와 MAC 주소가 상기 허용 IP-MAC 주소 목록에 맵핑되어 주소쌍으로 저장되어 있는 허용 IP-MAC 주소의 구성과 다르다면 상기 ARP 패킷을 의심 ARP 패킷으로 정의하는 제5-1단계와;
    상기 ARP 패킷처리부(106-1c)가 단위시간 동안 상기 클라이언트(106)에 유입된 ARP 패킷 중에서 상기 의심 ARP 패킷에 포함된 송신자의 MAC 주소와 동일한 송신자 MAC 주소를 가지는 ARP 패킷의 전송 개수를 누적하는 제5-2단계와;
    일정한 시간 동안 누적된 전송 개수가 임계치를 넘는 경우, 상기 의심 ARP 패킷을 감염 ARP 패킷으로 분류하는 제5-3단계;를 추가로 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  6. 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서,
    차단서버(108)의 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106)의 IP 주소와 MAC 주소를 수집하는 제1단계와;
    상기 주소수집부(108-1)가 상기 제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 허용 IP-MAC 주소 목록을 생성하고, 상기 허용 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와;
    상기 주소수집부(108-1)가 상기 네트워크망 내부에 연결된 클라이언트(106) 중에서 스푸핑 공격을 하는 공격자가 사용하는 클라이언트(106)의 MAC 주소에 대한 정보인 차단 MAC 주소 목록을 상기 클라이언트(106)의 차단주소DB(106-1e)에 저장하는 제3단계와;
    상기 클라이언트(106)의 ARP 테이블보호부(106-1b)가 상기 클라이언트(106)의 ARP 테이블에 포함된 ARP 엔트리의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제4단계와;
    상기 제4단계에서 추출된 MAC 주소가 상기 차단 MAC 주소 목록에 포함된 경우, 상기 ARP 테이블보호부(106-1b)가 상기 ARP 엔트리를 감염 ARP 엔트리로 분류하는 제5단계와;
    상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리에 포함된 IP 주소를 추출하고, 상기 추출된 IP 주소와 대응하여 저장된 정상 MAC 주소를 상기 허용 IP-MAC 주소 목록에서 조회하는 제6단계와;
    상기 ARP 테이블보호부(106-1b)가 상기 감염 ARP 엔트리의 MAC 주소를 상기 조회된 정상 MAC 주소로 변경시키는 제7단계;를 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
  7. 네트워크망 내부의 L2스위치(104)를 통해 중계되는 ARP 패킷에 포함된 IP 주소와 MAC 주소를 검사하여 스푸핑 공격이 이루어지고 있는 것으로 판단되면, 상기 ARP 패킷의 전송을 차단시키는 방어방법으로서,
    특정 클라이언트(106)에 설치되어 있는 장치들의 IP 주소와 MAC 주소를 수집하는 제1단계와;
    제1단계에서 수집한 상기 IP 주소와 상기 MAC 주소를 서로 대응시킨 로컬 IP-MAC 주소 목록을 상기 클라이언트(106)의 허용주소DB(106-1d)에 저장하는 제2단계와;
    상기 특정 클라이언트(106)로부터 ARP 패킷이 송신될 때, 상기 특정 클라이언트(106)의 ARP 패킷처리부(106-1c)는 상기 송신되는 ARP 패킷에 포함된 송신자의 IP 주소와 MAC 주소를 추출하여 스푸핑 공격 여부를 검사하는 제2단계와;
    제2단계에서 추출된 송신자의 IP 주소가 상기 로컬 IP-MAC 주소 목록에 포함되어 있지 않거나, 추출된 송신자의 IP 주소와 동일한 IP 주소에 대응하여 저장된 MAC 주소가 상기 송신되는 ARP 패킷에 포함된 송신자의 MAC 주소와 다른 경우, 상기 ARP 패킷처리부(106-1c)가 상기 송신되는 ARP 패킷을 감염 ARP 패킷으로 분류하는 제3단계와;
    상기 ARP 패킷처리부(106-1c)가 상기 감염 ARP 패킷의 송신을 차단하는 제4단계;를 포함하는, 차단서버를 이용한 스푸핑 공격 방어방법.
PCT/KR2012/001714 2011-05-12 2012-03-08 차단서버를 이용한 스푸핑 공격 방어방법 WO2012153913A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE112012002054.5T DE112012002054T5 (de) 2011-05-12 2012-03-08 Spoofing-Angriff-Abwehrverfahren unter Verwendung eines Blockierungsservers
US14/117,131 US9038182B2 (en) 2011-05-12 2012-03-08 Method of defending against a spoofing attack by using a blocking server
JP2014510237A JP5826920B2 (ja) 2011-05-12 2012-03-08 遮断サーバを用いたスプーフィング攻撃に対する防御方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2011-0044667 2011-05-12
KR1020110044667A KR101231975B1 (ko) 2011-05-12 2011-05-12 차단서버를 이용한 스푸핑 공격 방어방법

Publications (1)

Publication Number Publication Date
WO2012153913A1 true WO2012153913A1 (ko) 2012-11-15

Family

ID=47139371

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2012/001714 WO2012153913A1 (ko) 2011-05-12 2012-03-08 차단서버를 이용한 스푸핑 공격 방어방법

Country Status (5)

Country Link
US (1) US9038182B2 (ko)
JP (1) JP5826920B2 (ko)
KR (1) KR101231975B1 (ko)
DE (1) DE112012002054T5 (ko)
WO (1) WO2012153913A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015174100A1 (ja) * 2014-05-14 2015-11-19 学校法人東京電機大学 パケット転送装置、パケット転送システム及びパケット転送方法
US11277442B2 (en) * 2019-04-05 2022-03-15 Cisco Technology, Inc. Verifying the trust-worthiness of ARP senders and receivers using attestation-based methods

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010052394B4 (de) * 2010-11-24 2019-01-03 Kuka Roboter Gmbh Robotersystem mit einem Roboter und zwei wechselweise mit diesem verbindbaren Einrichtungen sowie Verfahren zum Wechseln dieser Einrichtungen
JP5876788B2 (ja) * 2012-08-21 2016-03-02 株式会社Pfu 通信遮断装置、通信遮断方法、及びプログラム
KR101420196B1 (ko) * 2013-01-18 2014-07-18 한남대학교 산학협력단 DDoS 공격의 대응 방법 및 장치
US20150235052A1 (en) 2014-02-17 2015-08-20 Samsung Electronics Co., Ltd. Electronic device and method for protecting users privacy
TWI506472B (zh) * 2014-03-12 2015-11-01 Hon Hai Prec Ind Co Ltd 網路設備及其防止位址解析協定報文攻擊的方法
US9985984B1 (en) * 2014-10-27 2018-05-29 National Technology & Engineering Solutions Of Sandia, Llc Dynamic defense and network randomization for computer systems
CN105741510A (zh) * 2016-03-17 2016-07-06 云丁网络技术(北京)有限公司 一种基于无线信号的智能报警方法及其智能报警系统
CN109314707A (zh) * 2017-04-06 2019-02-05 诺防网络科技有限公司 在物联网(IoT)网络上的ARP欺骗防止系统
KR102640946B1 (ko) * 2017-09-26 2024-02-27 (주)노르마 Arp 스푸핑 탐지 시스템 및 방법
CN107729202A (zh) * 2017-11-06 2018-02-23 深圳开发微电子有限公司 可追溯usb生产源头的一种方法
US10547587B2 (en) * 2018-03-19 2020-01-28 Didi Research America, Llc Method and system for near real-time IP user mapping
CN110401616A (zh) * 2018-04-24 2019-11-01 北京码牛科技有限公司 一种提高mac地址和ip地址安全性和稳定性的方法和系统
CN108965263B (zh) * 2018-06-26 2021-06-08 新华三技术有限公司 网络攻击防御方法及装置
JP6923809B2 (ja) * 2018-08-23 2021-08-25 日本電信電話株式会社 通信制御システム、ネットワークコントローラ及びコンピュータプログラム
US11201853B2 (en) 2019-01-10 2021-12-14 Vmware, Inc. DNS cache protection
US11368484B1 (en) * 2019-04-26 2022-06-21 Cisco Technology, Inc Endpoint security mechanism to detect IP theft on a virtual machine mobility in switch fabric
US10855644B1 (en) * 2019-09-09 2020-12-01 Vmware, Inc. Address resolution protocol entry verification
US11575646B2 (en) * 2020-03-12 2023-02-07 Vmware, Inc. Domain name service (DNS) server cache table validation
CN112637373B (zh) * 2020-11-17 2022-05-27 新华三技术有限公司合肥分公司 一种保持哑终端在线的方法及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040109985A (ko) * 2003-06-19 2004-12-29 주식회사 인티게이트 Dhcp 패킷을 이용한 동적 ip 주소할당 환경에서의arp/ip 스푸핑 자동 방지 방법
KR20060064450A (ko) * 2004-12-08 2006-06-13 한국전자통신연구원 Arp 공격 탐지 장치 및 방법
KR100807933B1 (ko) * 2006-11-28 2008-03-03 엘지노텔 주식회사 에이알피 스푸핑 감지 시스템 및 감지 방법과 그 방법이저장된 컴퓨터 판독가능 저장매체
KR20080107599A (ko) * 2007-06-07 2008-12-11 주식회사 케이티 통신 네트워크에서의 arp 공격 차단 시스템 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7234163B1 (en) * 2002-09-16 2007-06-19 Cisco Technology, Inc. Method and apparatus for preventing spoofing of network addresses
US8819285B1 (en) * 2002-10-01 2014-08-26 Trustwave Holdings, Inc. System and method for managing network communications
US7562390B1 (en) * 2003-05-21 2009-07-14 Foundry Networks, Inc. System and method for ARP anti-spoofing security
US8688834B2 (en) * 2004-07-09 2014-04-01 Toshiba America Research, Inc. Dynamic host configuration and network access authentication
US20060114863A1 (en) * 2004-12-01 2006-06-01 Cisco Technology, Inc. Method to secure 802.11 traffic against MAC address spoofing
EP1850236A1 (en) * 2005-02-18 2007-10-31 Duaxes Corporation Communication control apparatus
JP4546998B2 (ja) * 2005-02-18 2010-09-22 デュアキシズ株式会社 通信制御システム
US8510833B2 (en) * 2005-10-27 2013-08-13 Hewlett-Packard Development Company, L.P. Connection-rate filtering using ARP requests
US8289976B2 (en) * 2006-09-28 2012-10-16 Packetfront Network Products Ab Method for automatically providing a customer equipment with the correct service
CN101110821B (zh) * 2007-09-06 2010-07-07 华为技术有限公司 防止arp地址欺骗攻击的方法及装置
KR101270041B1 (ko) * 2011-10-28 2013-05-31 삼성에스디에스 주식회사 Arp 스푸핑 공격 탐지 시스템 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040109985A (ko) * 2003-06-19 2004-12-29 주식회사 인티게이트 Dhcp 패킷을 이용한 동적 ip 주소할당 환경에서의arp/ip 스푸핑 자동 방지 방법
KR20060064450A (ko) * 2004-12-08 2006-06-13 한국전자통신연구원 Arp 공격 탐지 장치 및 방법
KR100807933B1 (ko) * 2006-11-28 2008-03-03 엘지노텔 주식회사 에이알피 스푸핑 감지 시스템 및 감지 방법과 그 방법이저장된 컴퓨터 판독가능 저장매체
KR20080107599A (ko) * 2007-06-07 2008-12-11 주식회사 케이티 통신 네트워크에서의 arp 공격 차단 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015174100A1 (ja) * 2014-05-14 2015-11-19 学校法人東京電機大学 パケット転送装置、パケット転送システム及びパケット転送方法
US11277442B2 (en) * 2019-04-05 2022-03-15 Cisco Technology, Inc. Verifying the trust-worthiness of ARP senders and receivers using attestation-based methods

Also Published As

Publication number Publication date
JP5826920B2 (ja) 2015-12-02
DE112012002054T5 (de) 2014-02-13
JP2014517593A (ja) 2014-07-17
US20140325651A1 (en) 2014-10-30
US9038182B2 (en) 2015-05-19
KR101231975B1 (ko) 2013-02-08
KR20120126674A (ko) 2012-11-21

Similar Documents

Publication Publication Date Title
WO2012153913A1 (ko) 차단서버를 이용한 스푸핑 공격 방어방법
CN108040057B (zh) 适于保障网络安全、网络通信质量的sdn系统的工作方法
WO2011010823A2 (ko) 클라우드 컴퓨팅을 이용한 DDoS 공격 탐지 및 차단 방법 및 서버
US8112801B2 (en) Method and apparatus for detecting malware
EP1722535A2 (en) Method and apparatus for identifying and disabling worms in communication networks
KR100947211B1 (ko) 능동형 보안 감사 시스템
WO2022235007A1 (ko) 컨트롤러 기반의 네트워크 접속을 제어하기 위한 시스템 및 그에 관한 방법
WO2015034241A1 (en) Method and system for configuring smart home gateway firewall
WO2013085217A1 (ko) 다수의 중계 서버를 갖는 보안관리 시스템 및 보안관리 방법
AbdelSalam et al. An automated approach for preventing ARP spoofing attack using static ARP entries
Wang et al. Efficient and low‐cost defense against distributed denial‐of‐service attacks in SDN‐based networks
WO2017026840A1 (ko) 인터넷 연결 장치, 중앙 관리 서버 및 인터넷 연결 방법
KR101006372B1 (ko) 유해 트래픽 격리 시스템 및 방법
JP3790486B2 (ja) パケット中継装置、パケット中継システムおよびオトリ誘導システム
WO2024029658A1 (ko) 네트워크에서의 접근 통제 시스템 및 그 방법
WO2012144723A1 (ko) 웹서버보호장치
Jadhav et al. Detection and mitigation of arp spoofing attack
JP4641848B2 (ja) 不正アクセス探索方法及び装置
WO2013089395A1 (ko) 시그니쳐 기반 무선 침입차단시스템
KR20100048105A (ko) 네트워크 관리 장치 및 그 방법과 이를 위한 사용자 단말기및 그의 기록 매체
KR101358794B1 (ko) 이상 패킷 차단 시스템 및 방법
WO2014107028A1 (ko) 악성코드 침입 방지시스템 및 악성코드 침입 방지시스템의 동작 방법
KR20200116773A (ko) Sdn 기반의 검사시스템
WO2024143744A1 (ko) 네트워크 주소 변이 기반 암호화 통신 시스템 및 방법
WO2011087285A2 (ko) 스푸핑 방지 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12781690

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014510237

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14117131

Country of ref document: US

Ref document number: 112012002054

Country of ref document: DE

Ref document number: 1120120020545

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12781690

Country of ref document: EP

Kind code of ref document: A1