ARP Spoofing
주의사항 : 실제로 공격이 통할 수 있으니 실제로 사용하지 마십시오.
1. ARP Spoofing
- 위조된 arp reply 패킷을 계속 전송하는 방법을 사용한다.
- 중간자 공격의 하나이다.
1) 환경
- kali linux 2018.1 운영체제의 공격자 클라이언트
- 공격자 클라이언트에 설치된 arpspoof 프로그램
- 공격자 클라이언트에 설치된 fragrouter 프로그램
- 공격자 클라이언트에 설치된 tcpdump 프로그램
- 공격자 클라이언트에 설치된 ettercap 프로그램
- windows 7 운영체제의 희생자 클라이언트
2) 시연
[1] 희생자의 arp 테이블 확인(희생자)
▶ 정상적으로 IP에 해당하는 MAC주소를 확인할 수 있다.
▶ 희생자의 IP는 200.1.10.115 이다.
[2] arp reply 패킷 전송(공격자->희생자)
▶ arpspoof 사용방법 = # arpspoof -i [인터페이스명] -t [희생자 IP주소] [희생자의 GW주소]
▶ arpspoof 프로그램을 실행한다.
▶ -i 옵션 후 인터페이스 명을 적어준다.
▶ -t 옵션은 멈추지않고 계속 전송한다는 것을 의미한다.
▶ 200.1.10.115에게 200.1.10.1(게이트웨이)의 MAC주소를 공격자의 MAC주소로 바꿔준다.
[3] arp reply 패킷을 받은 희생자의 arp 테이블 확인(희생자)
▶게이트웨이인 200.1.10.1의 MAC주소가 200.1.10.51(공격자)의 MAC주소와 동일하게 변경된 것을 알 수 있다.
[4] 희생자가 외부 접속(희생자)
▶이 경우 게이트웨이로 패킷이 나가지 못하므로 외부와 통신되지 않음을 확인할 수 있다.
[5] 패킷 포워딩(공격자)
▶[4] 와 같이 외부와 통신이 되지 않는다면 희생자가 이상한 점을 감지할 것이다.
▶그래서 희생자에게 온 패킷을 외부로 전송하여 포워딩해준다.
[6] 희생자가 외부 접속확인(희생자)
▶공격자가 포워딩 해준 결과 희생자는 외부와 통신이 됨을 알 수 있다.
[7] 희생자의 통신내용 확인(공격자)
▶tcpdump 프로그램을 이용하여 희생자가 접속한 기록을 확인할 수 있다.
▶tcpdump 사용방법 = # tcpdump src [희생자 IP주소] and port [특정 서비스의 포트번호]
[8] 희생자의 통신내용 자세히 확인(공격자)
▶희생자 한 곳만 스니핑 하기 때문에 위와 같이 클릭한다.
▶ eth0 인터페이스를 확인할 것이다.
▶네트워크 내 호스트를 스캔한다.
▶스캔한 결과를 리스트로 확인한다.
▶희생자의 IP를 확인하고 타겟에 추가한다.
▶ARP 공격을 선택한다.
▶옵션파라미터에 원격연결 감지하는 것을 체크해준다.
▶#arpspoof 프로그램을 사용하는 것과 같은 효과를 낸다.
▶준비가 완료되어 시작을 누른다.
[9] 희생자가 공유기서버에 접속(희생자)
▶어떤 사이트에 접속하여 로그인을 시도한다.
[10] 공격자의 로그확인(공격자)
▶공격자의 로그에 접속을 시도한 내용을 확인한다.
▶위와 같은 방법으로 네트워크 내 사용자의 통신을 도청할 수 있다.
3) 대응방안
[1] MAC주소를 정적으로 고정시킨다.
▶ 방법 = # arp -s [IP주소] [MAC주소]
[2] 현재도 이런방법의 공격이 통하는 이유?
▶ 정적으로 설정하여 막을 수 있지만 네트워크 내 모든 시스템을 정적으로 설정하기에는 많은 시간이 소요된다.
▶ 또한 주소정보가 변경될 경우 모든 시스템에 매 번 수정해주어야 하기 때문에 불편하다.
▶ 재부팅할 경우 설정한 정보가 사라질 수 있으며 이 경우 배치파일을 생성하여 시작프로그램에 등록해 놓으면 된다.
'Try Attack > Network Hacking[basic]' 카테고리의 다른 글
iptables (0) | 2018.11.04 |
---|---|
Nmap 포트스캔 (1) | 2018.11.04 |
FTP서버 해킹 (0) | 2018.10.28 |
DNS Spoofing (0) | 2018.10.21 |
댓글