ARP 중독과 관련된 연구 프로젝트를 진행하고 있습니다.
IP 수준에서 패킷을 가로 채고 싶습니다. 내 컴퓨터가 자신의 IP 주소가 아닌 IP 주소를 가진 패킷을 수신하면 해당 패킷을 사용자 공간 프로그램으로 보내려고합니다.
나는 이것이 TUN / TAP 인터페이스를 사용하여 달성 될 수 있다고 생각했다. 따라서 하드웨어 인터페이스의 IP 주소가 192.168.1.3이고 TUN의 IP 주소가 192.168.1.4 인 경우 모든 192.168.1.4 대상 패킷을 TUN으로 전달하여 사용자 공간으로 전달할 수 있도록 하드웨어 인터페이스를 설정할 수 있습니다. 프로그램.
들어오는 패킷은 ARP 포이즌으로 인해 여전히 하드웨어 인터페이스로 보내지고 내 TUN의 IP 주소를 갖습니다. 이더넷 스위치 또는 WiFi를 통해 장치가 동일한 네트워크에서 연결됩니다.
이것이 가능한 접근법입니까? 이것을 달성하는 더 쉽고 더 좋은 방법이 있습니까?
네트워크 지형에 대해서는 언급하지 않았습니다. 두 장치 모두 네트워크 스위치를 통해 연결되어 있습니까? 또한 NIC가 일반적으로 MAC 주소로 주소 지정되지 않은 계층 2 트래픽을 무시한다는 것을 알고 있습니까? (NIC를 무차별 모드로 설정하여 얻을 수 있습니다). 제안하는 문제는 무차별 모드가 활성화되어 있어도 트래픽을 192.168.1.4로 직접 전송하려고 시도하는 모든 컴퓨터가 ARP 조회에서 실패한다는 것입니다.
—
찰싹
추신 : OS 프로그래밍 문제가 많기 때문에 유닉스 관련 태그가 더 포함되도록 게시물을 편집했습니다.
—
격파
사용하십시오
—
Daniel B
libpcap
. 그러나 루트가 필요하며 보안이 중요합니다.
빙고, 그게 내가 생각한 것입니다! 감사합니다 @DanielB.
—
찰싹
ARP 중독 및 네트워크 토폴로지를 반영하도록 게시물을 업데이트했습니다.
—
코너 패트릭