【汇总】scapy 函数
前言全局说明 >
一、说明
环境:
Ubuntu 18.04.6 LTS (Linux qt-vm 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux)
python Python 2.7.17 (default, Mar 8 2023, 18:40:28) [GCC 7.5.0] on linux2
python3 Python 3.6.9 (default, Mar 10 2023, 16:46:00) [GCC 8.4.0] on linux
二、函数(方法)
| 排序 | 函数(方法) | 英文说明 | 中文说明 | 示例、备注 |
| A | ||||
| B | ||||
| C | ||||
| command() | 返回可以生成数据包的Scapy命令 | |||
| D | ||||
| decode_payload_as() | 改变payload的decode方式 | |||
| E | ||||
| Ether() | ||||
| F | ||||
| fuzz() | 随机生成sport或dport。构建tcp层没有指定sport或dport时,发包时会自动使用知名端口如20,80 | fuzz(TCP()) | ||
| filter() | 返回一个lambda过滤后的数据包列表 | |||
| G | ||||
| obj.getlayer() | 获取指定层 | ipPacket.getlayer(TCP) | ||
| H | ||||
| hexdump() | 十六进制转储 | hexdump(pkt) | ||
| hexraw() | 返回所以数据包Raw layer的hexdump | |||
| obj.haslayer() | 查看报文有指定的协议层 | ipPacket.haslayer(TCP) | ||
| I | ||||
| IP() | 指定要访问服务器地址 | |||
| ICMP() | 发送ICMP类型报文 | |||
| J | ||||
| K | ||||
| L | ||||
| lsc() | 查看Scapy支持的所有命令 | |||
| ls() | 显示出字段值的列表。分两种情况
|
ls(pkt) | ||
| M | ||||
| make table() | 根据lambda函数来显示表格 | |||
| N | ||||
| nzpadding() | 返回一个具有非零填充的数据包的hexdump | |||
| O | ||||
| P | ||||
| padding() | 返回一个带填充的数据包的hexdump | |||
| pdfdump() | 绘制一个解释说明的PDF | |||
| plot() | 规划一个应用到数据包列表的lambda函数 | |||
| psdump() | 绘制一个解释说明的PostScript图表 | |||
| Q | ||||
| R | ||||
| Raw() | ||||
| RandShort() | 产生一个16位随机整数,范围1~65535,通常用在tcp/udp的sport或dport中。 | int(RandShort()) | ||
| RandNum() | 生成指定范围内的一个随机数 | int(RandNum(3000,4000)) | ||
| rdpcap | 文件中的报文读到列表中,然后对每个报文可以按协议分层访问各层字段 | rdpcap(r'f:\pkt.pcap') | ||
| S | ||||
| send() | 第三层(网络层)发工作,处理路由数据与第二层数据 | |||
| sendp() | 第二层(数据链路层)工作,需要指定正确的接口与数据链路层协议 | |||
| sr() | ||||
| sr1() | sr1()方法是sr()的特殊用法,仅仅返回一个参数,就是所收到的应答的数据包。 srp()方法与srp1()方法是针对二层数据的发送方法 | |||
| str() | 组装数据包 | str(pkt) | ||
| summary() | 一行摘要 | |||
| show() | 显示数据包内容 | |||
| show2() | 显示聚合的数据包(例如,计算好了校验和) | |||
| sprintf() | 用数据包字段填充格式字符串 | |||
| srloop | 循环发送报文 | |||
| T | ||||
| TCP() | ||||
| U | ||||
| UDP() | 发送UDP类型报文 | |||
| V | ||||
| W | ||||
| wrpcap() | 报文写到文件中 | wrpcap(r'f:\pkt.pcap',pkt) | ||
| X | ||||
| Y | ||||
| Z | ||||
三、 自带变量
| 排序 | 变量 | 英文说明 | 中文说明 | 备注 |
| A | ||||
| B | ||||
| C | conf | 查看scapy的配置参数 | print(conf) | |
| D | ||||
| E | ||||
| F | ||||
| G | ||||
| H | ||||
| I | ||||
| G | ||||
| K | ||||
| L | ||||
| M | ||||
| N | ||||
| O | ||||
| P | ||||
| Q | ||||
| R | ||||
| S | scapy | 显示scapy安装路径 | ||
| T | ||||
| U | ||||
| V | ||||
| W | ||||
| X | ||||
| Y | ||||
| Z |

四、 语法:
[] 使用列表,代表可以有多个,用逗号分割。示例:[1, 2, 3, 4, 5] 或 ["www.yahoo.com", "www.altavista.com"]
() 使用元组,代表生成序列。示例:[1, (2,5)] 相当于 [1, 2, 3, 4, 5]
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
---
参考、来源:
使用方法 · Scapy 中文文档 (gitbooks.io)
scapy模块基础使用 - 梦想与现实边缘 - 博客园 (cnblogs.com)
浙公网安备 33010602011771号