目录
6.UDP Flood攻击
原理
由于UDP协议的无状态不可靠的天然特性,UDPFlood拒绝服务攻击的原理非常简单,即通过向目标主机和网络发送大量的UDP数据包,造成目标主机显著的计算负载提升,或者目标网络的网络拥塞,从而使得目标主机和网络陷入不可用的状态,造成拒绝服务攻击。
环境
靶机:centos 192.168.0.120
攻击机:kali 192.168.0.118
步骤
Kali向centos7发起udp flood攻击,并使用tcpdump进行分析
1.Centos开启对udp 22端口的监听
tcpdump -i ens33 udp port 22
2.kali向centos的22端口发起udp flood攻击
hping3 --udp -p 22 192.168.0.120
3.此时centos监听到大量udp包
4.攻击进一步升级,使用工具自带的随机源地址参数进行源地址欺骗udp flood攻击:
hping3 --udp -p 22 192.168.0.120 --flood --rand-source
5.Centos监听22端口,发现大量机ip地址的udp流量
tcpdump -i ens33 udp port 22
7.DNS欺骗攻击与防御
原理
DNS(DomainNameSystem,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用记住IP地址。DNS协议运行在UDP协议之上,使用端口号53,DNS并不包含任何认证机制,因此第三方可以对DNS数据包进行伪造。
环境
靶机:ubuntu 192.168.0.122
攻击机:kali 192.168.0.118
步骤
Kali利用ettercap对centos7进行dns欺骗攻击并观察结果,然后尝试静态绑定IP/DNS后再观察结果。
1.在kali中编辑ettercap的配置文件,将所有.com的域名都解析到kali的ip:
vim /etc/ettercap/etter.dns
2.然后kali开启apache服务
/etc/init.d/apache2 start
Ubuntu上能正常访问
然后在ubuntu上访问百度,也是正常的
2.下面在kali上启动ettercap工具利用arp中间人攻击实现dns欺骗
ettercap -G
点击勾勾启动
然后选择arp欺骗中间人攻击
选择ok
启用dns_spoof插件
然后再在ubuntu里面输入www.baidu.com,就会进入kali开启的网页
额,这里不知道哪一步出错了,还是百度原网页
如果配置都正确的话,输入百度应该出现的是这个页面
使用nalookup查看,发现dns解析失败,没有解析到kali上去
nslookup www.baidu.com
等会就解决这个问题
8.TCP会话劫持攻击
原理
TCP会话劫持目标是劫持通信双方已建立的TCP会话连接,假冒其中一方(通常是客户端)的身份,与另一方进行进一步通信。
环境
靶机:ubuntu 192.168.0.122
靶机:centos 192.168.0.120
攻击机:kali 192.168.0.118
步骤
Kali通过ARP欺骗成为中间人,从而通过截获TCP数据包,对centos和ubuntu之间的TCP会话进行劫持。
1.在kali中设置ip路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward
2.在kali中打开ettercap的图形界面
ettercap -G
3.将ubuntu和centos分别设置为target1和target2
4.选择arp poisoning,然后ok
出现这玩意就对了
5.然后进入view
选择第一个
到这里,kali先告一段落
6.分别在两个靶机里查看arp缓存
发现arp欺骗已经进行
7.然后ubuntu远程访问centos
Ssh root@192.168.0.120
kali里面监听数据
因为ssh是加密传输,所以这是密文
9.HTTP慢速攻击
原理
HTTP慢速攻击也叫slow http attack,是一种DoS攻击的方式。由于HTTP请求底层使用TCP网络连接进行会话,因此如果中间件对会话超时时间设置不合理,并且HTTP在发送请求的时候采用慢速发HTTP请求,就会导致占用一个HTTP连接会话。如果发送大量慢速的HTTP包就会导致拒绝服务攻击DoS。
这种攻击一共有三种模式
1.Slow headers(也称slowloris):Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部,Web服务器再没接收到2个连续的\r\n时,会认为客户端没有发送完头部,而持续的等等客户端发送数据,消耗服务器的连接和内存资源。
2.Slow body(也称Slow HTTP POST):攻击者发送一个HTTP POST请求,该请求的Content-Length头部值很大,使得Web服务器或代理认为客户端要发送很大的数据。服务器会保持连接准备接收数据,但攻击客户端每次只发送很少量的数据,使该连接一直保持存活,消耗服务器的连接和内存资源。
3.Slow read(也称Slow Read attack):客户端与服务器建立连接并发送了一个HTTP请求,客户端发送完整的请求给服务器端,然后一直保持这个连接,以很低的速度读取Response,比如很长一段时间客户端不读取任何数据,通过发送Zero Window到服务器,让服务器误以为客户端很忙,直到连接快超时前才读取一个字节,以消耗服务器的连接和内存资源。
环境
首先,安装slowhttptest
apt-get install slowhttptest
slowloris模式
slowhttptest -c 1000 -H -i 10 -r 200 -t GET -u https://www.baidu.com/ -x 24 -p 3
Slow Body攻击
slowhttptest -c 1000 -B -g -o my_body_stats -i 110 -r 200 -s 8192 -t FAKEVERB -u https://www.baidu.com -x 10 -p 3
Slow Read模式
slowhttptest -c 1000 -X -r 1000 -w 10 -y 20 -n 5 -z 32 -u https://www.baidu.com -p 5 -l 350