ARP spoofing
https://github.com/umbum/arp_spoof
패킷 만들어서 보내면 victim이 arp -d
같은거 수행 안해도 패킷 받자 마자 ARP table 업데이트가 일어나면서 MAC이 변경된다.
근데 공유기 같은거 끼고하면 안되는게, 공유기에 ARP spoofing 방지 기능이 있기 때문. 핫스팟 켜고 테스트해보면 잘 된다.
ARP spoofing 방지 기능 없는 경우, src - 공유기 - victim
이 유선으로 구성되어 있는 경우에도 잘 먹힌다.
* 저가형 공유기의 경우 자동 차단 기능은 없고, 몇 초 간격으로 공유기에서 다시 ARP를 보내는 수준의 기능만 있다.
Attacker | spoofing 패킷을 시도하는 호스트. |
Sender | spoofing을 당해 Attakcer에게 패킷을 전송하는 Victim. |
Receiver | 원래 Sender가 데이터를 보낼 대상. |
Sender에게 Attacker가 Receiver라고 속이게 된다. |
Relay 할 때는 src_mac은 반드시 Attacker의 mac을 적어 보내야 한다. 패킷 그대로 포워딩해버리면 Victim의 mac이 적혀있는 패킷이 스위치를 지나가게 되면서 CAM Table이 갱신되어 이 포트의 mac은 victim의 mac이라고 생각하게 되기 때문이다.
보낸 패킷에 대한 응답이 돌아올 때, 라우터의 Table은 spoofing 안했기 때문에 이 단에서는 원래 Sender로 제대로 포워딩 해주는데 스위치 단에서 “이 mac은 Attacker의 port”라고 생각해 Attaker로 보내버린다. 따라서 응답 까지 잡고 싶은 것이 아니라면 src_mac을 변경해주어야 한다.
This post is licensed under CC BY 4.0 by the author.