TCP/IP攻击方式

admin5个月前笔记40

曾经,黑客对著名代码托管平台GitHub发动攻击,GitHub和旗下很多子站点均被提示有信息安全问题,大批访问用户被挡在网站之外。这样的例子还有很多,14年微软账号系统被入侵事件,16年美国网络瘫痪事件等等等等。今天,我们一起来看看TCP/IP常见的3种攻击手段。

SYN Flood

要建立一个TCP连接,需要经过三次握手,过程如下:

  1. (1) 客户端向服务器发送SYN包,并进入SYN_SENT状态,等待服务器确认;

  1. (2) 服务器收到SYN包并进行确认,同时向客户端发送SYN包,即SYN+ACK包。此时服务器进入SYN_RECV状态。

  1. (3) 客户端收到服务器的SYN+ACK包后,向服务器发送确认包ACK,发送完毕后,TCP连接成功,完成三次握手。

image.png

为了保证三次握手TCP连接的顺利建立,TCP协议在三次握手过程中,设置了一些异常处理机制。第三步客户端发送确认包ACK后,如果服务器没有收到,会一直处于第二步的SYN_RECV状态,并将客户端IP加入等待列表,重发SYN+ACK报文试图重试。重发一般会进行3-5次,大约30秒左右轮询一次等待列表重试所有客户端。

SYN_RECV状态如果一直存在,超过了服务器承受上限后,新的SYN报文将不再被接收,也就会拒绝新的TCP连接的建立。

SYN Flood正是利用了这一设定来攻击目标,攻击者伪装大量的IP地址给服务器发送SYN报文,由于IP地址不存在,客户端不会给服务器发送最终确认包ACK,使服务器要维持一个庞大的 等待列表,不断重试发送SYN+ACK报文,SYN_RECV队列被占满后,服务器也就彻底崩溃了。

image.png

怎么防SYN Flood呢?最简单的方法是使用DDoS云清洗。DDoS不仅能清洗SYN Flood攻击,对其他类型的DDoS攻击也有效,例如UDP Flood、CC等。

CDN也有缓解这类攻击的作用,前提是攻击量没有达到CDN最大承受能力,否则就会直接穿透到达源站,很快源站也会失守,彻底沦陷。如果网站/APP经常遭受DDoS攻击,最好使用DDoS云清洗。

IP欺骗

我们知道,IP是识别身份的重要信息,所以它自然也成了黑客们极力想利用的对象。

image.png

假设一个用户,已经和服务器建立正常的TCP连接,攻击者会通过构造TCP数据,将自己的IP伪装为与这名用户相同的IP,并向服务器发送一个带有RSI位的TCP数据段。

服务器收到这一数据后,会认为从用户发送的连接有错误,将清空缓冲区中建立好的连接。这样一来,这名用户再发送数据时,服务器已经没有连接,无法响应,用户必须从新建立连接。黑客会伪造大量的IP地址,向目标发送RST数据,使服务器无法对正常用户服务,这就是IP欺骗攻击。

TCP重置攻击

TCP连接有一个特别的设定,如果客户端发现到达的报文段,对于相关连接而言是不正确的,TCP会发送一个重置报文段断开连接,防止连接被用来进一步交换信息。

攻击者正是利用了这一机制,通过向通信的一方或者双方发送伪造的重置报文段,让通信方提前关闭TCP连接。虽然服务器仍然可以创建一个新的TCP连接恢复通信,但还是很可能会被攻击者重置。

TCP重置攻击有两种。一种是攻击者截获了通信双方的交换信息,读取数据包上的序列号和确认应答号后,得出伪装的TCP重置报文段的序列号。

另一种是攻击者无法截取交换信息,无法确定重置报文段的序列号,但通过批量发出不同序列号的重置报文,盲猜序列号,一旦猜中,攻击目的便达成了。


相关文章

教你如何让页面与 iframe 进行通信

引言这篇文章介绍如何实现页面与 iframe 进行通信,实际工作中可能很难遇到,但一旦遇到了,我们要能够立即想到怎样去实现。iframe 向父级页面发送消息在 iframe 页面,使用 window....

2023最新V2Ray搭建图文教程,V2Ray一键搭建脚本

2023最新V2Ray搭建图文教程,V2Ray一键搭建脚本

V2Ray 搭建教程一键搭建 V2Ray,小白福利一条命令搞定 V2Ray 搭建,最详细的 V2Ray 图文教程!前言此教程面向小白萌新,从创建 VPS 到使用 SSH 登录并安装和配置 V2Ray,...

HSTS详解原理及配置从HTTP到HTTPS再到HSTS

HSTS详解原理及配置从HTTP到HTTPS再到HSTS

HTTPS大家并不陌生,可以理解为更加安全HTTP,然而网站通过HTTPS提供服务也不是安全的,这时候HSTS出现了。HSTS背景之HTTPS并不那么安全最初网站是通过HTTP协议提供服务,安全起见,...

mysql/mariadb:数据库用户管理语句

mysql/mariadb:数据库用户管理语句

在了解mysql的用户管理语句之前,先来了解一下mysql的用户账号格式,如下:username@host上述格式表示,username对应的用户能够通过哪个host登录mysql。host:此mys...

Composer简明教程

Composer简明教程</>复制代码 Composer是PHP的一个依赖管理工具。  使用和安装Composer,请确保已正确安装PHP(版本5.3.2+),并且设置了PHP的...

PPTP、L2TP、SSR、V2Ray、HTTP分别是什么有什么区别

PPTP、L2TP、SSR、V2Ray、HTTP分别是什么有什么区别

之前用过V2rayN,今天发现PPTP有些不明白的问题特来记录下相关的资料,PPTP和L2TP各是一种协议;网络上做这个代理的都有配套的的有手机端和PC端软件,好像是专门供给挂机和游戏用的;分别有静态...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。