使用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 生成不重复的随机数的代码
May 15 Python
python字典序问题实例
Sep 26 Python
python socket多线程通讯实例分析(聊天室)
Apr 06 Python
解析Mac OS下部署Pyhton的Django框架项目的过程
May 03 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
Aug 18 Python
Python代码块批量添加Tab缩进的方法
Jun 25 Python
python实现随机漫步算法
Aug 27 Python
python+mysql实现学生信息查询系统
Feb 21 Python
Python正则表达式实现简易计算器功能示例
May 07 Python
pytorch实现查看当前学习率
Jun 24 Python
Visual Studio code 配置Python开发环境
Sep 11 Python
python如何做代码性能分析
Apr 26 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
PHP 转义使用详解
2013/07/15 PHP
php自定义类fsocket模拟post或get请求的方法
2015/07/31 PHP
PHP简单验证码功能机制实例详解
2019/03/27 PHP
Javascript入门学习资料收集整理篇
2008/07/06 Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
2009/07/06 Javascript
javascript中的事件代理初探
2014/03/08 Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
2016/11/25 Javascript
有趣的bootstrap走动进度条
2016/12/01 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
2019/03/04 Javascript
原生js实现自定义滚动条
2021/01/20 Javascript
vue穿梭框实现上下移动
2021/01/29 Vue.js
在Python中使用全局日志时需要注意的问题
2015/05/06 Python
python实现类之间的方法互相调用
2018/04/29 Python
python3将视频流保存为本地视频文件
2018/06/20 Python
pycharm激活码有效到2020年11月底
2020/09/18 Python
np.random.seed() 的使用详解
2020/01/14 Python
Python通过正则库爬取淘宝商品信息代码实例
2020/03/02 Python
Python3实现打印任意宽度的菱形代码
2020/04/12 Python
Python使用matplotlib绘制圆形代码实例
2020/05/27 Python
魔幻般冒泡背景的CSS3按钮动画
2016/02/27 HTML / CSS
深入剖析HTML5 内联框架iFrame
2016/05/04 HTML / CSS
移动端Html5页面生成图片解决方案
2018/08/07 HTML / CSS
Java中compareTo和compare的区别
2016/04/12 面试题
会计岗位描述
2014/02/22 职场文书
党员“四风”方面存在问题及整改措施
2014/09/24 职场文书
2014年纪检部工作总结
2014/11/12 职场文书
婚前保证书范文
2015/02/28 职场文书
离婚承诺书格式范文
2015/05/04 职场文书
2015年科协工作总结
2015/05/19 职场文书
SQL Server2019数据库之简单子查询的具有方法
2021/04/27 SQL Server
Redis 报错 error:NOAUTH Authentication required
2022/05/15 Redis
Python数组变形的几种实现方法
2022/05/30 Python
浅谈Redis变慢的原因及排查方法
2022/06/21 Redis