使用Pyhton 分析酒店针孔摄像头


Posted in Python onMarch 04, 2020

/1 前言/

最近酒店被曝出隐藏摄像头的事情屡见不鲜,搞得大家人心惶惶,有图为证,如下图所示。

使用Pyhton 分析酒店针孔摄像头

今天教大家一下如何用python分析出酒店里的针孔摄像头,让你放心住酒店。

/2 原理介绍/

我们大家都知道,针孔摄像一般都很小,所以它不太可能含有存储设备,都是通过连接酒店房间内的无线网,远程传输给作案人,我们就从这方面入手,用Python的scapy模块扫描局域网内的所有设备,并通过爬虫找到该设备生产厂商,以厂商来判断该设备是否为摄像头。

所需环境:ubuntu、pyhton3.5、pycharm

/3 操作步骤/

实现步骤依赖环境较多,操作起来可能有些复杂,不过就当了解一下也是欧克的,具体的操作步骤如下。

1、用scapy模块的scapy函数模拟构造ARP广播包,代码如下图所示。

使用Pyhton 分析酒店针孔摄像头

这个表示要向网段内的所有主机都询问一下,说的通俗一点就是“请问网段内都有谁在啊”。

2、模拟在局域网内发送。用scapy模块模拟发送ARP广播,代码如下图所示。

使用Pyhton 分析酒店针孔摄像头

其中p是第一步构造的广播包,wifi是本机的网卡名称,timeout是发送时限。

3、返回的两个参数,ans包含两类数据包(ARP请求包和ARP返回信息),请求包是第一步构造的包,返回包是局域网内主机的回应,如下图所示。

使用Pyhton 分析酒店针孔摄像头

包含该主机的ip地址和MAC地址,打码的就是MAC地址;unans返回True或者False,代表是否发送成功。

4、解析返回的数据包。这一步主要是为了从上一步的数据包中把主机MAC地址取出来,虽然看起来很复杂,但实现起来比较简单,代码实现如下图所示。

使用Pyhton 分析酒店针孔摄像头

其中s和r分别是上步所说的请求包和返回包;r[ARP].hwsrc即是返回包中主机的MAC地址。

5、查询MAC地址厂商。由于上网设备MAC地址的唯一性,所以每家厂商的前6位MAC地址都是固定的,这样一来,我们就可以根据MAC地址反查出厂商,在网上找了一家便民查询网的网站,网址为https://mac.51240.com/,如下图所示。

使用Pyhton 分析酒店针孔摄像头

6、只需输入MAC地址就会出现次MAC地址的详细信息,如下图所示。

使用Pyhton 分析酒店针孔摄像头

7、我们需要的是它的组织名称,分析一下此网站,是个最简单的静态网页,如下图所示。

使用Pyhton 分析酒店针孔摄像头

8、也不用解析网页了,直接正则匹配,代码如下图所示。

使用Pyhton 分析酒店针孔摄像头

9、运行程序,得到如下图所示的结果。

使用Pyhton 分析酒店针孔摄像头

从上图可以看到检测的设备有4台主机,1台TP-LINK路由器,1个REALTEK外置网卡,2台华为手机,这种情况应该是正常的。如果是出现摄像头生产厂商类的MAC地址,就要小心了,马上去可疑地方找找吧!

/4 总结/

本文主要介绍了使用Python代码检测酒店里的针孔摄像头,实现原理是用scapy模块模拟发送ARP广播,获取设备的Mac地址,借助第三方平台查询设备的具体信息,检测周边环境是否正常。

本文涉及的Pyhton代码,我已经上传到Github了,感兴趣的小伙伴们,可以去看看,觉得不错,记得给个Star噢!代码链接:https://github.com/cassieeric/python_crawler/tree/master/hotel_monitor

到此这篇关于使用Pyhton 分析酒店针孔摄像头的文章就介绍到这了,更多相关python 酒店针孔摄像头内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python中使用Mako模版库的简单教程
Apr 08 Python
Java Web开发过程中登陆模块的验证码的实现方式总结
May 25 Python
深入学习Python中的装饰器使用
Jun 20 Python
python字符串过滤性能比较5种方法
Jun 22 Python
Python基于QRCode实现生成二维码的方法【下载,安装,调用等】
Jul 11 Python
python中单例常用的几种实现方法总结
Oct 13 Python
对Python发送带header的http请求方法详解
Jan 02 Python
PyQtGraph在pyqt中的应用及安装过程
Aug 04 Python
Python操作远程服务器 paramiko模块详细介绍
Aug 07 Python
python 3.6.7实现端口扫描器
Sep 04 Python
使用tensorflow实现VGG网络,训练mnist数据集方式
May 26 Python
python openpyxl模块的使用详解
Feb 25 Python
pycharm新建Vue项目的方法步骤(图文)
Mar 04 #Python
使用Python发现隐藏的wifi
Mar 04 #Python
PyCharm GUI界面开发和exe文件生成的实现
Mar 04 #Python
python实现井字棋小游戏
Mar 04 #Python
python tkinter 设置窗口大小不可缩放实例
Mar 04 #Python
Python tkinter 下拉日历控件代码
Mar 04 #Python
Python Tkinter Entry和Text的添加与使用详解
Mar 04 #Python
You might like
晶体管来复再生式二管收音机
2021/03/02 无线电
php图片验证码代码
2008/03/27 PHP
一个比较不错的PHP日历类分享
2014/11/18 PHP
extjs 列表框(multiselect)的动态添加列表项的方法
2009/07/31 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
2014/01/02 Javascript
基于jquery和svg实现超炫酷的动画特效
2014/12/09 Javascript
node.js中的fs.appendFile方法使用说明
2014/12/17 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
JQuery中上下文选择器实现方法
2015/05/18 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
浅谈jQuery中ajaxPrefilter的应用
2016/08/01 Javascript
通过JS和PHP两种方法判断用户请求时使用的浏览器类型
2016/09/01 Javascript
学习Node.js模块机制
2016/10/17 Javascript
实例分析浏览器中“JavaScript解析器”的工作原理
2016/12/12 Javascript
BootStrap实现轮播图效果(收藏)
2016/12/30 Javascript
详解Angular2 关于*ngFor 嵌套循环
2017/05/22 Javascript
使用vue中的v-for遍历二维数组的方法
2018/03/07 Javascript
微信小程序实现倒计时调用相机自动拍照功能
2018/06/10 Javascript
python 编程之twisted详解及简单实例
2017/01/28 Python
Python实现随机漫步功能
2018/07/09 Python
python验证身份证信息实例代码
2019/05/06 Python
10种CSS3实现的loading动画,挑一个走吧?
2020/11/16 HTML / CSS
拥有超过850家商店的美国在线派对商店:Party City
2018/10/21 全球购物
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
C# .NET面试题
2015/11/28 面试题
Linux文件操作命令都有哪些
2016/07/23 面试题
企业安全生产标语
2014/06/06 职场文书
消防志愿者活动方案
2014/08/23 职场文书
教育实践活动对照检查材料
2014/09/23 职场文书
承诺函格式模板
2015/01/21 职场文书
第一军规观后感
2015/06/12 职场文书
新闻通讯稿范文
2015/07/22 职场文书
nginx基于域名,端口,不同IP的虚拟主机设置的实现
2021/03/31 Servers
python读取pdf格式文档的实现代码
2021/04/01 Python
Python基础 括号()[]{}的详解
2021/11/07 Python
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android