写点什么

黑客实现 ARP 欺骗

作者:喀拉峻
  • 2022 年 1 月 19 日
  • 本文字数:2096 字

    阅读完需:约 7 分钟

一、内容

  1.网络嗅探:Wireshark 监听网络流量,抓包。

  2.ARP 欺骗:科来数据包发生器,构造欺骗报文。

  3.防范: 防范 arp 欺骗、非法 DHCP 防范。

二、使用的工具和平台

  Wireshark:用来抓包,

  科来数据包生成器、科来数据包播放器:构造欺骗的 ARP 欺骗报文

  平台:使用 Win10 作为攻击机,靶机时虚拟机中的 Win7

三、ARP 欺骗原理

  同一局域网里面的两台主机之间相互通信是通过 Mac 地址寻址的,而如果两台主机若不是处于同一子网里面,则在通信的时候会相互将数据发送给各自的路由器网关,通过网关的 IP 寻址以达到通信目的。但是网关和自己局域网里面的主机通信的时候还是依靠 Mac 地址寻址的,所以如果我们要把自己攻击机伪造成网关达到欺骗作用,就应该把目标主机上的网关 Mac 地址缓存改为攻击机的 Mac 地址(这就可以通过伪造 ARP 报文来实现)。

  正常情况下数据包的发送:

  


  如图:在正常的情况下,处于两个不同子网之间通信,会有 A——>网关——>网卡——>外网。通过网关和网卡连通两个子网。而现在所要做的就是将这一步改为 A——>B——>网卡——>外网,将 B 伪造成网关,这样一来所有从 A 到外网的数据就都会通过 B 了,从而可以分析出 A 的上网情况,甚至是一些明文密码。

  伪造的情况下:

  


 同时,伪造网关后,还需要将数据转发出去,否则会导致 A 上不了网而被发现网关是伪造的。

四、具体实现步骤

  1.首先通过命令行和 Wireshark 知道攻击机和靶机的 MAC 地址和 IP 地址。

  使用 ipconfig/all 查看

  



① 200 多本网络安全系列电子书② 网络安全标准题库资料③ 项目源码④ 网络安全基础入门、Linux、web 安全、攻防方面的视频⑤ 网络安全学习路线图【戳此白嫖】

  由此可知,攻击机 IP:192.168.0.103     MAC:18-DB-F2-2C-FC-EC

       靶机 IP:192.168.0.113         MAC:00-0C-29-EB-E5-8E

       网关  IP:192.168.0.1   MAC:04-95-e6-57-a6-c8

使用 arp -a 查看网关信息,注意这是的网关为 192.168.0.1



这里信息也可以使用 WireShark 抓包来获取

 



 现在,基本的地址信息有了,下面开始构造 ARP 欺骗报文

在科来数据包生成器中构造 ARP 报文,以太网中的目标地址为广播,源地址是攻击机的 MAC 地址,

ARP 地址解析协议中,源 MAC 地址为攻击机,源 IP 为网关,目标 MAC 和 IP 为靶机地址



 数据包构造完成后,使用科来数据包播放器发送,网卡选择有效的,使用循环发送(现在的操作系统为了防止 ARP 欺骗,一般会再次确定网关,所以需要循环发送)



这里使用靶机上网,在 WireShark 中可以抓取到相应的包



在网关欺骗成功之后,还需要将靶机的信息进行转发,否则会导致靶机无法上网

具体设置如下:

1.在命令行中输入“Regedit”



 2.查找一下路径:

“HKEY_LOCAL_MACHINE” > SYSTEM > CurrentControlSet >Services> Tcpip >Parameters > IP Enable Router

右键点击修改,将 0 改为 1;

3.在运行中输入



打开后启用 Routing and Remote Access Service 服务即可



在伪造数据包的时候更深刻了解到了 ARP 报文的结构,在者就是认识到 TCP/IP 协议是相当不安全的,ARP 报文可以修改达到中间人劫持获取用户和密码的目地,同样通过 DNS 欺骗可以制造钓鱼网站窃取密码,还可以通过修改 UDP 报文伪造对话,这一切的不安全因素都是因为在传输过程中任何人都可以截取、而且没有认证机制,以至于任何人可以随心所欲的修改它。所以需要防范 ARP 欺骗。

ARP 欺骗防范:

  1)设计静态 ARP 表

    在主机上设置静态的 MAC->IP 对应表,不要让主机刷新设定好的转换表。

    在 PC 上绑定路由器的 IP 和 MAC 地址,路由器上绑定用户主机的 IP 和 MAC 地址

  批处理文件实现:    

    @echo off

    :::::::::读取本机 Mac 地址    if exist ipconfig.txt del ipconfig.txt    ipconfig /all >ipconfig.txt    if exist phyaddr.txt del phyaddr.txt    find "Physical Address" ipconfig.txt >phyaddr.txt    for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M    :::::::::读取本机 ip 地址    if exist IPAddr.txt del IPaddr.txt    find "IP Address" ipconfig.txt >IPAddr.txt    for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I    :::::::::绑定本机 IP 地址和 MAC 地址    arp -s %IP% %Mac%    :::::::::读取网关地址    if exist GateIP.txt del GateIP.txt    find "Default Gateway" ipconfig.txt >GateIP.txt    for /f "skip=2 tokens=13" %%G in (GateIP.txt) do setGateIP=%%G    :::::::::读取网关 Mac 地址    if exist GateMac.txt del GateMac.txt    arp -a %GateIP% >GateMac.txt    for /f "skip=3 tokens=2" %%H in (GateMac.txt) do setGateMac=%%H    :::::::::绑定网关 Mac 和 IP    arp -s %GateIP% %GateMac%    del GateIP.TXT /Q    DEL GateMac.txt /q    del IPAddr.txt /q    del ipconfig.txt /q    del phyaddr.txt /q    exit

    保存为 IP-MAC.bat 开机运行就 OK 

     2)安装 ARP 防护软件

 这是一次关于 ARP 欺骗的实现过程。

PS:勿忘初心,持之以恒。

发布于: 刚刚阅读数: 2
用户头像

喀拉峻

关注

左手Java右手Python,中间纹个C++ 2021.06.26 加入

还未添加个人简介

评论

发布
暂无评论
黑客实现ARP欺骗