无线探针的原理及功能实现

今年315曝光的无线探针盒子,博主很感兴趣,于是托朋友关系买了一块(实际上就一esp8266),到手之后完全不知道该从哪下手,于是一番打听后,发现这玩意是有后台管理系统的,而且价格...:heixian:

当时我还在读书,所以很快就打消了玩下去的念头,直到近几天整理设备时一不小心把它翻了出来,这次我可不会气妥了。

WiFi及探针原理

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

简单来说,如果你手机开了无线,那么探针就能获取到你手机的地址信息等。关于探针的更多信息:

(1)、成本低:信息存储方便且存储成本较低,减少无关信息的存储;

(2)、速度快:可以快速获取信息,通过MAC地址就可以获取设备的移动轨迹,不需要花费大量人力物力走访调查,观看录像;

(3)、覆盖面广:现在无线AP普及到户,农村也比较普及。

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

 要深入了解WiFi探针技术,首先先认识WiFi使用的网络协议,WiFi采用的是IEEE802.11协议集,此协议集包含许多子协议。其中按照时间顺序发展

主要有:

(1)802.11a

(2)802.11b

(3)802.11g

(4)802.11n

在网络通信中,数据被封装成了帧,帧就是指通信中的一个数据块。但是帧在数据链路层传输的时候是有固定格式的,不是随便的封装和打包就可以传输,大小有限制,最小46字节,最大1500字节所以我们必须按照这个规则来封装。下面802.11的帧结构:

https://blog.csdn.net/sky619351517/article/details/90108626

https://www.cnblogs.com/carlos-jx-home/p/8628173.html

小牛试刀

最开始我使用nc进行连接,就是开个端口,然后在探针上绑定我的服务器进行数据传输,但是传到服务器上的一直是post请求

后来问朋友朋友告诉我,有个平台可以进行数据接收...

经过一系列操作(绑定入网),发现这个平台确实人性化许多,但感觉还是少了点什么......

(扫描到的设备)

(无线AP整理)

(附近的无线AP)

(未经正则整理的数据)

(探针还可以进行位置定位)

为了更深入地理解(开始装逼),我找朋友要了该模块的参数。打算自己编写一个平台

明白了对应的接口位置之后,进入mysql创建库表值。

(懒得打码了,打算开源)

然后随便写了一个接收端

这样看着不太美观,于是我导入了Bootstrap

这下好多了,但还是感觉少了点什么,于是我加入了定位和设备查询功能

定位的api使用百度地图,然后设备MAC查询使用第三方进行查询,.......有些不准......

写到这儿感觉,感觉还是少了点什么,哎,太失败了。

THE END - 我们该如何防范       

前面也说过了,探针的主要目的是手机手机的MAC地址,只要你手机开着无线你的数据就会被探针给拦截到,唯一的方法就是关闭无线,但是,你总也不可能24h全天关着吧,我个人建议是采用随机MAC地址,在早些年我用iapp编写过一个随机mac地址的软件,但是现在估计用不了了(都是10年过期的地址)

现在软件商店或网上有很多随机MAC变换的软件,像下面这个

最后的最后,也没啥好说的了,就祝大家健健康康开开心心快快乐乐的吧!

点赞

发表评论

电子邮件地址不会被公开,只有你知道( ̄▽ ̄)"