Có vẻ như nó không may không hoạt động. Đây là cách tôi kiểm tra. Hãy sử dụng hai máy chủ - 1.1.1.1 và 2.2.2.2. 1.1.1.1 sẽ gửi gói tin, 2.2.2.2 sẽ lắng nghe.
Trước tiên, hãy thiết lập tính năng đánh hơi trên 2.2.2.2:
â ~ sudo tcpdump -vv 'src 1.1.1.1'
tcpdump: lắng nghe trên eth0, loại liên kết EN10MB (Ethernet), kích thước chụp 262144 byte
Bây giờ, hãy gửi một gói trên cổng 995 tới IP đó:
$ zmap --whitelist-file=<( echo 2.2.2.2 ) -p 995 -n 1
Như mong đợi, chúng tôi thấy lưu lượng truy cập từ 1.1.1.1 trên 2.2.2.2:
11:18:49.330632 IP (tos 0x0, ttl 250, id 54321, offset 0, flags [none], TCP nguyên mẫu (6), chiều dài 40)
1.1.1.1.47495 > 2.2.2.2.pop3s: Flags [S], cksum 0x5e8a (đúng), seq 4248475135, win 65535, độ dài 0
11:18:49.331688 IP (tos 0x0, ttl 59, id 0, offset 0, flags [DF], TCP nguyên mẫu (6), chiều dài 40)
1.1.1.1.47495 > 2.2.2.2.pop3s: Flags [R], cksum 0x5e87 (đúng), seq 4248475136, thắng 0, độ dài 0
Bây giờ, hãy thử chặn điều đó trên 1.1.1.1 và lặp lại thăm dò:
$ /sbin/iptables -A OUTPUT -d 2.2.2.2 -j DROP
$ zmap --whitelist-file=<( echo 2.2.2.2 ) -p 995 -n 1
Thật không may, chúng tôi đang thấy một số dữ liệu tcpdump khác. Điều này có nghĩa là nó không hoạt động.
Cuối cùng, tôi đã giải quyết vấn đề ở một lớp khác bằng cách sử dụng chức năng tường lửa của nhà cung cấp dịch vụ đám mây của mình.