Scapy功能介绍以及DoS模拟
介绍
- 首先给出官网。
Scapy
是用Python
编写的交互式数据包处理工具。- 使用
Scapy
可以伪造或解码各种协议的数据包,在线发送它们,捕获它们,匹配请求和答复等等。
下载
- 由于是
Python
编写的,使用pip install
进行安装,这里使用清华源加速。
- 直接使用
scapy
命令打开,若显示无法导入相关库,则对其中缺失的相关包进行安装。
使用
包配置
- 使用
TCP/IP
协议构造基本数据包,这里调用了Scapy
的内置函数IP()
和TCP()
。
注意:
IP()
一定在TCP()
之前。
IP()
参数解析
参数 | 含义 | 默认值 |
---|---|---|
version | 版本 | 4 |
ihl | 报头长度 | None |
tos | 服务类型 | 0x0 |
len | 报文总长度 | None |
id | 标识符 | 1 |
flags | 标记 | NULL |
frag | 段偏移 | 0 |
ttl | 生存周期 | 64 |
proto | 协议 | tcp |
chksum | 校验和 | None |
src | 源IP 地址 |
127.0.0.1 |
dst | 目的IP 地址 |
127.0.0.1 |
TCP()
参数解析
参数 | 含义 | 默认值 |
---|---|---|
sport | 源端口 | ftp_data |
dport | 目的端口 | http |
seq | 序号 | 0 |
ack | 确认号 | 0 |
dataofs | 数据偏移 | None |
reserved | 保留位 | 0 |
flags | 控制功能 | S |
window | 窗口大小 | 8192 |
chksum | 校验和 | None |
urgptr | 紧急指针 | 0 |
options | 选项 | [] |
- 根据需求设置数据包之后,使用
{PKT_NAME}.show()
可以查看报文信息。
包发送
- 使用
send()
函数发送数据包,该函数不返回响应。
sendp()
等加了p
的函数作用于第二层,发送的是帧。
sr()
和sr1()
发送数据包并接收响应。
sr()
和sr1()
的区别在于,sr1()
只有一个返回值(Results
)。
Ping DoS
- 使用
Ping
进行DoS
攻击时,由于Ping
使用的是ICMP
协议,下面给出ICMP()
的参数解析。
ICMP()
参数解析
参数 | 含义 | 默认值 |
---|---|---|
type | 消息类型 | echo-request |
code | 代码 | 0 |
chksum | 校验和 | None |
id | 标识 | 0x0 |
seq | 序号 | 0x0 |
Ping
攻击报文的设置比较简单,通过随机配置ICMP()
也能实现Ping DoS
的攻击效果。- 结合
IP()
设置目标主机IP
。
- 在这基础上,要想达到效果,我们需要增加攻击报文的量。
- 通过循环重复攻击之外,我们采用多进程并发的方式增大攻击频率。
SYN_Flood
- 多进程和重复次数的性质和
Ping DoS
一致,这里主要的区别在于把ICMP
协议换成了TCP
协议。
- 其中
flags
变量表示了TCP
三次握手的不同状态,S
表示SYN
。
__EOF__

本文作者:ch3uhx9
本文链接:https://www.cnblogs.com/cheuhxg/p/14534922.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/cheuhxg/p/14534922.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix