TCP/IP--黑客想要通过TCP攻击,会如何攻击,应该怎么应对。

news/2024/11/25 5:55:53/

黑客想要通过TCP攻击,会如何攻击,应该怎么应对。

SYN Flood 攻击时DDOS攻击一种,洪水泛滥。黑客发送大量的SYN请求到目标服务器,但是不完成三次握手和四次挥手的过程,不发送ACK响应,服务器收到SYN请求后,尝试为每一个请求分配资源并且连接扽会带状态,直到超时。由于无法完成,服务器的连接队列被耗尽,导致合理的请求无法处理,从而导致拒绝服务。

攻击者向服务器发送大量的SYN数据包,伪造ip源。

服务器为每一个SYN请求分配一个资源并等待ACK响应,

由于源ip是伪造的,服务器无法收到ACK响应,连接无法建立,资源持续占用,造成服务器资源耗尽。

解决:

使用防火墙或流量清洗设备:使用防火墙过滤掉来自不可信 IP 地址的流量,或者使用专业的 DDoS 防护设备(如 Cloudflare 等)来清洗流量。

增加半连接队列大小:增加服务器的 SYN backlog(半连接队列大小),使其能够处理更多的连接请求。 (本质是建立了半连接)

TTL(Time-To-Live)限制:防止伪造的 IP 地址重复进行攻击。

通过限制 TTL,可以检测到不符合正常 TTL 范围的数据包。一个正常的数据包从源到目的地应该经历一定数量的路由器(跳数)。**如果攻击者通过伪造 IP 地址发送数据包,TTL 值通常会不符合预期。 **


SYN Cookies:启用 SYN Cookies 技术,这是一种基于加密的防御机制,它可以防止服务器为未完成的连接分配资源。当收到 SYN 请求时,服务器不会立即分配资源,而是生成一个加密的响应序列号,并将其返回给客户端。如果客户端能成功响应并带有正确的序列号,则才会分配资源

建立RST请求 重置数据包,关闭现在的连接

TCP连接劫持,获取双非的TCP序列号,窃取铭感信息。序列号随机或者TLS/SSL加密,确保数据是加密的,避免中间人攻击。


http://www.ppmy.cn/news/1549742.html

相关文章

《探索 C++:一门强大且多功能的编程语言》

《探索 C:一门强大且多功能的编程语言》 在编程的广阔世界里,C 无疑是一颗璀璨的明星,它以其高性能、丰富的特性和广泛的应用领域,吸引着无数开发者投身其中。今天,就让我们一同深入探索一下这门令人着迷的编程语言吧。…

设计模式-创建型-抽象工厂模式

1.概念 工厂方法模式只能生产一个产品系列,抽象工厂可以生产多个产品系列 2.作用 多个具体产品组成一个产品族(产品系列),一个具体工厂负责生产一个产品族 3.应用场景 系统所需产品间由依赖关系,可以划分为同一产…

PostgreSQL中的内存上下文管理

在数据库的世界里,内存管理是性能优化的关键。PostgreSQL,作为一个高级的开源对象关系数据库系统,拥有一套精细的内存上下文管理系统,它不仅提高了数据库的性能,还增强了系统的稳定性。本文将深入探讨PostgreSQL中的内…

C++ 中的类型别名和 using 声明及其如何使用。

类型别名 类型别名允许为已存在的类型创建一个新的名称,这在处理复杂的类型表达式时特别有用,可以使代码更清晰、更易于理解。类型别名的定义可以通过两种方式实现: 使用typedef关键字‌: typedef int Integer; Integer a 10; /…

Python 3 和 JSON 数据格式

Python 3 和 JSON 数据格式 Python 3 是一种广泛使用的编程语言,以其简洁明了的语法和强大的功能而闻名。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Python 3 提供了内置的 json 模块,使得在 Python 程序…

伪数组和真数组

文章目录 伪数组伪数组和真数组的区别将伪数组转换为真数组的方法法一:Array.prototype.slice.call(数据)法二:使用ES6的Array.from 方法 伪数组 1.拥有length属性,其他属性(索引)为非负整数(对象中的索引…

手写一个深拷贝工具

背景 在面向对象编程中,对象之间的复制是一个常见的需求。对象的复制通常分为浅拷贝(Shallow Copy)和深拷贝(Deep Copy)两种方式。浅拷贝只复制对象的基本数据类型和引用类型的数据地址,而深拷贝则会递归地…

隐性知识:定义、重要性、益处及最佳实践

当你的团队为即将到来的产品更新或客户挑战集思广益时,很多想法往往只停留在讨论桌上,而无法传达到研发团队。然而,我们必须认识到,研发团队并非智慧的唯一源泉。你的组织内部有未被颂扬的英雄,尽管他们拥有丰富的实战…