数据链路层--ARP欺骗
ARP欺骗原理
XP2要与XP3通信,要发送ARP请求,询问XP3的MAC地址
kali冒充XP3持续给XP2发送ARP应答,XP2会以为收到的MAC地址是XP3的,实际是kali的
之后XP2发送的数据都是发给kali的
如果说XP2需要想要访问互联网,首先要发送ARP到网关,网关回应自己的MAC地址,XP2发出的数据包网关才会接收转发,当XP2发送的ARP请求被kali回应一个ARP应答,XP2记录的就是kali的MAC地址,将数据包发给kali,kali再将数据包转发给网关,但是,如果只欺骗XP2,网关回应时查IP也是直接发给XP2,那XP2查看数据包,网关MAC不一样,就不会收,所以,不能只对终端欺骗,需要对网关也进行欺骗,把终端的MAC地址也改成kali的,再把ARP请求发给网关,这样网关回应的先发给kali,kali再发给终端,终端就会接收
ARP报文是不会被防火墙拦截的,只能通过DHCP snooping解决
攻击过程
查看主机的ARP表
利用kali中的Ettercap工具进行攻击
先确定扫描的网卡
先进行扫描主机
将要进行攻击的主机添加到目标中
要让主机能够上网还需要选择ARP毒化
攻击完后,主机ARP表网关MAC地址变成了kali的
Kali开启端口侦听(driftnet -i eth0)
数据链路层--MAC洪泛攻击
攻击原理:将交换机的MAC地址表填满,让后续收到的数据包都广播发出去,这样攻击者就能收到数据包
正常时交换机的MAC地址表:
在kali上输入macof一直发送数据
查看攻击后交换机的mac表
网络层--ICMP攻击
ICMP包有操作系统直接处理,可以通过发送畸形数据包,让操作系统处理,崩溃
利用hping3工具攻击
hping3 -a 192.168.100.200--icmp --flood 192.168.160.142
抓包分析:
网络层攻击--TCP SYN Flood攻击
SYN报文是TCP连接的第一个报文,攻击者通过大量发送SYN报文,造成大量未完 全建立的TCP连接,占用被攻击者的资源。----拒绝服务攻击
利用hping3工具攻击
hping3 -c 50000 -d 120 -S -w 64 -p 135 --flood 192.168.160.142
-c 50000
-c
是--count
的缩写,用于指定发送的数据包总数量。这里表示总共发送 50000 个数据包。-d 120
-d
是--data
的缩写,用于指定每个数据包中 “数据部分” 的大小(单位:字节)。这里表示每个数据包的数据部分为 120 字节(不包含 IP 头部、TCP 头部等协议开销)。-S
-S
是--syn
的缩写,用于设置 TCP 数据包的 SYN 标志位。在 TCP 三次握手中,SYN 包是发起连接的第一个包(用于请求建立连接)。发送大量 SYN 包是 “SYN 洪水攻击” 的典型特征(目标服务器会为每个 SYN 包分配资源等待后续握手,资源耗尽后无法响应正常请求)。-w 64
-w
是--win
的缩写,用于设置 TCP 头部中的 窗口大小(Window Size) 字段,单位为字节。这里表示窗口大小为 64 字节(窗口大小用于告知对方自己的接收缓冲区大小,影响数据传输效率)。-p 135
-p
是--destport
的缩写,用于指定目标主机的 端口号。这里表示数据包将发送到目标主机的 135 端口(135 端口是微软 RPC 服务的默认端口,常用于远程过程调用,也是网络攻击中较常见的目标端口)。--flood
该参数启用 “洪水模式”,表示数据包将以 尽可能快的速度发送(不限制发送速率),此时 hping3 会忽略回复包,仅专注于高速发送。这种模式会产生大量网络流量,可能导致目标主机或网络带宽被耗尽。
应用层攻击--DNS欺骗
攻击原理:
可以先用ARP欺骗,将主机骗到攻击者这里来,所有上网数据都往攻击者发,攻击者将DNS的报文独立解析出来,利用自己设置的作为应答
先修改kali的配置文件:vim /ett/etteracp/etter.dns
在kali中开启一个网页服务:
cd /etc/init.d
./apache2 start
开启完成后,进行ARP欺骗
需要勾选上dns_spoof,这个插件的作用是先将dns报文解析出来,解析完发出去
选完插件后,进行ARP欺骗
查看ARP表
浏览器搜索:baidu.com,解析成我们设置的网页界面,则欺骗成功
访问其他网站是正常的