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

802.11 wireshark 抓包

80211 wireshark 抓包

  • 前言
  • 配置 monitor
  • 软件配置
  • wireshark 操作

前言

本人习惯使用 Omnipeek 抓包分析,所以 wireshark 的实验只讲到抓包完成。
Windows 环境采用 wireshark 抓包是比较麻烦的,因为支持在 Windows 环境中支持抓包的网卡并不多,所以本次直接用 Linux 环境来做试验。
使用网卡为:RT3070L,70块钱一张的网卡。

配置 monitor

何为 monitor?顾名思义和监视有关,但是和有线网络监视不同,对有线网络监视抓包只需要运行 wireshark 选择一张网卡即可。无线网络的抓包稍微复杂一点,因为需要一张网卡作为 monitor 放置于要监视抓包的两张网卡之间,用 Linux 电脑连接 monitor 网卡,这样才能接收到要抓包的两张网卡的无线包。

其次是无线抓包的目标层,我们都知道 osi 把网络分为 7 层,各层协议分布情况如下:

  • L7应用层:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
  • L6表示层:数据的表示、安全、压缩;JPEG、ASCll、EBCDIC、加密格式等。(在五层模型里面合并到应用层)
  • L5会话层:建立、管理、终止会话。对应主机进程,指本地主机与远程主机正在进行的会话。(在五层模型里面合并到应用层)
  • L4传输层:TCP UDP
  • L3网络层:ICMP IGMP IP(IPV4 IPV6)
  • L2数据链路层:建立逻辑连接、进行硬件地址寻址、差错校验等功能。将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。
  • L1物理层:设备之间非结构化原始数据的传输和接收

而无线网实际上是L2:数据链路层。所以 monitor 将会抓到的包也是链路层的数据包。

软件配置

先安装必要的软件(不同网卡实际需要的软件不完全相同)

sudo apt-get install tcpdump wireless-tools net-tools

然后要将网卡配置成monitor模式:

$ sudo ifconfig wlan0 down                   #关闭网卡,才可以设置mode
$ sudo iwconfig wlan0 mode monitor           #设置网卡为monitor模式
$ sudo ifconfig wlan0 up                     #开启网卡,让设置生效

除了monitor模式外,无线网卡还可以设置成以下几种模式:

  • Monitor:节点不与任何AP关联,可以被动地捕获信道上所有的数据包。
  • Master:节点作为同步的主节点,简单而言,就是AP。该模式是默认的模式。
  • Repeater:节点负责中继无线节点间的数据包。
  • Secondary:节点可作为一个AP(也就是Master)或者Repeater的备份节点。
  • Managed:节点作为客户端能够向AP发起关联,通常也被称为client模式。
  • Ad-hoc:节点与节点间直接建立关联关系,并不存在AP。

查看无线网卡是否支持 monitor 模式:

$ sudo iwconfig
lo        no wireless extensions.enp8s0    no wireless extensions.wlan0    IEEE 802.11  Mode:Monitor  Frequency:2.412 GHz  Tx-Power=14 dBmRetry short limit:7   RTS thr:off   Fragment thr:offPower Management:off

查看&设置WiFi RF信道:

$ sudo iwlist wlan0 channel
wlan0    13 channels in total; available frequencies :Channel 01 : 2.412 GHzChannel 02 : 2.417 GHzChannel 03 : 2.422 GHzChannel 04 : 2.427 GHzChannel 05 : 2.432 GHzChannel 06 : 2.437 GHzChannel 07 : 2.442 GHzChannel 08 : 2.447 GHzChannel 09 : 2.452 GHzChannel 10 : 2.457 GHzChannel 11 : 2.462 GHzChannel 12 : 2.467 GHzChannel 13 : 2.472 GHzCurrent Frequency:2.462 GHz (Channel 11)#设置当前信道为6
$ sudo iwconfig wlan0 channel 6 $ sudo iwlist wlan0 channel
wlan0    13 channels in total; available frequencies :Channel 01 : 2.412 GHzChannel 02 : 2.417 GHzChannel 03 : 2.422 GHzChannel 04 : 2.427 GHzChannel 05 : 2.432 GHzChannel 06 : 2.437 GHzChannel 07 : 2.442 GHzChannel 08 : 2.447 GHzChannel 09 : 2.452 GHzChannel 10 : 2.457 GHzChannel 11 : 2.462 GHzChannel 12 : 2.467 GHzChannel 13 : 2.472 GHzCurrent Frequency:2.437 GHz (Channel 6)

