Windows Server入门系列19 ARP欺骗原理

简介:

在ARP协议的工作过程中,正常情况下应是由一台主机先发出ARP请求,然后再由目标主机向其返回ARP响应。但ARP协议是建立在信任局域网内所有结点的基础上的,即如果主机并没有发出ARP请求,它也仍会接收别的主机主动向其发送的ARP响应,这就为ARP欺骗提供了可能。

假设在下图所示的网络拓扑中,在主机A所在的网段出现了一台恶意主机,它通过伪造ARP响应包可以实施三种类型的ARP欺骗。

image

第一种,欺骗主机。

这种欺骗的目标是主机(如主机A),欺骗的目的是伪造网关的MAC地址。

恶意主机通过向目标主机发送伪造的ARP响应,使得目标主机ARP缓存表中的网关IP地址对应到一个虚假的MAC地址上。

伪造的发往主机A的ARP Response数据帧封装结构如下图所示:

image

主机A收到这个伪造的ARP响应之后,将更新自己的ARP缓存表,将网关的IP地址192.168.1.1对应到错误的MAC地址上。这样导致的后果是主机A将无法将数据正常地发送给网关,从而使主机掉线,无法上网。

第二种,欺骗网关。

这种欺骗的目标是网关,欺骗的目的是伪造主机的MAC地址。

恶意主机通过向网关发送伪造的ARP响应,使得网关ARP缓存表中的主机IP地址对应到一个虚假的MAC地址上。

伪造的发往网关的ARP Response数据帧封装结构如下图所示:

image

网关收到这个伪造的ARP响应之后,将更新自己的ARP缓存表,将主机A的IP地址192.168.1.100对应到错误的MAC地址上。这样导致的后果是主机A虽然能将数据发送给网关,但网关却无法将返回的信息发送给主机A,所以仍然会使主机掉线,无法上网。

第三种,对主机和网关的双向欺骗。

明白了上述两种欺骗的原理之后,这种欺骗方法就比较好理解了。恶意主机分别向主机和网关发送伪造的ARP响应,其破坏力相比前两种欺骗方法要更强。


本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1329745


相关文章
|
8天前
|
网络协议 安全
使用映像劫持,ARP欺骗,autorun.inf等技术的AV杀手mgemtjk.exe,sb.exe,qodwjay.exe,smsovct.exe等1
使用映像劫持,ARP欺骗,autorun.inf等技术的AV杀手mgemtjk.exe,sb.exe,qodwjay.exe,smsovct.exe等1
|
1月前
|
网络安全 虚拟化 Windows
windows 11安装openSSH server 遇到的"kex_exchange_identification: read: Connection reset"问题
windows 11安装openSSH server 遇到的"kex_exchange_identification: read: Connection reset"问题
|
2月前
|
PHP Windows
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
|
2月前
|
缓存 监控 网络协议
中间人攻击之ARP欺骗
【8月更文挑战第13天】
44 1
|
2月前
|
数据库 Windows
超详细步骤解析:从零开始,手把手教你使用 Visual Studio 打造你的第一个 Windows Forms 应用程序,菜鸟也能轻松上手的编程入门指南来了!
【8月更文挑战第31天】创建你的第一个Windows Forms (WinForms) 应用程序是一个激动人心的过程,尤其适合编程新手。本指南将带你逐步完成一个简单WinForms 应用的开发。首先,在Visual Studio 中创建一个“Windows Forms App (.NET)”项目,命名为“我的第一个WinForms 应用”。接着,在空白窗体中添加一个按钮和一个标签控件,并设置按钮文本为“点击我”。然后,为按钮添加点击事件处理程序`button1_Click`,实现点击按钮后更新标签文本为“你好,你刚刚点击了按钮!”。
105 0
|
2月前
|
开发者 iOS开发 C#
Uno Platform 入门超详细指南:从零开始教你打造兼容 Web、Windows、iOS 和 Android 的跨平台应用,轻松掌握 XAML 与 C# 开发技巧,快速上手示例代码助你迈出第一步
【8月更文挑战第31天】Uno Platform 是一个基于 Microsoft .NET 的开源框架,支持使用 C# 和 XAML 构建跨平台应用,适用于 Web(WebAssembly)、Windows、Linux、macOS、iOS 和 Android。它允许开发者共享几乎全部的业务逻辑和 UI 代码,同时保持原生性能。选择 Uno Platform 可以统一开发体验,减少代码重复,降低开发成本。安装时需先配置好 Visual Studio 或 Visual Studio for Mac,并通过 NuGet 或官网下载工具包。
61 0
|
2月前
|
Kubernetes Cloud Native 开发者
探索云原生技术:Kubernetes入门与实践探索Windows操作系统的隐藏功能
【8月更文挑战第31天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性、效率和可靠性的关键。本文将带你了解云原生的核心组件之一——Kubernetes(K8s),通过浅显易懂的语言和实际代码示例,引导你步入这一强大工具的世界。无论你是初学者还是有经验的开发者,本篇都将为你打开一扇通向高效资源管理与自动化部署的大门。
|
2月前
|
网络协议 网络虚拟化
遇到ARP欺骗攻击,咋整?别慌!这3招教制服它!
遇到ARP欺骗攻击,咋整?别慌!这3招教制服它!
|
2月前
|
开发框架 .NET API
Windows Server 2022 安装IIS 报错 访问临时文件夹 C:\WINDOWS\TEMP\3C 读取/写入权限 错误: 0x80070005
Windows Server 2022 安装IIS 报错 访问临时文件夹 C:\WINDOWS\TEMP\3C 读取/写入权限 错误: 0x80070005
86 0
|
2月前
|
Linux Docker Windows
Windows——Docker拉取Windows Server镜像
Windows——Docker拉取Windows Server镜像
111 0
下一篇
无影云桌面