使用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(一)Python环境安装
Aug 20 Python
Python构造函数及解构函数介绍
Feb 26 Python
Python实现图片转字符画的示例代码
Aug 21 Python
Python实现的根据文件名查找数据文件功能示例
May 02 Python
python实现图片识别汽车功能
Nov 30 Python
python实现弹跳小球
May 13 Python
pyqt5让图片自适应QLabel大小上以及移除已显示的图片方法
Jun 21 Python
python json 递归打印所有json子节点信息的例子
Feb 27 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
Mar 02 Python
python 实现 hive中类似 lateral view explode的功能示例
May 18 Python
Python带你从浅入深探究Tuple(基础篇)
May 15 Python
Python机器学习应用之工业蒸汽数据分析篇详解
Jan 18 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
打造计数器DIY三步曲(中)
2006/10/09 PHP
php设计模式 Chain Of Responsibility (职责链模式)
2011/06/26 PHP
PHP的SQL注入过程分析
2012/01/06 PHP
PHP开发框架kohana3 自定义路由设置示例
2014/07/14 PHP
php简单获取文件扩展名的方法
2015/03/24 PHP
PHP编程实现计算抽奖概率算法完整实例
2017/08/09 PHP
Ajax+PHP实现的模拟进度条功能示例
2019/02/11 PHP
php命令行模式代码实例详解
2021/02/26 PHP
基于jquery的大众点评,分类导航实现代码
2011/08/23 Javascript
JS 表单验证大全
2011/11/23 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
2014/10/14 Javascript
javascript中类的定义方式详解(四种方式)
2015/12/22 Javascript
js为什么不能正确处理小数运算?
2015/12/29 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
React-Native使用Mobx实现购物车功能
2017/09/14 Javascript
微信小程序简单实现form表单获取输入数据功能示例
2017/11/30 Javascript
微信小程序实时聊天WebSocket
2018/07/05 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
Python处理文本文件中控制字符的方法
2017/02/07 Python
Python日期的加减等操作的示例
2017/08/15 Python
python机器学习之神经网络(二)
2017/12/20 Python
Selenium元素的常用操作方法分析
2018/08/10 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
Django CSRF跨站请求伪造防护过程解析
2019/07/31 Python
Pytorch实现GoogLeNet的方法
2019/08/18 Python
python圣诞树编写实例详解
2020/02/13 Python
初中科学教学反思
2014/01/21 职场文书
婚假请假条怎么写
2014/04/10 职场文书
代办委托书怎么写
2014/08/01 职场文书
祖国在我心中演讲稿200字
2014/08/28 职场文书
岗位聘任报告
2015/03/02 职场文书
2015年新教师个人工作总结
2015/10/14 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
2016社区平安家庭事迹材料
2016/02/26 职场文书