如何用Python批量发现互联网“开放”摄像头

简介: 第一个“海康威视”: 前段时间爆出海康威视的摄像头存在默认弱口令的问题,那么就先收集下信息。 关于获取IP:可以shodan,zoomeye之类的去搜索或者调用API批量获取,关键词“Hikvision-Webs”,关于其他的关键词可以自行挖掘…也可以进行端口扫描使用nmap或者s扫描器之内的 通过shodan我发现大多数设备开发了80 81 8080 82 之内的端口,那么你就可以使用端口扫描工具扫描这些端口 接下来咱们要登陆并且获取登陆信息用于后面的python。

0?wx_fmt=jpeg


第一个“海康威视”:

前段时间爆出海康威视的摄像头存在默认弱口令的问题,那么就先收集下信息。

关于获取IP:可以shodan,zoomeye之类的去搜索或者调用API批量获取,关键词“Hikvision-Webs”,关于其他的关键词可以自行挖掘…也可以进行端口扫描使用nmap或者s扫描器之内的

通过shodan我发现大多数设备开发了80 81 8080 82 之内的端口,那么你就可以使用端口扫描工具扫描这些端口

接下来咱们要登陆并且获取登陆信息用于后面的python。我随便打开了一个。试试弱口令 admin/12345

0?wx_fmt=jpeg   

通过代码发现,PSIA/System/deviceInfo可以获取设备的信息。

0?wx_fmt=jpeg   

需要进行验证,账号密码与之前的一样

0?wx_fmt=jpeg   

那么我们就利用这个页面来写python。

代码实现:

0?wx_fmt=jpeg   

大致就是使用requests去访问/PSIA/System/deviceInfo这个页面并使用re正则去获取信息。

接下来实现一个简单的多线程:

0?wx_fmt=jpeg   

当然如果有人修改密码,也可以写一个弱口令列表进行扫描:

0?wx_fmt=jpeg   


经过一大串废话,关于海康威视就这样吧。接着看下一个。

第二个 “汉邦高科”:

也是一样有着默认弱口令问题:admin/888888(你要问我怎么知道的?你打开某度搜索汉邦高科默认密码,我相信你可以的)

与之前一样咱们先去找找IP,用shodan搜索NVR Webserver

0?wx_fmt=jpeg   

嗯,可以尝试扫扫这些端口…

随便打开一个,尝试默认的弱口令admin/888888

0?wx_fmt=jpeg   

0?wx_fmt=jpeg   

灰尘简单的就进来了。。。接着查看代码。。发现获取设备信息的地址都差不多/ISAPI/System/deviceInfo,而且还不要验证

代码:

第一种可以与之前一样

0?wx_fmt=jpeg   

直接获取…但是如果有人修改密码肿么办呢

第二种

0?wx_fmt=jpeg   


接下来就是多线程(其实和之前差不多一样…套进去用就行= =):

0?wx_fmt=jpeg   

就这么几十行简单的代码就搞定了,这对于新手朋友来说简单粗爆,容易看懂。对于代码的改进…可以自己修改…

原文发布时间为:2017-04-12

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关文章
|
6月前
|
定位技术 Python
福利!基于 ArcGIS Pro 的Python 教学书籍开放下载
福利!基于 ArcGIS Pro 的Python 教学书籍开放下载
113 0
|
28天前
|
网络协议 安全 网络安全
Python语言的互联网协议支持
Python语言的互联网协议支持
|
算法 数据处理 Python
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
在处理多个相同格式的文件时,python中的许多模块可以为我们提供很多遍历。 比如,我们想读取一个文件夹下多个相同格式的文件时 可以使用os模块,
python ——批量读取相同格式文件(多个文件夹/单个文件夹)---nc文件为例
|
10月前
|
API Python
32.从入门到精通:Python错误输出重定向和程序终止 字符串正则匹配 访问 互联网 日期和时间
32.从入门到精通:Python错误输出重定向和程序终止 字符串正则匹配 访问 互联网 日期和时间
|
10月前
|
存储 JSON Unix
30.从入门到精通:Python3 命名空间和作用域 命名空间 作用域 Python3 标准库概览 操作系统接口 文件通配符 命令行参数 错误输出重定向和程序终止 字符串正则匹配 访问 互联网 日期和
30.从入门到精通:Python3 命名空间和作用域 命名空间 作用域 Python3 标准库概览 操作系统接口 文件通配符 命令行参数 错误输出重定向和程序终止 字符串正则匹配 访问 互联网 日期和
|
存储 SQL 关系型数据库
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
Python玩转阿里云OSS对象存储,批量转存markdown和html图片
|
文字识别 Python
7行python代码实现核算检测批量复查
7行python代码实现核算检测批量复查
77 0
7行python代码实现核算检测批量复查
|
编解码 Python
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
python 批量读取地转流速日资料绘制气候态年平均海表流场(填色为流速)
|
数据安全/隐私保护 Python
python实用脚本:网络设备批量调试及备份
python实用脚本:网络设备批量调试及备份
475 0
python实用脚本:网络设备批量调试及备份
|
运维 安全 网络安全
python paramiko 批量运维管理详解
python paramiko 批量运维管理详解

热门文章

最新文章