에이알피 스푸핑
에이알피 스푸핑(ARP spoofing)은 근거리 통신망(LAN) 하에서 주소 결정 프로토콜(ARP) 메시지를 이용하여 상대방의 데이터 패킷을 중간에서 가로채는 중간자 공격 기법이다.
개요[편집]
ARP란 맥(MAC) 주소를 아이피(IP)로 변환하는 프로토콜로서 ARP 스푸핑 공격은 통신하는 두 대사의 MAC 주소를 공격자 자신의 MAC 주소로 바뀌어 중간에서 패킷을 가로채는 공격이다. 쉽게 예를 들자면, 통신 중에 있는 A와 B의 정보가 궁금한 해커는 ARP 스푸핑 공격을 하기로 결심한다. 해커는 A와 B의 통신 중간에 들어가, A와 B에게 각각 자신의 MAC 주소를 알려준다. 이렇게 되면 A와 B는 해커를 서로 통신하는 대상으로 인식하여 해커에게 통신정보를 전송하게 되며, A와 B의 통신내용을 해커가 모두 볼 수 있게 된다. 또한 통신 내용을 보고나서다시 그 정보를 원래 목적지로 보내거나, 패킷을 일부 변조하여 보낼 수도 있다. 패킷을 변조해서 보내는 경우에는 보통 목적지 PC를 감염시켜 좀비PC로 만들기 위해서다.[1] ARP 스푸핑 기법을 사용한 공격의 경우 특별한 이상 증상이 쉽게 나타나지 않기 때문에 사용자는 특별한 도구를 사용하지 않는 이상 쉽게 자신이 공격당하고 있다는 사실을 확인하기 힘들다.
특징[편집]
에이알피[편집]
에이알피(Address Resolution Protocol, ARP)는 말 그대로 주소결정 프로토콜으로서, 논리적인 아이피주소를 물리적인 맥 주소로 바꾸는 주소 해석 프로토콜이다. 두 계층에서 물리적 주소를 사용하여 통신하는 경우, 목적지 주소를 알아와 캡슐화(Encapsulation)를 완성하기 위한 목적으로 쓰인다.[2] 에이알피 스푸핑은 공격자가 피해자에게 자신이 게이트웨이라고 속이고 데이터를 전송하게 한다. 공격자는 이를 원래 게이트웨이로 전송해주기만 하면 피해자는 자신의 모든 정보가 노출당하지만 아무 문제 없이 통신할 수 있다.[3]
공격 절차[편집]
공격자가 피해자 시스템에 대한 에이알피 응답 요청이 있는 경우, 요청자에게 시스템을 대신하여 시스템 주소와 공격자의 맥 주소를 이용하여 동일 랜상의 모든 시스템에게 에이알피 리플(ARP Reply)을 응답한다. 동일 랜상의 모든 다른 시스템의 에이알피 캐시 테이블에는 피해자 시스템에 대해 공격자의 맥 주소가 매핑되어 향후 피해자 시스템으로 유입되는 모든 데이터 정보는 공격자에게 전달된다. 공격자는 주기적으로 자신의 조작된 에이알피 응답메시지를 보내어 시스템들의 변조된 에이알피 캐시 테이블이 계속 유지될 수 있게 한다.
공격 기능[편집]
- 그라튜터스(Gratuitous) 에이알피
- 에이알피에는 그라튜터스라는 기능이 있는데, 이를 통해 에이알피 요청 메시지 없이도 에이알피 응답 메시지 형태를 보낼 수 있고, 일반적인 에이알피 응답 메시지와는 다르게 에이알피 응답 메시지를 브로드캐스트(broadcast) 하게 된다. 이 메시지를 수신한 동일 랜 상의 모든 시스템은 자신의 에이알피 테이블에 해당 아이피 및 맥페어(MAC pair) 정보를 저장하게 된다. 이러한 기능은 본래 자신의 아이피 및 맥 정보를 동일 랜 상의 시스템에 알리기 위한 용도로 사용되고 있으나, 동일 랜 상의 모든 시스템에 거짓된 에이알피 캐시 포이즌(APR Cache Poison)을 위해서 활용되기도 한다.
- 중간자(Main-in-The-Middle) 공격
- 에이알피 스푸핑은 일반적으로 중간자 공격을 수반하여 동일 랜 상에서 공격대상 시스템에 오고 가는 통신 내용을 스니핑(sniffing) 하기 위해 악용된다. 중간자 공격을 이용해서 스니핑뿐만 아니라 데이터 변조 과정이 충분히 가능하고, 암호화 통신 사이에 위치해 평문화된 내용의 정보를 가로채 갈 수도 있다. 공격자 C와 시스템 A, B가 있는 경우 공격 절차는 다음과 같다.
- 공격자 C는 시스템 A와 시스템 B의 아이피 및 맥페어를 확보한다. 공격자는 시스템 A와 B사이에서 정상적인 통신을 수행하게 된다.
- ARP 스푸핑을 이용한 중간자 공격을 수행한다.(시스템 A에게는 시스템 B의 IP주소와 공격자 자신의 맥 주소로 위조하여 전달, 시스템 B에게는 시스템 A의 IP주소와 공격자 자신의 맥 주소로 위조하여 전달)
- 시스템 A, B의 ARP Cache 테이블에는 시스템 A, B의 아이피주소와 함께 공격자의 맥 정보가 저장된다.
- 공격자 C는 2의 과정을 일정시간마다 반복적으로 수행하여 시스템 A, B의 변조된 ARP 정보를 유지한다.
- 공격자 C는 시스템 A와 B의 사이에 위치하여 해당 시스템 간의 모든 네트워크 트래픽을 스니핑 및 변조를 통해 2차 공격을 감행한다.
- - VoIP 도청 : 데이터 스니핑 후 음성트래픽 재생
- - 파밍(Pharming)공격 : DNS 요청 및 응답 변조
- - 개인정보 탈취 : 데이터 스니핑 후 로그 분석
- - 악성코드 유포 : http redirection 혹은 if-ame injection 수행[4]
피해증상[편집]
만약 아래와 같은 문제점이 있다면 에이알피 스푸핑을 의심해보아야 한다.
- 잘 되던 사이트가 갑자기 먹통이 되거나 아예 안 뜨진 않지만 제대로 동작하지 않는다.
- 특정 사이트에서 로그인이 되지 않거나 되다 안되다 반복한다.
- 특정 페이지에서 페이지에 오류가 있습니다 라고 뜬다. 혹은 스크립트 오류 발견 등이 뜬다.
- 액티브 X 를 사용하는 페이지에서, 이유 없이 오류가 나거나 액티브 X를 재설치하라는 문구가 계속 뜬다. 이때 액티브 X를 삭제 후 재설치 해도 해결이 안되거나 되다 안 되다 반복한다.
- 특정 사이트가 이유없이 깨져서 나타난다. 특히 인코딩이 깨진 것 처럼 외계어만 나타나는 경우가 많다.
- 윈도우 업데이트가 실패한다.
- 이런 증상들이 나타나면서 바이러스나 악성코드 진단 시에는 이상이 없다.
- 인터넷 속도가 느려진다.[3]
대안[편집]
- 와이어샤크(Wireshark)
- 와이어샤크는 자유 및 오픈 소스 패킷 분석 프로그램이다. 이는 각기 다른 네트워크 프로토콜의 구조를 이해하는 소프트웨어이므로 각기 다른 네트워크 프로토콜이 규정한 각기 다른 패킷의 의미와 필드, 요약 정보를 보여줄 수 있다. 이러한 패킷 감지 프로그램을 이용하면 주기적으로 자신의 주소가 아님에도 에이알피 신호를 보내는 패킷을 확인할 수 있기 때문에 쉽게 감지가 가능하다.
- 정적 에이알피 엔트리 사용
- 로컬 방식에서 사용되는 공격 방식이기 때문에, 로컬 에이알피 캐시를 정적으로 정의할 수 있다. 이 경우 에이알피 신호를 받으면 자신의 에이알피 테이블을 먼저 확인하고, 정적으로 입력된 맥 주소에 대해서는 갱신하지 않는다. 에이알피 스푸핑을 확인하는 소프트웨어는 에이알피 응답을 상호확인하는 방법이나 특별한 형식의 인증서를 사용한다. 인증되지 않은 에이알피 응답은 차단된다.[5]
사례[편집]
- 아시아나항공 홈페이지 해킹사건
- 2017년 2월 20일, 국내에서 가장 유명한 항공사 중 하나인 아시아나항공 홈페이지가 Kuroi'SH and Prosox라고 알려진 해커들에게 공격을 받아 홈페이지가 다운되는 현상이 발생했다. 특정 해킹 단체의 공격으로 발생한 사건으로 홈페이지에 세르비아(Serbia)와 알바니아(Albania)의 분쟁에 관한 정치적 이슈를 담은 글로 뒤덮였다. 해당 글에는 "알바니아와 세르비아는 코소보 지역을 두고 분쟁을 겪었으며, 2008년 코소보가 독립을 선언했으나 세르비아는 이를 인정하지 않고 있다."라는 글이 쓰여져 있었다.[6]
- 이로 인해 아시아나 홈페이지를 이용하는 고객들이 접속이 불가능해 불편을 겪었으나 개인정보 유출은 없이 해킹 6시간 후, 홈페이지가 복구되었다. 이에 대해 DNS를 관리하는 외주 호스팅 업체에 대한 공격이라는 의견이 대부분이나, 단순한 DNS 공격을 복구하는데 반나절이나 걸릴 이유가 없다는 이유로 웹 서버나 게이트웨이의 맥 주소를 변경시켜 데이터를 변종시키는 에이알피 스푸핑이라는 의견도 있었다.[7] 아시아나는 개인정보 파일들이 암호화를 거치지 않고 웹상에서 첨부파일 형태로 올라가 있었다는 것이 밝혀져 비난을 받았다.[8]
- 반디소프트 꿀뷰 악성코드 유포 사건
- 2016년 3월 26일에 발생한 반디소프트(Bandisoft)의 꿀뷰 악성코드 유포 사건은 해커가 반디소프트와 같은 IDC(Internet Data Center)의 같은 IP 대역을 사용하는 다른 서버를 해킹한 후, 에이알피 스푸핑 방식으로 사용자가 홈페이지에 접속했을 때 반디소프트 홈페이지의 내용을 외부에서 변조하는 방법을 사용하여, 해당 기간 동안 홈페이지를 통해서 꿀뷰를 다운로드 받으려고 하는 사용자에게 꿀뷰 대신, 외부 사이트에 올려 놓은 악성 코드를 다운 받도록 한 사건이다.
- 해당 악성코드를 실행할 경우, 사용자에게는 원래 꿀뷰 설치 파일을 실행하도록 하고, 악성 코드는 시스템의 자동 실행에 등록되도록 하여 외부의 명령을 실행하거나 시스템의 정보를 탈취한다.[9] 공격은 두 시간가량 지속됐고, 악성코드를 다운받은 사용자는 약 200명으로 확인됐다.
- 반디소프트는 해킹 사건을 인지한 후 한국인터넷진흥원에 알리고 맥 주소를 고정주소로 변경하는 조치를 취하였다. 이후 홈페이지의 모든 http프로토콜을 차단하고 https로만 접근할 수 있도록 했으며, 반디소프트 메인 홈페이지의 IDC를 이전했다고 말했다
- 한국인터넷진흥원은 사건 발생 이후 악성코드를 다운받은 사용자들에 대한 전용 백신을 만들고, 악성코드 유포지와 C&C 서버를 바로 차단했다고 밝혔다. 이번 사건의 경우 반디소프트와 한국인터넷진흥원의 발 빠른 대처로 사건이 잘 마무리되었다.[10]
각주[편집]
- ↑ 〈ARP 스푸핑 공격이란 무엇인가요?〉, 《이스트시큐리티》, 2013-01-12
- ↑ Sohee BigNet, 〈ARP (주소결정프로토콜)〉, 《티스토리》, 2014-08-07
- ↑ 3.0 3.1 나무위키 - https://namu.wiki/w/ARP%20%EC%8A%A4%ED%91%B8%ED%95%91
- ↑ ssan, 〈ARP Spoofing〉, 《네이버 블로그》, 2010-02-23
- ↑ 위키백과 - https://ko.wikipedia.org/wiki/ARP_%EC%8A%A4%ED%91%B8%ED%95%91
- ↑ hyes IT, 〈아시아나 항공 DNS Spoofing 해킹 사건〉, 《티스토리》, 2017-02-20
- ↑ AMC-Studio, 〈아시아나 항공 홈페이지 해킹〉, 《티스토리》, 2017-05-26
- ↑ 아이마켓코리아, 〈아시아나 항공, 홈페이지 해킹사고 발생〉, 《아이마켓코리아》, 2017-02-20
- ↑ 〈2016년 3월 26일 꿀뷰 관련 악성코드 다운로드 사건에 대한 안내〉, 《반디소프트 공식 블로그》, 2016-03-27
- ↑ 민세아 기자, 〈꿀뷰 사건 그 이후...악성코드 유포 책임소재 논란〉, 《CIO Korea》, 2016-04-06
참고 자료[편집]
- 〈ARP 스푸핑 공격이란 무엇인가요?〉, 《이스트시큐리티》, 2013-01-12
- Sohee BigNet, 〈ARP (주소결정프로토콜)〉, 《티스토리》, 2014-08-07
- 나무위키 - https://namu.wiki/w/ARP%20%EC%8A%A4%ED%91%B8%ED%95%91
- ssan, 〈ARP Spoofing〉, 《네이버 블로그》, 2010-02-23
- 위키백과 - https://ko.wikipedia.org/wiki/ARP_%EC%8A%A4%ED%91%B8%ED%95%91
- hyes IT, 〈아시아나 항공 DNS Spoofing 해킹 사건〉, 《티스토리》, 2017-02-20
- AMC-Studio, 〈아시아나 항공 홈페이지 해킹〉, 《티스토리》, 2017-05-26
- 아이마켓코리아, 〈아시아나 항공, 홈페이지 해킹사고 발생〉, 《아이마켓코리아》, 2017-02-20
- 〈2016년 3월 26일 꿀뷰 관련 악성코드 다운로드 사건에 대한 안내〉, 《반디소프트 공식 블로그》, 2016-03-27
- 민세아 기자, 〈꿀뷰 사건 그 이후...악성코드 유포 책임소재 논란〉, 《CIO Korea》, 2016-04-06.
같이 보기[편집]