1. 소개

    ARP Spoofing을 이용한 악성코드 감염피해 사고가 빈번히 발생하고 있습니다.

   오래 전부터 꾸준히 발생하고 있는 공격이며, 최근에는 웹을 통해 악성코드를 유포시키고, ARP Spoofing 전용도구를

   이용하여 동일 네트워크 내에 있는 다른 PC들을 추가로 감염시키는 유형이 많이 발생하고 있습니다.

1.1  ARP Spoofing 공격이란?

     - 로컬 네트워크에서 사용하는 ARP Protocol의 허점을 이용하여 자신의 MAC 주소를 다른 컴퓨터의 MAC 인 것처럼

       속이는 공격 기법입니다.

     - ARP Cache 정보를 임의로 바꾼다고 하여 ARP Cache Poisoning 공격이라고도 합니다.

1.2 ARP Spoofing 공격 유형

    ① 서버존 내에서 ARP Spoofing 공격 유형 :

       - 공격자가 취약한 서버를 찾아 공격에 성공하게 되면, 서버에 악성코드가 삽입이 되어지고, 서버에 접속하는 모든

         이용자들이 공격대상이 될 수 있어 위험성이 높습니다.

   ② 클라이언트 지역에서의 ARP Spoofing 공격 유형 :

      - 피해 범위가 해당 PC가 존재하는 로컬 네트워크로 한정됩니다.

      -  상대적으로 보안에 취약한 한대의 클라이언트 사용자 PC를 해킹하는 것으로도 가능해 지므로 발생빈도가 높습니다.

      - 사용자 PC 가 감염된 후, 로컬 네트워크 내의 타 취약 PC들이 추가로 감염되는 유형으로 네트워크 장애가 발생할

        수 있습니다.

 

2. 동작

2.1 이더넷 통신에 대한 동작 방식 이해그림 1 Layer2 계층의 두 호스트 간 통신

    ①  TECH는 자신의 로컬 ARP Cache OULLIM IP/MAC 주소의 매핑이 존재하는지 검사합니다.

    ② TECH(00:0B:6A:A6:5A:4E) OULLIM IP MAC 주소에 대한 ARP 요청을 broadcasting(FF:FF:FF:FF:FF:FF) 

         합니다.

    ③ OULLIM(00:08:88:0B:00:19)는 자신의 IP MAC 주소를 담은 ARP Reply TECH(00:0B:6A:A6:5A:4E)에게 전송

        합니다.

    ④ TECH ARP Cache 정보를 업데이트 합니다.

 

 

                             [그림 2] tcpdump를 이용하여 두 호스트간의 ARP 동작 과정을 확인할 결과입니다.

 

2.2ARP Spoofing 공격 기법

 

   ① 공격자는 ARP Request broadcasting을 이용하여 이더넷상의 모든 호스트의 IP/MAC 주소 mapping을 확인합니다.

   ② 공격자는 각 호스트들에게 위조한 MAC 주소(상대방의 MAC 주소 = 공격자의 MAC 주소)를 보내 각 호스트의 ARP

       Cache 정보를 업데이트 시킵니다.

   ③ 스위치에서는 공격자의 MAC 주소와 포트 mapping 정보가 테이블에 등록됩니다.

   ④ 공격자는 Cache가 사라지기 전에 변조된 ARP Reply를 지속적으로 보내므로 각 호스트들의 ARP Cache의 변조

       된 MAC 주소의 정보는 계속적으로 유지됩니다.

   ⑤ 이때 공격자는 두 방향으로 정확히 재전송해 줄 수 있는 기능이 있어야만 TECH OULLIM은 통신을 할 수 있습니다.

 

 

 

   ⑥  공격에 성공하면 두 호스트는 서로 서버의 MAC 주소를 공격자의 MAC 주소로 인식하고 있기 때문에 모든 트래픽은          공격자에게 전달이 됩니다.

  ⑦ 공격자는 이 두 호스트에게 재전송할 수 있는 기능이 있으며, 또한 모든 패킷들을 캡쳐할 수 있게 됩니다.

3. 발생 시 증상 및 탐지 방법

3.1 ARP Spoofing 발생 시 증상

    ① 네트워크 사용량이 증가합니다.

        - 네트워크 응답이 지속적으로 늦어지거나 네트워크 장애가 발생하면 감염을 의심할 수 있습니다.

    ② 정기적인 ARP 패킷이 다량으로 발생합니다.

        -  피해 시스템은 ARP 테이블을 지속적으로 유지하기 위해 계속적으로 발송하는 ARP Reply 패킷에 의해 ARP 패킷

          의 수신량이 증가됩니다.

       - 공격 시스템은 ARP 테이블을 지속적으로 속이기 위해 ARP 패킷을 발송합니다.

