ARP攻击

 

1.ARP协议原理讲解

什么是ARP

ARP就是地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议

工作原理

ARP协议规定,每台计算机都需要一个ARP表,用来保存IP和MAC地址的映射关系

当访问IP地址的时候就去查ARP表,从而找到对应的MAC地址

如果ARP表匹配不到,就会使用广播的方式发送一个ARP请求,目标主机收到请求后会使用单播的方式返回一个ARP响应,告知自己的MAC地址

请求的主机拿到MAC地址后,会将映射关系缓存到ARP表,而后传递到数据链路层进行协议转化

ARP协议的作用

网络中的数据传输所依赖的时MAC地址而不是IP地址,ARP协议负责将IP地址转化为MAC地址

ARP协议的主要工作就是建立,查询,更新,删除ARP表项

查询ARP表

arp -a

删除arp表

arp -d IP

抓取某块网卡的所有arp请求

tcpdump -i eth0 -nn arp

抓取指定IP的请求

tcpdump -i eth0 -nn arp and host IP

ARP特性

无需人为干涉,一直进行轮询和应答

就是因为无需人为干涉,才出现了漏洞

2.ARP断网攻击

演示前的准备:

攻击机:kali

靶机:win10

网关

两台主机需要同在一个局域网,并且网络通畅(判断:ping一下,能返回就是通的)

计算机上网过程

主机(只有内网)发送数据包给路由

路由有两个IP地址,一个内网,一个外网,内网的接收数据包,再由外网的去请求服务器,拿到数据包后,根据内网IP返回给主机

ARP断网攻击原理

1.攻击机不断的向目标主机发送ARP报文,告诉目标主机网关的MAC地址发生了变化(变成了攻击机的)

由于ARP的特性(无需人为干涉),此时目标主机中记录网关的MAC地址就更新为攻击机的

2.目标主机想要访问网络发送数据包时,就会将数据包发送到攻击机

3.此时,攻击机只需要做一个丢弃数据包的命令就可以断掉目标主机的网络

ARP断网攻击的实现

工具:arpspoof(kali自带)

命令使用讲解

arpspoof [-i interface] [-c own|host|both] [-t target] [-r host]

-i 指定网卡

-c 攻击机目标

-t 目标机器的IP

-r 网关IP

具体攻击步骤

查看kali的ip

查看靶机ip

kali发起攻击:arpspoof -i eth0(网卡) -r 192.168.241.2(网关) -t 192.168.241.129(靶机)

攻击手段:

kali告诉靶机,网关的MAC地址是自己的

kali告诉网关,靶机的MAC地址是自己的

3.ARP流量攻击

准备阶段:

靶机,kali(需要开启数据包转发)

kali开启数据包转发:

概述:出于安全考虑,linux系统默认是静止数据包转发的

所谓转发即当主机拥有多于一块网卡时,其中一块收到数据包,更具数据包的目的IP地址将数据包发往本机的另一块网卡,该网卡根据路由表继续发送数据包(这通常是路由器所要实现的功能,我们需要手动开启转发功能)

如何开启:

查看是否开启端口转发

cat /proc/sys/net/ipv4/ip_forward 查看是否开启端口转发

echo 1>> /proc/sys/net/ipv4/ip_forward 开启端口转发

攻击实现

工具介绍:dsniff

dsniff是基于Unix系统网络嗅探工具,工具中包含两个我们需要的工具包:arpspoof,urlsnarf

安装:apt-get install dsniff

urlsnarf介绍

urlsnarf [-n] [-i interface | -p pcapfile] [[-v] patter [expression]]

-n 表示不反查主机名

-i interface 网卡接口名

-p pattern 表示对过滤的内容使用正则表达式

-v 表示取反,即不匹配

expression是过滤语法,和tcpdump相同

url流量分析

概念:url流量嗅探操作类似于中间人攻击,通过目标主机将路由流量注入到因特网

url嗅探能够实时跟踪点啊弄中的数据流量信息,并且分析出他的类型和去向

简单点说就是:你上网是将数据包发给我电脑,再由我电脑转发给路由,那么我拿到你的数据包并对其进行分析是非常合理的

攻击的实现

arpspoof -i -r -t

urlsnarf -i eth0

当靶机上网的时候,数据包就被我们截获了

4.WireShark分析用户数据

当我们截获用户数据包后,用WireShark来过滤数据包,起到辅助的作用

启动

在kali终端输入WireShark即可

1.过滤源ip,目的ip

查找目的地为192.168.241.11的包 ip.des==192.168.241.11

查找源地址为11.1.1.1的包 ip.src == 11.1.1.1

2.端口过滤

把源端口和目的端口为80的都过滤出来 tcp.port==80

只为过滤目的端口为80 tcp.dstport==80

只为过滤源端口为80的 tcp.srcport==80

3.协议过滤

直接在Filter框输入协议名即可过滤

http,tcp,ssh

4.http模式过滤

过滤出get包 http.request.method == "GET"

过滤出post包 http.request.method == "POST"

5.过滤多种条件

用and连接,如过滤192.168.241.129并且为http协议的

ip.src == 192.168.241.129 and http

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jjj34

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值