请给我一段用scapy进行IP和端口扫描,IP和端口来自一个列表的python3代码
时间: 2024-03-13 18:43:59 浏览: 136
基于python和httpscan的多端口c段扫描器+源代码+文档说明
当然可以,以下是使用`scapy`库进行IP和端口扫描的示例代码,其中IP和端口来自一个列表:
```python
from scapy.all import IP, TCP, sr
# 定义要扫描的IP地址列表和端口列表
target_ips = ["192.168.0.1", "192.168.0.2"]
port_list = [80, 443, 3389]
# 构造TCP SYN数据包并发送
for ip in target_ips:
for port in port_list:
syn_packet = IP(dst=ip) / TCP(dport=port, flags="S")
result = sr(syn_packet, timeout=5, verbose=False)[0]
# 解析扫描结果
for packet in result:
if packet.haslayer(TCP) and packet[TCP].flags & 2:
print(f"Port {packet[TCP].dport} is open on {ip}")
```
这个代码将扫描`target_ips`中的IP地址列表和`port_list`中的端口列表,并构造TCP SYN数据包发送到目标主机,等待5秒钟后解析扫描结果。如果目标主机响应SYN/ACK数据包,则表示该端口是开放的,输出相应的结果。
阅读全文