Scapy文档翻译
2022-06-29 18:22:36 # 翻译

Scapy官方文档目录

目录

1. 简介

1.1 关于Scapy

1.2 什么让Scapy如此特别

1.2.1 快速封包设计
1.2.2 Probe once, interpret many
1.2.3 Scapy decodes, it does not interpret

1.3 入门小案例

1.3.1默认值说明

1.4 学习Python

2. 下载和安装

2.1 概述

2.2 Scapy版本说明

2.3 安装Scapy v2.x

2.3.1 最新版本
2.3.2 当前的开发版本

2.4 可选依赖

2.5 各平台安装说明

2.5.1 Linux本地安装
2.5.2 Debian/Ubuntu/Fedora
2.5.3 Mac X OS
2.5.4 OpenBSD
2.5.5 SunOS/Solaris
2.5.6 Windows

2.6 制作离线文档

2.6.1 HTML版本
2.6.2 UML简图

3. 入门使用

3.1 开始使用Scapy

3.1.1 自定义终端

3.2 交互式教程

3.2.1 构造包并且进行设置
3.2.2 像栈一样构造协议层
3.2.3 读取PCAP文件
3.2.4 图形转存(PDF、PS)
3.2.5 构造数据包
3.2.6 发包
3.2.7 构造模糊包(随机化)
3.2.8 字节注入
3.2.9 发包和收包(sr)
3.2.10 SYN扫描
3.2.11 TCP 路由追踪traceroute (1)
3.2.12 配置特别的socket
3.2.13 嗅探
3.2.14 异步嗅探
3.2.15 嗅探进阶 - session
3.2.16 过滤器 filters
3.2.17 循环发包收包(srloop)
3.2.18 导入和导出网络数据
3.2.19 格式化输出(make_table)
3.2.20 路由
3.2.21 Matplotlib制图
3.2.22 TCP 路由追踪traceroute(2 可制作各类追踪图)
3.2.23 无线帧注入

3.3 一行代码实现各类功能

3.3.1 ACK 扫描
3.3.2 Xmas 扫描
3.3.3 IP 扫描
3.3.4 ARP Ping
3.3.5 ICMP Ping
3.3.6 TCP Ping
3.3.7 UDP Ping
3.3.8 向DNS查询的Request
3.3.9 复刻经典攻击
3.3.10 ARP投毒
3.3.11 TCP端口扫描
3.3.12 IKE扫描
3.3.13 进阶版路由追踪(traceroute)
3.3.14 Ether leaking
3.3.15 ICMP leaking
3.3.16 VLAN跳跃攻击
3.3.17 无线嗅探

3.4 配合使用

3.4.1 简化ARP监听
3.4.2 识别局域网内恶意DHCP服务
3.4.3 防火墙
3.4.4 TCP时间戳过滤
3.4.5 利用Wireshark查看数据包
3.4.6 Scapy性能
3.4.7 操作系统指纹识别

4. 进阶用法

4.1 ASN.1 和 SNMP

4.1.1 什么是ASN.1
4.1.2 ASN.1和Scapy
4.1.3 一个完整的SNMP实例
4.1.4 通过MIB解析OID

4.2 自动化

4.2.1 第一个例子
4.2.2 改变状态
4.2.3 实例
4.2.4 详细说明

4.3 Pipetools

4.3.1 实例:向WireShark 匿名嗅探
4.3.2 类的类型
4.3.3 链接对象
4.3.4 PipeEngine 类
4.3.5 Scapy中高阶Pipetool对象
4.3.6 触发

5. Scapy路由

5.1 系统网络接口列表

5.2 IPV4 路由

5.3 IPV6 路由

5.4 获取路由地址

5.5 获取本地接口的IP地址

5.6 获取本地接口的MAC地址

5.7 通过IP地址获取MAC地址

6. 构造属于你自己的工具

6.1 在你的工具中使用Scapy

6.1.1 配置Scapy输出日志
6.1.2 更多的例子

6.2 开发额外组件扩展Scapy

7. 构造新协议

7.1 简单实例

7.2 协议层(Layers)

7.2.1 构造一个新的layer
7.2.2 操作数据包本质即使操作其字段
7.2.3 可变长度

7.3 深入分析

7.3.1 基础
7.3.2 解析字段
7.3.3 bind层
7.3.4 背后机理: 放一起

7.4 构造

7.4.1 基础
7.4.2 构造字段
7.4.3 处理默认值: post_build
7.4.4 处理默认值: automatic computation

7.5 字段

7.5.1 简单的数据类型
7.5.2 enum类型
7.5.3 Strings类型
7.5.4 列表和长度
7.5.5 一些特殊类型
7.5.6 TCP/IP
7.5.7 802.11
7.5.8 DNS
7.5.9 ASN.1
7.5.10 其他一些协议

7.6 设计模式

7.6.1 字段命名约定
7.6.2 向Scapy中添加新协议

8. 调用Scapy函数

8.1 UDP校验

9. 网络协议层

9.1 自动化特新文档

9.1.1 概述
9.1.2 技术背景
9.1.3 协议层 Layers

9.2 蓝牙bluetooth协议

9.2.1 什么是蓝牙(bluetooth)?
9.2.2 第一步(后改)
9.2.3 低功耗蓝牙(BLE)
9.2.4 Apple/iBeacon 广播帧

9.3 HTTP协议

9.3.1 HTTP/1.X
9.3.2 HTTP/2.X

9.4 Netflow协议

9.4.1 Netflow V1
9.4.2 Netflow V5
9.4.3 NetflowV9/ IPfix

9.5 NTLM协议

9.5.1 简单实例

9.6 PROFCINET IO RTC协议

9.6.1 RTC 数据包
9.6.2 RTC 包

9.7 SCTP协议

9.7.1 具备动态寻址配置和区块身份验证功能

9.8 TCP协议

9.8.1 使用内核的TCP栈
9.8.2 Scapy的快速实例化TCP客户端
9.8.3 使用外部项目

9.9 TUN/TAP 接口协议

9.9.1 需求
9.9.2 利用Scapy使用TUN/TAP
9.9.3 TunTapInterface 引用

10. 故障排除(通过Scapy进行网络故障分别)

10.1.1常见问题

10.1.1 我无法在监听模式(monitor mode)下 嗅探(sniff)/注入(inject) 包.
10.1.2 我的TCP连接被Scapy或内核重置了.
10.1.3 我无法Ping通127.0.0.1(或 ::1). Scapy在环路接口(loopback)下,在127.0.0.1(或 ::1)无法正常工作.
10.1.5 traceroute() 不工作.
10.1.6 图表不合适/字体不正常/图片不完整/

10.2 获取帮助

11. 参与Scapy开发

11.1 Scapy项目组织

11.2 如何为Scapy及社区做贡献

11.3 改善文档

11.3.1 添加文档
11.3.2 文档

11.4 使用UTScapy进行测试

11.4.1 什么是UTScapy
11.4.2 测试时的语法
11.4.3 使用tox去测试Scapy
11.4.4 增加VIM对.uts文件的语法高亮

11.5 发布Scapy

编辑

Python模块索引

索引