WiFi探针技术

一.什么是WiFi 探针技术 ?

  WiFi 探针技术是指基于WiFi探测技术来识别AP(无线访问接入点)附近已开启 WiFi 的智能手机或者WiFi终端(笔记本,平板电脑等),无需用户接入WiFi,WiFi探针就能够识别户的信息。

  当我们走进探针信号覆盖区域内且我们的wifi设备打开,我们的设备就能被探针探测出来,无论是IOS或者安卓系统都能轻易检测到,并且获取设备的MAC地址

  特点:

  1. 用户无需参与,无需连接到网络

  2. Android , IOS全兼容

  3. 自动探测区域内手机MAC地址

  4. 手机,平板均能探测

二.工作原理

通俗的来说:

  WiFi 是基于IEEE802.11a/b/g/n 协议,在标准协议中,定义了AP(Access Point,无线接入点)和STA(Stations,站或客户端)的两种工作模式;协议中规定了BEACON(信标,类似于指引车船等的 灯标,灯塔)、ACK、DATA、PROBE(探查) 等多种无线数据帧类型,在站连接到无线接入点时进行交互的就是数据桢和应答帧、同时AP 周期性发送BEACON

  在站点没有连接到无线接入点上,手机客户端等站点也会发送PROBE 帧进行探测询问哪个AP 是可以接入的。WiFi 探针就是基于各种无线数据帧来抓获手机等WIFI客户端的MAC 地址信息。

       每个AP每隔一定时间(几十毫秒到几秒不等)向周围的sta和AP广播beacon帧,就是告诉周围的sta和其他的AP:我是xxxx(bssid),快来连我!我是xxxx(bssid),快来连我!

  每个sta(可以理解为手机、笔记本)除了默默监听周边AP发送的beacon帧以外,还会偷偷发送probe帧:我是xxxx(mac地址),我能连你吗?我是xxxx(mac地址)我能连你吗?

 深入了解:

  要深入了解WiFi探针技术,首先先认识WiFi使用的网络协议,WiFi采用的是IEEE802.11协议集,此协议集包含许多子协议。其中按照时间顺序发展,主要有:(1)802.11a,(2)802.11b, (3)802.11g,(4)802.11n。在网络通信中,数据被封装成了帧,帧就是指通信中的一个数据块。但是帧在数据链路层传输的时候是有固定格式的,不是随便的封装和打包就可以传输,大小有限制,最小46字节,最大1500字节所以我们必须按照这个规则来封装。下面802.11的帧结构:

  从上面的结构可以知道,前俩个字节为:帧控制字段。
  控制字段的前2bit节为:协议类型,目前此值为:0。

  1)控制帧:(Control Frame,例如RTS帧、CTS帧、ACK帧)用于竞争期间的握手通信和正向确认、结束非竞争期等;
  2)管理帧:(Management Frame,例如Beacon帧、Probe Request帧)主要用于STA与AP之间协商、关系的控制,如关联、认证、同步等;
  3)数据帧:(Data Frame,承载数据的载体)用于在竞争期和非竞争期传输数据。

  1、管理帧

  BeaconFrame:信标帧,是相当重要的维护机制,主要来宣告某个AP网络的存在。定期发送的信标,可让移动WiFi设备得知该网络的存在,从而调整加入该网络所必要的参数。在基础网络里,AP必须负责发送Beacon帧,Beacon帧所及范围即为基本服务区域。 在基础型网络里,所有沟通都必须通过接入点,因此WiFi设备不能距离太远,否则无法接收到信标。下图是帧格式:

  2、管理帧Probe Request:探测请求帧,WiFi设备将会利用Probe Request帧,扫描所在区域内目前有哪些802.11网络。下图是帧格式:

  3、数据帧:

  Data数据帧,当接入点要送出一个帧给WiFi设备但是不必确认之前所传送的信息时,就会使用标准的数据帧。标准的数据帧并不会征询对方是否有数据待传,因此不允许接收端传送任何数据。无竞争周期所使用的纯数据(Data-Only)帧和无竞争周期所使用的数据帧完全相同。看了以上的网络知识,我们现在说说WiFi探针是怎么工作的,还是先看张图:


  就像图中描述的一样,我们的WiFi探针其实就是一个AP,它定时的向自己的四周广播发送Beacon帧,用来通知附近的WiFi设备,AP是存在的,(好比它一直在向周围喊着,我在这里,大家快来连接我啊)。 我们的WiFi设备,手机,平板电脑等,也不停的发送着probe帧,去寻找附近可用的AP。在probe帧的介绍中就我们可以看到probe帧包含了设备的mac地址,当我们的AP接收到probe帧之后就获取了这个设备的MAC地址,而这个AP就是我们的WIFI探针。因此只要在WiFi探针覆盖区域内的设备打开着WiFi,探针就能收集到他的MAC地址。
三.WIFI探针能采集到的数据
  (1)设备MAC地址;
  (2)WiFi信号强度;
  (3)WiFi信号频道;
  (4)信号帧类型;
  采集数据图例:
  记录格式:探针 MAC|抓取的设备 MAC|设备发送的 WiFi 包的类型|子类型|信号强度|时间戳


  数据释义

  • “探针MAC”就是探针本身的MAC地址
  • “抓取的设备MAC”指探针抓取到的WiFi信号的发射设备的MAC地址,一般为手机;
  • “信号强度”指探针抓取到的WiFi信号的强度,最小值为“-100”,一般来说,此值越大表示发射设备离探针越近;
  • “设备发送的WiFi包的类型”指探针抓取到的WiFi信号的类别,其末位数的值为0、4、8时,分别表示抓取到的WiFi信号为“管理”帧、“控制”帧、“数据”帧;
  • “时间戳”指探针抓取到WiFi信号的时间,如果探针在局域网内使用而没有接入广域网的话,时间戳可能是不准确的。


四.安全性
  wifi探针是不会侵犯个人隐私的。
       探针所收集的数据内容我们来看看WiFi探针设备究竟会收集什么信息?前面我们已经看到了,在不连接WiFi的情况下,移动设备只会发送probe帧,此时我们并不能通过探针访问网络进行数据传输,探针仅仅只能接收到WiFi设备发送的probe帧,收集probe帧携带的MAC地址,所以此时我们收集到信息是绝对无关用户个人信息和设备上其他信息的。
  探针的数据处理由于探针本身设计仅仅是探测周边有些什么设备,因此并不产生大量数据,设计的时候就不会将收集到的数据存储在本身,而是通过有线连接直接发送到中心服务器上,这样即使有恶意的人将探针取走,也不能获得探针收集到的信息。同时有线连接也保证数据传输过程不容易通过电磁波的形式被监听和窃取。中心服务器一般都是在IDC机房里,而要进入IDC机房是需要经过IDC层层许可的。因而不论是数据的传输还是存储,探针的数据都是安全的。

五.用什么设备

       Wifi探针设备和普通的无线路由器很接近,实际普通路由器就能做,只修改无线路由器的驱动部分,直接在驱动中抓取周边手机的信息。许多厂商也推出了专用的wifi探针设备,集成了管理平台,更方便的管理收集的信息,如:深圳中科爱讯、成都数据天空等。

发布了137 篇原创文章 · 获赞 488 · 访问量 34万+

猜你喜欢

转载自blog.csdn.net/fuhanghang/article/details/104454869