Scapy——捕获网络流量(本机Win+虚拟机Ubuntu)
1、简介
- Scapy 是一个强大的 Python 程序库,用于网络数据包处理、生成和嗅探。它提供了对网络层和传输层的深入控制,允许用户创建、修改、发送和接收数据包。
- 主要功能:
- 数据包生成:
- 可以轻松生成各种类型的网络数据包,包括以太网帧、IP 数据包、TCP/UDP 数据包等。
- 支持多种协议栈组合,用户可以自定义数据包的各个字段。
- 数据包嗅探:
- 能够捕获网络上的实时数据包,支持各种过滤条件。
- 捕获的数据包可以被进一步处理和分析。
- 数据包操作:
- 数据包的分解和解析,可以详细查看每一层协议的字段值。
- 可以修改捕获到的数据包并重新发送。
- 网络攻击和测试:
- 可用于模拟和执行各种网络攻击,如ARP欺骗、DoS攻击等。
- 适用于渗透测试和安全研究。
2、步骤
- 前提:在VM虚拟机(Ubuntu)上运行FTP服务器,使用本机(Win)连接该服务器,并发送命令。在本机使用Scapy库捕获通信流量。
- 安装Scapy库。
- 编写程序捕获流量。
from scapy.all import *
# 定义一个回调函数来处理捕获到的数据包
def packet_callback(packet):
print("Packet captured:")
packet.show()
# 将捕获的数据包追加到 packets 列表中
packets.append(packet)
# 指定接口
interface = "VMware Network Adapter VMnet8" # 替换为你的实际接口名称
# 创建一个空列表来存储捕获的数据包
packets = []
# 开始嗅探并捕获数据包
sniff(iface=interface, filter="ftp", prn=packet_callback, store=0)
# 将捕获的数据包保存到文件
wrpcap('captured_packets.pcap', packets)
- 由于主机和虚拟机之间使用NAT网络,需要监听VMware Network Adapter VMnet8上的网络流量。
- 运行FTP服务器。参考:FTP协议——LightFTP安装(Linux)-CSDN博客
- 运行监听程序。
- 本机打开终端,连接FTP服务器。指定虚拟机的ip地址。(在虚拟机中查看)
- 连接后执行操作,ctrl+c终止监听,获得pcap文件。
原文地址:https://blog.csdn.net/weixin_45100742/article/details/139627079
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:https://www.suanlizi.com/kf/1801012618471804928.html
如若内容造成侵权/违法违规/事实不符,请联系《酸梨子》网邮箱:1419361763@qq.com进行投诉反馈,一经查实,立即删除!