3.2 탐지방법

    ① ARP 테이블을 조회하여 MAC 주소 중복 여부를 확인합니다.

 

 

 

      -  ARP 테이블을 조회하여 주변 IP MAC 주소를 확인합니다. 대부분의 경우 게이트웨이의 IP MAC주소로

         위장하는 경우가 많습니다.

      - [그림 5] IP(192.168.1.78)에서 사용하는 MAC을 다른 IP(192.169.1.106) 등그 외에도 많은 IP에서 사용하고 있는

        것을 확인할 수 있으며, ARP Spoofing을 의심할 수 있습니다.

      - 00:C0:26:20:69:A7 MAC을 가지고 있는 시스템이 ARP Spoofing 공격 시스템 임을 의심할 수 있습니다. 네트워크에

       서 해당 MAC을 가지고 있는 시스템을 찾아 악성 프로그램의 프로세스가 동작하지는 않는지, 악성 도구가 설치되어

       있지는 않은지 점검합니다.

      - , 내부에 IP Scanner를 사용할 경우, [그림 5]와 같이 동일하게 확인될 수 있습니다.

    ② 패킷분석 도구를 사용하여 ARP Reply 패킷을 확인합니다.

 

 

        -  그림 6]은 네트워크 장비에서 tcpdump를 이용하여 확인한 것이며, 필요 이상의 ARP Reply 패킷이 수신되고 있음을

           확인할 수 있습니다.

        - [그림 6] ARP Request에 대한 ARP Reply 이며 모든 네트워크의 호스트들이 자신의 MAC 주소

          가 00:C0:26:20:69:A7 이라고 Reply 패킷을 전송하고 있습니다.

        - 모든 IP에서 동일한 MAC 주소를 알려주는 것으로 보아서 00:C0:26:20:69:A7 MAC 주소를 가진 시스템이 ARP

          Spoofing 공격 시스템 임을 의심할 수 있습니다.

4. 대응방안

   ① 정적인 ARP 테이블을 관리합니다.

       - 예로, Gateway IP MAC 주소를 정적으로 고정시킴으로써 잘못된 ARP Reply 정보가 오더라도 이를 ARP 테이블

         에 반영하지 못하도록 합니다.

       - [그림 7]와 같이 윈도우 계열의 경우에 ARP 테이블을 정적으로 설정하면, [그림 8]과 같이 정적으로 설정이 된 것을

         확인할 수 있습니다.

       - 시스템뿐 아니라 네트워크 장비에서도 정적인 ARP 관리가 필요합니다.

       - 스위치 장비에서 각 포트 별 정적인 MAC 관리가 필요합니다.

   ② 시스템이 ARP Spoofing 서버로 악용되지 않도록 보안 수준을 강화합니다.

   ③ 네트워크 모니터링 도구를 이용하여 주기적으로 비정상 ARP Reply 패킷을 감시합니다.

       - 특정 호스트에서 ARP Reply이 비정상적으로 주기적으로 송수신되고 있는지 확인합니다. ARP 요청이 없는데 응답             만을 계속 송수신할 경우, ARP Spoofing을 의심할 수 있습니다.

       - 공격 시스템은 필요 이상으로 ARP Reply 패킷을 발송하고 피해 시스템은 ARP Reply 패킷을 수신합니다.

   ④ 프로그램을 이용하여 네트워크의 MAC 테이블을 관리합니다.

       - ARPWatch 프로그램은 ARP 트래픽을 실시간으로 모니터링 하여 MAC주소와 IP 주소의 mapping을 감시하는 프로            그램으로 ARP 정보가 데이터베이스에 저장되어 있는 ARP 정보와 다르거나 새로운 MAC 주소가 추가/확인 시에는            해당하는 내용을 지정된 관리자에게 통보하게 됩니다.

5. 결론

최근 들어 ARP Spoofing 공격과 관련된 대규모 악성코드 사고가 급증하고 있습니다.

이 공격은 악성코드 감염 외에도 DNS 파밍 공격 및 정보 유출 등 공격 응용 범위가 넓어지고 있습니다. 피해가 발생할 경우, 자신의 시스템 외에도 네트워크 내의 다른 사용자들에게도 피해를 주게 되므로 주의를 하여야 합니다.

ARP Spoofing 공격은 다양하게 악용이 가능하고 피해도 심각할 수 있는 반면 공격에 대한 탐지와 대응이 쉽지 않습니다.

이번 시간에 알아본 ARP Spoofing 공격기법을 이해하여, 사고가 발생할 경우, 빠르게 대처할 수 있고, 한발 앞서 대응할 수 있도록 합니다.

 

+ Recent posts