我是靠谱客的博主 称心大山,这篇文章主要介绍Python Scapy工具-sniff函数,现在分享给大家,希望可以做个参考。

Scapy 是适用于 Python 的一个快速、高层次的屏幕抓取和 web 抓取框架,用于抓取 web站点并从页面中提取结构化的数据。
Scapy可以轻松地处理扫描(Scanning)、路由跟踪(Tracerouting)、探测(Probing)、单元测试(Unit Tests)、攻击(Attacks)和发现网络(Network Discorvery)之类的传统任务。

Scapy的安装如下:
通过cmd命令:pip install scapy 进行安装
注意:运行前要确定是否已安装Npcap或WinPcap,否则运行会出现如下报错:

复制代码
1
2
Warning:No libpcap provider available ! pcap won't be used

sniff函数及其参数如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
sniff(count=0, store=1, offline=None, prn=None, filter=None, L2socket=None, timeout=None, opened_socket=None, stop_filter=None, iface=None)

其中,各参数的含义为:

复制代码
1
2
3
4
5
6
7
8
9
10
11
count:指定最多嗅探多少个符合要求的报文,设置为0时则一直捕获 store:指定保存抓取的数据包或者丢弃,1为保存,0为丢弃 offline:从pcap文件中读取数据包,而不进行嗅探,默认为None prn:为每个数据包定义一个回调函数,回调函数会在捕获到符合 filter 的报文时被调用,通常使用 lambda 表达式来编写 filter:用来筛选抓取的信息,其用法与常见抓包软件WireShark 等相同,遵循 BPF 语法 L2socket:使用给定的L2socket timeout:在给定的事件后停止嗅探,默认为None opened_socket:对指定的对象使用.recv进行读取 stop_filter:定义一个函数,决定在抓到指定的数据之后停止 iface:指定抓包的网卡,不指定则代表所有网卡
  1. filter参数
    其语法具体可参考:https://blog.csdn.net/qwertyupoiuytr/article/details/54670477

  2. iface参数
    获取该参数的方法:
    1)通过cmd中输入 ipconfig /all获取对应网卡的描述

    2)通过show_interfaces()函数进行查询
    代码为:

复制代码
1
2
3
4
5
import scapy from scapy.all import * #显示网卡信息 show_interfaces()

结果如图所示:

最后

以上就是称心大山最近收集整理的关于Python Scapy工具-sniff函数的全部内容,更多相关Python内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部