Watcher-映射可解决的安全摄像机

技术部分

  • 1.该程序应能够在本地运行,而不是作为Web服务运行。
  • 2.它能同时在Windows和Linux上运行。
  • 3.应该是可扩展的,因为我们不是在静态环境中。

 为了可移植性,Watcher用C ++ 11编写。由于我愿意重新设计轮子的数量有限,因此SDL(简单DirectMedia层) 提供了跨平台的窗口创建、OpenGL初始化、输入处理和其他一些功能。 ImGu位于SDL和OpenGL之上,用于创建用户界面,同时保持cURL。对于数据管理,SQLite可以从程序本地数据库存储和检索数据,而无需安装“真正的”数据库服务。被受喜爱的cURL 用于与HTTP服务器进行交互,最后,一个JSON库序列化配置文件(例如规则集)和各个插件之间的消息。

在此基础上进一步构建地图,该地图是使用来自远程服务器(当前为Stamen) 图块构建的,但是可以使用与tile servers使用相同规范的大多数OpenStreetMap 

通过ipinfo.io使用其公共API 处理地理定位。每天的速率限制为1000个请求,但是Watcher只会存储需要解析的地址,然后稍后重试。

当前状态

插件体系结构现在可以正常工作,允许添加新但是组件没有太多尽力。找到相机的最基本方法已经实现:一个简单的多线程端口扫描器扫描Internet上某些端口如(80、81、8000)上的Web服务器,然后将所有结果转发到一个插件,该插件试图识别网页是否包含相机是否根据不断增长的规则集。绝大多数摄像机的页面上都有特定的标题,这使它比以前少了很多麻烦。一旦确定了摄像机,该IP地址就会发送到地理位置插件,以便它可以在我们的地图上显示。

扩大覆盖范围

显然,扫描整个互联网需要一段时间。相当长一段时间,特别是如果你想彻底和增加端口数量扫描!即使使用像masscan这样的东西,你也需要一个相当胖的管道和一个高性能路由器。因此,还有两个插件正在开发中:一个将利用Shodan,另一个将使用带有特定目标搜索词的Google。此,

下一个版本正在开发中...

该地图目前非常基本。用户可以滚动,放大/缩小并查看相机标记,但不能选择它们。磁贴流式传输也有点麻烦,有可能将正在使用的磁贴卸载,而仅在几秒钟后再次加载。这不是一个好工作,我可以采取一些捷径来使整个流程更快地运行,但是由于我没有时间限制,因此可以打下坚实的基础并得到自己满意的东西

资源?

当然是开源的。您可以在GitLab找到代码。目前,它仅能在Windows上成功构建,我需要花一些时间整理Makefile

 

翻译自:https://0x00sec.org/t/watcher-mapping-addressable-security-cameras-a-devlog/14650/11

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值