2.1 실습환경과 목표
2.1.1 실습환경
Host
- OS: Ubuntu
- IP Addr(interface): 192.168.0.2 [ 00-13-e8-8a-77-77 ] (wlan0)
- 툴: dsniff, fragrouter
Target
- OS: Windows2000
- IP Addr: 192.168.0.15 [ 08-00-27-7C-DB-CF ]
- FTP접속: sjcu.ipnida.com(115.68.20.250)
Gateway
- Router: ipTIME G104
- IP Addr: 192.168.0.1 [ 00-08-9f-3e-23-73 ]
2.1.2 목표
- Host에서 ARP 스푸핑을 Target과 Gateway에 보내 Target에겐 Gateway로 Gateway에겐 Target으로 속여 중간에서 IP 포워딩을 하며 디스니프를 통해 Target의 FTP 접속 아이디와 비밀번호를 가로챌 수 있다.
2.2 실습과정
2.2.1 arp 스푸핑 이전 Target의 arp 캐시 확인
arp 스푸핑 하기 이전 Target의 arp 캐시 상태를 확인한다.
gateway의 ip(192.168.0.1), mac(00-08-9f-3e-23-73), type(dynamic) 위와 같음을 확인 할 수 있다.
2.2.2 arp 스푸핑(Host > ARP Reply > Target)
Host의 arpspoof 툴을 이용해 Target(192.168.0.15)의 arp캐시에 gateway(192.168.0.1)의 mac값을 Host의 [ 00-13-e8-8a-77-77 ]로 기억 시킨다.
- $sudo arpspoof -i wlan0 -t 192.168.0.15 192.168.0.1
2.2.3 arp 스푸핑 이후 Target의 arp 캐시 확인
arp 스푸핑 한 이후 Target의 arp 캐시 상태를 확인한다.
Targetdml arp 이전 값중 Gateway의 mac값이 Host의 [ 00-13-e8-8a-77-77 ]로 위와 같이 변경되어 있음을 확인 할 수 있다.
2.2.4 arp 스푸핑(Host > ARP Reply > Gateway)
Host의 arpspoof 툴을 이용해 Gateway(192.168.0.1)의 arp캐시에 Target(192.168.0.15)의 mac값을 Host의 [ 00-13-e8-8a-77-77 ]로 기억 시킨다.
- $sudo arpspoof -i wlan0 -t 192.168.0.1 192.168.0.15
2.2.5 IP forwarding(Target > Host > Gateway > FTP접속)
Host의 fragrouter 툴을 이용해 Target과 Gateway간을 IP포워딩을 한다.
- $sudo fragrouter -B1
2.2.6 디스니프로 FTP계정 가로채기
Host의 dsniff 툴을 이용해 FTP접속하는 Target과 Gateway간을 스니핑한다.
- $sudo dsniff -i wlan0
Target의 FTP 접속
FTP접속 종료후 스니핑 결과 확인
Target의 모든 연결이 Host를 통해 이루어지기 때문에 디스니프를 통해 평문인 FTP계정정보가 기록되었다.
2.3 보안대책
1. ARP 테이블에 Gateway 미리 고정시켜둔다.
2. Router의 DHCP기능 꺼두고 사용할 PC의 MAC 주소만 허용한다.
3. 암호화 프로토콜 사용으로 패킷을 암호화 한다.
댓글 없음:
댓글 쓰기