본문 바로가기

IT보안/네트워크 해킹&보안

[ Kali리눅스 ] 스니핑 공격 개념 및 실습 | ARPspoofing | Ettercap | VMware

스니핑(Sniffing) 공격 개념

스니핑의 사전적 의미는 '코를 킁킁거리다'로 네트워크 상에서 자신이 아닌 다른 사람들의 패킷을 엿보는 행위를 말한다.

즉, 네트워크 트래픽을 도청하는 행위를 말한다.




프리미스큐어스(Promiscuous) 모드

스니핑을 하기 위해선 랜 카드를 스니핑이 가능한 모드로 변경해야 되는데, 이를 프리미스큐어스 모드라고 한다.

✎일반적으로 네트워크 카드로 흘러 들어론 패킷이 자신의 IP주소, MAC 주소와 일치할 경우 패킷을 받아들이고, 다르면 버리는데, 이 모드를 설정하면, 패킷의 MAC주소나 IP 주소와 무관하게 모든 패킷을 수신하도록 된다.


모드 설정

 (1) 프러미스큐어스 모드로 변경하기

 (2) 랜카드 확인 (PROMISC 표시 확인)




스위칭 환경에서의 스니핑


ARP 리다이렉트

공격자가 자신을 라우터라고 속이는 것이다.

✎위조된 ARP Reply 패킷을 보내서, 해커의 MAC 주소가 라우터의 MAC 주소라며 주기적으로 브로드캐스트 한다.


실습환경 - Kali

 



실습 - (사용 툴: arpspoof, fragrouter)

 (1) ARP 공격 전 클라이언트의 ARP 테이플 확인

 (2) 공격자의 MAC 주소 확인 [00:0C:29:02:58:B5]

 (3) 패킷 릴레이 실행 ▶ fragrouter -B1: 해커의 Gateway로 포워딩[네트워크 침입탐지 회피] - 공격자

 (4) 새 터미널 창을 띄운 후, arpspoof 공격 실행 ▶ arpspoof -t [타겟IP] [Def. 라우터IP] - 공격자

 (5) 클라이언트에서 ARP 테이플 확인 후 공격 전과 후 비교하기

 (6) 공격자PC에서 Wireshark 실행 후, 클라이언트에서 간이뱅킹서버(http://210.110.180.187:9090/index.jsp)로 접속 [ID: user1 / pw: 1111]


 (7) 공격자PC에서 Wireshark로 가로챈 데이터 패킷 확인 [가로챈 아이디와 패스워드를 확인할 수 있음]




실습 - (사용 툴: ettercap)

 (1) 위 실습과 같이 클라이언트의 ARP테이블과 공격자의 MAC주소를 미리 확인한 후 기존에 공격자PC에 설치되어있는 Ettercap을 실행한다.  

 (2) Ettercap이 실행 됬으면, 먼저 Sniff 모드를 설정 해준다. - 공격자

 ✎Unified sniffing: cable을 통과하는 모든 패킷을 도청하는 모드

 ✎Bridged sniffing: 두개의 인터페이스 사용 시 다른 인터페이스로 트래픽 전달 모드

▲여기선 Unified sniffing 모드 선택

 (3) Network interface모드를 선택 해준다.

 (4) "Hosts-Scan for hosts" 로 호스트들을 찾은 후 "Hosts-Hosts list"로 들어가 추가된 리스트를 확인한다. - 공격자

 (5) "Add to Target 1"에 클라이언트 IP(192.168.1.30)를 추가하고, "Add to Target 2"에는 Def. 라우터 IP(192.168.1.2)를 추가한다. - 공격자

 (6)"Mitm-ARP poisoning"에서 "Only-poison one-way"를 선택하고 확인해준다. - 공격자

 ✎Sniff remote connections: 양방향속

 ✎Only poison one-way: 단방향속

     ▲스니핑 이므로 단방향속 선택

 (7) "Start-Start sniffing"로 Ettercap을 실행한다. - 공격자

 (8) 공격 후 클라이언트에서 ARP Table의 전과 후를 비교한다.

 이후 과정은 위 실습 내용과 똑같다.