看我如何自制安全的远程控制工具

内容提供:知道创宇404实验室rungobier
整理撰写:芝士

在文章正式开始之前,我先带大家来看一段《生活大爆炸》第一季第9集的片段。

在第一季开播时,这部剧里就有非常炫酷的一幕——几个室友凑在一起用电脑远程控制了家里的家居。

(本文中提到的远程控制都是指自己控制自己的设备,而不是别人的。)
看我如何自制安全的远程控制工具_第1张图片
远程控制的成功让这4个宅男瞬间兴奋。期间,谢耳朵还试图向他们的美女邻居Penny解释这件事让他们兴奋的原因:
看我如何自制安全的远程控制工具_第2张图片

好,看完了吗?下面正式开始:

熟悉我的朋友应该知道,我写的上一篇的文章——《硬核分享|探针盒子?不用怕!手把手教你打造专属隐私保护工具》(有兴趣的朋友可以去回顾一下)

那篇文章的主要讲了如何用树莓派+通信模块来制造一个小工具来帮助我们避免信息泄漏。虽然制作过程是麻烦了些,但是最终效果还是不错滴~

看我如何自制安全的远程控制工具_第3张图片

今天我就延续上次的思路,围绕树莓派来讲如何通过它来进行远程控制!

看我如何自制安全的远程控制工具_第4张图片

上周,我们知道创宇404实验室的大佬rungobier给我甩过来一个视频,如下:


在视频里他酷炫的给我演示了如何通过微信使用语音来远程控制他的树莓派。语音识别他是调用的百度的语音识别的API。

(延时有点高啊喂!是因为这个指令真的绕了地球一圈。)

除了可以用语音控制之外还可以用shell指令执行和直接发文字。

看我如何自制安全的远程控制工具_第5张图片

并且在之前只能单向接收短信的基础上还加上了能远程控制树莓派发送短信和拨打电话的功能。

看我如何自制安全的远程控制工具_第6张图片

紧接着,他便开始给我讲为什么要制作这么一个工具以及如何实现这些功能。这一幕像极了刚才视频里的…

看我如何自制安全的远程控制工具_第7张图片

为什么要制作这个装置?

可能刚刚这些功能在大家眼里看来很弱鸡,这不就是个遥控器?智能家居?有啥意思呀?

弱鸡的原因是确实现在我们只是在初步试验阶段,目前只用来控制一些最基础的东西。

看我如何自制安全的远程控制工具_第8张图片
这一点大佬rungobier其实早想到了,所以在一开始制作时就预留了扩充指令的配置,使得这个工具可以有非常多的扩展思路!等扩展起来后,功能的进化也就如同超体一般…

比如:

  • 和电脑结合——远程控制家里电脑下载权利的游戏;(回家就能看上热乎乎的剧!)
  • 和智能门锁结合——远程控制家里开关大门;(再也不怕出门后纠结自己关门没!)
  • 和摄像头结合——加入动态识别或随时指令回传照片;(家里进入了奇怪的东西,马上给你回传照片!)
  • 和家用NAS设备结合——远程唤醒(到家前就先给我准备好! )

更多扩展方法欢迎大家留言分享,让我看看你们脑洞有多大。

有点偏题了,我回到正轨:然而就是这个看起来弱鸡的控制工具,它却要比传统的家用智能家居和一些物联网设备要安全很多。这就是我们制作这个装置的原因之一——它很安全。

除此之外,我们也想通过这个装置向大家展示,其实物联网设备是完全可以被远程控制的。这就意味着,如果你没有及时更新升级家里的物联网设备,等某一天漏洞爆发,它很有可能就成为了攻击者的目标。导致的结果自然就是你的生活隐私被轻松窃取,并且这些设备有可能变成攻击者的“帮凶”,成为他们发起网络攻击的肉鸡。

那么它是如何实现的,并且怎么做到安全?

先给大家看一个我画的示意图:

看我如何自制安全的远程控制工具_第9张图片

我就照着这个图来给大家讲讲,它是怎么实现的。

1 使用手机通过微信发出指令给VPS

我们用VPS来中转指令的原因是,树莓派在公网是没有开直接的端口。不知道端口是什么的同学,你们可以把它理解为这是联系树莓派的途径。就好像我联系朋友的途径有电话、短信、微信等…

所以如果我们不采用这种端口映射的方式,就很难找到我们的树莓派。(好比你的朋友关掉的手机,拉黑了你微信,让你找不到她)

这时的VPS其实充当了邮局的角色。在没有通信设备的以前,我要找到一个人是很难的。但是如果我们通过写信的方式,让邮局去帮我找这个人,就容易多啦~

并且我们对这台VPS做了防护和伪装,用配置文件的方式将它伪装成了nginx。如果不对这台VPS进行伪装,它特征明显的服务会很轻松通过我们的网络空间搜索引擎ZoomEye搜索到

但是在伪装成nginx后,我们在ZoomEye里面搜索nginx,得到了超过7000万条的数据,并且这个数据还一直在增加。
看我如何自制安全的远程控制工具_第10张图片
这样就能让我们的VPS化为一滴水,融入茫茫的信息大海。

2 树莓派对暗号

其实我们的树莓派在运行的时候从来就没有休息过,因为它一直在找VPS对暗号。

“歪歪歪,VPS你在吗?暗号是‘天王盖地虎’请问有我的消息吗?”

看我如何自制安全的远程控制工具_第11张图片

有暗号的好处就是,我们下达的指令不会被轻易窃取。当我们还没有给VPS发送指令时(也就没有步骤1时)爬虫和我们的暗号访问得到的信息是一样的,而当我们有指令发出时,就只有暗号才能访问到我们推给VPS的指令。

3 当指令送达VPS并且树莓派发送的暗号对上时

树莓派:”天王盖地虎!“

看我如何自制安全的远程控制工具_第12张图片

VPS:”宝塔镇河妖!OK,暗号对上了,给,这是你的指令请查收“

在这里插入图片描述

4树莓派:“收到指令,开始执行!”

5树莓派执行完指令后,会通过微信或邮件将信息传回手机

这部分的原理,就和上一篇文章里“转发短信”的原理是一样的。利用树莓派中的通信模块,给我们的手机推送微信或是发邮件。

以上就是一整套的控制流程,通过这样的方式我们才算真正做到了数据可控。因为信息都经过加密并通过我们的自己的通信信道来传递,避免了数据被截取。

具体的代码和调试过程都已经放到GitHub啦,需要自取

项目地址:
看我如何自制安全的远程控制工具_第13张图片

总结

其实当我们停下来仔细回想这些过程时,会觉得有点“细思极恐”。

随着5G和物联网时代的来临,未来我们的生活中将不可避免的被渗透越来越多的物联网设备,而这样的设备一多,潜在的威胁也跟着多了起来。

远程控制,数据截取等等都是现实中存在的风险。为此我们也在一直研究物联网安全方面相关问题,只为在未来能让物联网更加安全。

相信大家在读完我这篇文章后,会出现和视频里一样的两种反应。

一种朋友是:

看我如何自制安全的远程控制工具_第14张图片

而另一种朋友就是:

看我如何自制安全的远程控制工具_第15张图片
最后感谢咱们404实验室大佬rungobier为文章提供的技术内容。


欢迎关注我和专栏,我将定期搬运技术文章~

也欢迎访问我们:知道创宇

如果你想与我成为朋友,欢迎加微信kcsc818~

你可能感兴趣的:(看我如何自制安全的远程控制工具)