보안용어

ARP Spoofing Attack

logthink 2017. 2. 7. 18:00

ARP Protocol의 개요

 ○ ARP(Address Resolution Protocol)는 로컬 네트워크 호스트간 통신을 할 경우 사용되는 MAC 주소와 IP 주소 간 변환을 해주는 역할.

  상대방의 MAC 주소를 모를 경우 (ARP Chche table에 없을 경우) 동일 로컬 네트워크에 ARP Request 메세지를 Broadcast 하게 된다.


(※ Window XP의 경우 기본적으로 방화벽이 활성화되어 있기 때문에 수동으로 꺼주지 않으면 ping이 가지않는다. 보통은 ping을 이용해 정상적으로 네트워크가 연결되어있는지 확인한다.)


1. ARP Spoofing 공격 실행

-arpspoof 명령어로 공격


Usage : arpspoof [-i inferace] [-t target] host


"-t" 옵션으로 공격의 대상을 지정하며 host 부분에 Alice에게 Hacker가 다른 호스트라고 속이려고, 하는 대상의 IP를 적어준다.

이번 테스트에서는 Alice에게 Hacker 본인이 Bob이라고 속일 것이므로 다음과 같이 입력한다.


arpspoof -t 172.16.10.100 172.16.10.200


와 같이 실행하면 

Hacker에서 Alice로 172.16.10.200 IP를 가진 호스트의 MAC address는 Hacker의 MAC address라는 arp reply 패킷을 지속적으로 보내준다.


Alice 호스트의 ARP Cache Table을 업데이트 하기 위해 Bob 호스트로 ping을 전달후 ARP Cache Table의 내용을 보면 아래와 같다.


Bob 호스트에 대한 MAC address를 보면 Hacker의 MAc address로 변경되어 있는 것을 볼 수 있다. WireShark를 이용하여 Alice에게 전달되어 지는 패킷을 보면 다음과 같다.


Hacker에서 Alice로 ARP Cache Table 변조를 위해여 ARP reply 패킷을 지속적으로 보내는 것을 알 수 있다.



2. ARP spoofing 공격 탐지 방법


공격당하는 호스트에 ARP reply 패킷이 비슷한 간격으로 지속적으로 나타난다.

 

Hacker에서 Alice의 ARP Cache Table 변조를 위한 ARP reply 패킷이 지속적으로 전송되기 때문에 Alice 쪽에서 지속적으로 전송되어지는 ARP reply 패킷을 볼 수 있다.


희생자 쪽에서 패킷을 보면 ARP Redirect 패킷이 발생한다. ARP Redirect 패킷을 올바른 경로로 보내기 위해 경로를 변경했다는 의미로 Hacker에 의해서 ARP 패킷의 경로가 변경된 것을 알 수 있다.


로컬 네트워크 내에서는 TTL 값이 줄어들지 않는다. 하지만 ARP 공격을 당하고 있을 경우 중간에 Hacker 호스트를 거치게 되므로 reply 패킷의 TTl 값이 1 줄어든 것을 볼 수 있다.




'보안용어' 카테고리의 다른 글

[보안용어]DDoS  (0) 2017.02.07
[보안용어]스푸핑(Spoofing)  (0) 2017.02.07
Network Security_Sonrt Rule중 Content 키워드  (0) 2017.02.07
NULL Byte Injection  (0) 2017.02.07