也可以用 iw list 代替。
设置完成,启动 wireshark:

sudo wireshark

wireshark 操作

在这里插入图片描述
点击“捕获”。
选择绑定了目标网卡的网口:wlan0,并开启混杂模式,此模式所有的无线帧都可以捕捉到。
在这里插入图片描述
随后点击开始,将陆续抓取环境中所有的无线数据包,不会局限于目标中的两张网卡。
在这里插入图片描述
注意:wireshark抓取的数据包都是固定信道的,所以要抓取特定信道的数据包的话,那么需要首先手动设定。
但是这样也有一个好处,可以抓目标信道的无线包。

相关文章:

802.11 wireshark 抓包

80211 wireshark 抓包 前言配置 monitor软件配置wireshark 操作 前言 本人习惯使用 Omnipeek 抓包分析,所以 wireshark 的实验只讲到抓包完成。 Windows 环境采用 wireshark 抓包是比较麻烦的,因为支持在 Windows 环境中支持抓包的网卡并不多&#xff0…...

vscode 调试web后端

1、调试环境配置 一、安装python环境管理器 其中要先在vscode选择对应的python环境,最方便的是按照环境管理器后从中选择。其中在【externsions】里面安装python即可。 如下: 二、编写launch.json文件 其中如下: {// Use IntelliSense …...

JAVA默写单词小程序

编写一个记单词和默写单词两个功能的小程序 package com.lu.word;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.ToString;Data AllArgsConstructor NoArgsConstructor ToString public class A {private String k;p…...

认知、情绪、情感、意志、人格

皮亚杰的认知发展阶段理论 个别差异与因材施教 情绪 情绪的理论 情感与情绪 意志 人格...

解析capl文件生成XML Test Module对应的xml工具

之前一直用的CAPL Test Module来写代码,所有的控制都是在MainTest()函数来实现的,但是有一次,代码都写完了,突然需要用xml的这种方式来实现,很突然,之前也没研究过,整理这个xml整的一身汗&#…...

Java中的反射是怎么回事?

反射的概念 《Java核心技术》中的定义是这样的:能够分析类能力的程序,就是反射 这就是一个概念,跟java中经常提的问题:对象是什么? 一类问题,简单来说就是将类创建对象的逻辑反过来,由对象获得…...

07 STM32寄存器开发基础-中断编程

文章目录 一、前言二、系列文章三、如何学习?四、单片机的中断知识点4.1 中断的概念4.2 中断服务函数中断服务函数与中断的关系中断服务函数的特点与编写要求中断服务函数的命名规则4.3 超声波测距项目里中断的使用思路超声波测距原理使用中断实现超声波测距硬件连接工作流程具…...

聚簇和非聚簇索引/Btree和B+tree

目录 1、聚簇(聚集)索引 (1)特点 (2)优点 (3)缺点 2、二级索引(辅助索引、非聚簇索引) 3、Btree(平衡多路查找树) 4、Btree 5…...

清华学姐熬夜肝了15天的软件测试面试题出炉(附答案)建议收藏!

一、Web自动化测试 1.Selenium中hidden或者是display = none的元素是否可以定位到? 不能,可以写JavaScript将标签中的hidden先改为0,再定位元素 2.Selenium中如何保证操作元素的成功率?也就是说如何保证我点击的元素一定是可以…...

Docker 安装指南

Docker 安装指南 文章目录 Docker 安装指南1. 卸载旧版2. 配置 Docker 的 YUM 库3. 安装 Docker4. 启动和校验5. 配置镜像加速6. 常见问题和解决方法7. 阅读和资源 Docker 是一个开源的容器化平台,能够让开发者打包应用及其依赖项到一个轻量级的、可移植的容器中。以…...

系统架构设计师 - 知识产权与标准化

知识产权与标准化 知识产权与标准化(3分)保护范围与对象 ★ ★ ★ ★法律法规 保护期限 ★ ★知识产权人确定 ★ ★ ★ ★侵权判断 ★ ★ ★ ★标准化(了解)★标准的分类标准的编号 大家好呀!我是小笙,本章…...

【Python】Facebook开源时间序列数据预测模型Prophet

文章目录 一、简介二、项目的文件解读三、Prophet类主要方法和参数3.1 主要参数3.2 主要方法 四、用法示例 一、简介 Prophet 是由 Facebook 开发的一个开源工具,用于时间序列数据的预测。它特别适用于处理具有强季节性和趋势的时间序列数据,并且对节假…...

Spring 常用的三种拦截器详解

前言 在开发过程中,我们常常使用到拦截器来处理一些逻辑。最常用的三种拦截器分别是 AOP、 Interceptor 、 Filter,但其实很多人并不知道什么时候用AOP,什么时候用Interceptor,什么时候用Filter,也不知道其拦截顺序&am…...

微前端概念

微前端作用 大型应用程序的拆分独立的前端子应用降低程序复杂性&#xff0c;提高开发效率 微前端能力 js隔离css隔离元素隔离生命周期预加载数据通信应用跳转多层嵌套… 微前端实现方案 IframeSingle-spaQiankunMicro-app Iframe <iframe src"https://www.examp…...

FFmpeg实战 - 解复用解码

文章目录 前置知识音视频基础概念解复用、解码的流程分析FFMPEG有8个常用库 常见音视频格式的介绍aac格式介绍h264格式介绍flv格式介绍mp4格式介绍 FFmpeg解码解封装实战数据包和数据帧&#xff08;AVPacket/AVFrame&#xff09;AVPacket/AVFrame的引用计数问题API介绍注意事项…...

Jmeter混合压测(2407)

一 压测需求&#xff1a; 电商作为服务端&#xff0c;至少需要满足并发量,QPS:100/s,TPS:20/s。例如场景&#xff1a; 电商交易中&#xff0c;商品图片请求量最多&#xff0c;电商服务端需要满足并发请求查询图片信息。各家可能会并发请求同一家电商商品、订单等内容。 二 压…...

Prometheus各类监控及监控指标和告警规则

目录 linux docker监控 linux 系统进程监控 linux 系统os监控 windows 系统os监控 配置文件&告警规则 Prometheus配置文件 node_alert.rules docker_container.rules mysql_alert.rules vmware.rules Alertmanager告警规则 consoul注册服务 Dashboard JSON…...

G120 EPos配置方案及应用场景

EPos功能就是基本定位器功能,它可计算出轴的运行特性,使轴以时间最佳的方式移动到目标位置。EPos功能主要包括:设定值 直接给定(MDI)功能、 选择程序段功能、回参考点功能、点动功能、运行到固定挡块功能。 EPos功能通过处理给定的加速度、速度和位置值生成运行特性曲线,…...

定制化爬虫管理:为企业量身打造的数据抓取方案

在数据驱动的时代&#xff0c;企业如何高效、安全地获取互联网上的宝贵信息&#xff1f;定制化爬虫管理服务应运而生&#xff0c;成为解锁专属数据宝藏的金钥匙。本文将深入探讨定制化爬虫管理如何为企业量身打造数据抓取方案&#xff0c;揭秘其在海量信息中精准捕获价值数据的…...

Javascript面试基础6【每日更新10】

Gulp gulp是前端开发过程中一种基于流的代码构建工具&#xff0c;是自动化项目的构建利器;它不仅能对网站资源进行优化&#xff0c;而且在开发过程中很多重复的任务能够使用正确的工具自动完成 Gulp的核心概念:流 流&#xff0c;简单来说就是建立在面向对象基础上的一种抽象的…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南&#xff1a;从入门到实战 一、Grunt 是什么&#xff1f; Grunt是一个基于 Node.js 的前端自动化任务运行器&#xff0c;主要用于自动化执行项目开发中重复性高的任务&#xff0c;例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持&#xff1a;CMake支持多种操作系统和编译器&#xff0c;使用同一份构建配置可以在不同的环境中使用 简化配置&#xff1a;通过CMakeLists.txt文件&#xff0c;用户可以定义项目结构、依赖项、编译选项等&#xff0c;无需手动编写复杂的构建脚本…...

Python网页自动化Selenium中文文档

1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API&#xff0c;让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API&#xff0c;你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

前端工具库lodash与lodash-es区别详解

lodash 和 lodash-es 是同一工具库的两个不同版本&#xff0c;核心功能完全一致&#xff0c;主要区别在于模块化格式和优化方式&#xff0c;适合不同的开发环境。以下是详细对比&#xff1a; 1. 模块化格式 lodash 使用 CommonJS 模块格式&#xff08;require/module.exports&a…...

Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用

Linux 内存管理调试分析&#xff1a;ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础&#xff0c;但这一子系统结构复杂&#xff0c;常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题&#xff0c;需要一套工具化、…...