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

Track-SSG   ·   发表于 2019-06-20 11:03:00   ·   漏洞文章

最近《生活大爆炸》在陪伴我们走过12年后正式完结。于是我又开始不禁感叹,自己的青春呀!也随之而去…

u=3600481279,1966475066&fm=26&gp=0.jpg

不过今天我要聊内容,确实和《生活大爆炸》有关系。 

在第一季开播时,这部剧里就有非常炫酷的一幕——几个室友凑在一起用电脑远程控制了家里的家居(本文中提到的远程控制都是指自己控制自己的设备,而不是别人的)。

https://image.3001.net/images/20190522/1558510430_5ce4fb5e9f687.png

看这一连串的骚操作,让信号围绕世界转了一圈,最后他们成功的点亮了自家的……灯

https://image.3001.net/images/20190522/1558510463_5ce4fb7fd567d.png

远程控制的成功让这4个宅男瞬间兴奋。期间,谢耳朵还试图向他们的美女邻居Penny解释这件事让他们兴奋的原因:

https://image.3001.net/images/20190522/1558510496_5ce4fba0e0e3f.png

“看这多酷啊!”

而Penny对此却毫无兴趣…

https://image.3001.net/images/20190522/1558510521_5ce4fbb90c155.png

Penny尴尬的回应 

以此我们可以推断出——宅技术们和妹子有很深的代沟。

不偏题了,下面我要跟大家分享的内容,正好和上面讲到非常类似。

一个自制的远程控制工具

熟悉我的朋友应该知道,上个月我写了一篇文章——

探针盒子?不用怕!手把手教你打造专属隐私保护工具(有兴趣的朋友可以去回顾一下)

那篇文章的主要讲了如何用树莓派+通信模块来制造一个小工具来帮助我们避免信息泄漏。

https://image.3001.net/images/20190319/1552985149_5c90ac3d6210a.png

树莓派+EC20通信模块,能实现自动转发短信

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

前段时间,我们知道创宇404实验室的大佬rungobier给我甩过来一个视频,在视频里他酷炫的给我演示了如何通过微信使用语音来远程控制他的树莓派。

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

https://image.3001.net/images/20190604/1559641499_5cf63d9bb8f66.png

shell指令执行和文字控制界面

并且还能远程控制树莓派发送短信和拨打电话。

https://image.3001.net/images/20190604/1559641544_5cf63dc885d0f.jpeg

控制截图

为什么要制作这个装置?

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

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

https://image.3001.net/images/20190604/1559641605_5cf63e056e71c.png

电影《超体》截图

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

比如:

和电脑结合——远程控制家里电脑下载权力的游戏(回家就能看上热乎乎的剧!)

和智能门锁结合——远程控制家里开关大门(再也不怕出门后纠结自己关门没!)

和摄像头结合——加入动态识别或随时指令回传照片(家里进入了奇怪的东西,马上给你回传照片!)

和家用NAS设备结合——远程唤醒(到家前就先给我准备好! )

更多扩展方法欢迎大家留言分享。

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

除此之外,我们也想通过这个装置向大家展示,其实物联网设备是完全可以被远程控制的。

这就意味着,如果你没有及时更新升级家里的物联网设备,等某一天漏洞爆发,它很有可能就成为了攻击者的目标。导致的结果自然就是你的生活隐私被轻松窃取,并且这些设备有可能变成攻击者的“帮凶”,成为他们发起网络攻击的肉鸡。

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

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

https://image.3001.net/images/20190604/1559641630_5cf63e1e6a189.png

远程控制工具运作示意图(看不清可点击看大图)

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

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

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

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

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

https://image.3001.net/images/20190604/1559641698_5cf63e62cc3b3.png

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

但是在伪装成nginx后,我们在ZoomEye里面搜索nginx,得到了超过7200万条的数据,并且这个数据还一直在增加。

https://image.3001.net/images/20190604/1559642553_5cf641b90b882.png

ZoomEye搜索nginx截图

这样就能让我们的VPS化为一滴水,融入茫茫的信息大海,让它不再轻易被搜索到。

2. 树莓派对暗号

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

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

https://image.3001.net/images/20190604/1559642587_5cf641db31608.png

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

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

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

https://image.3001.net/images/20190604/1559642597_5cf641e55dc07.png

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

image.png

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

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

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

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

具体的代码和调试过程都已经放到GitHub啦,需要自取。项目地址:https://github.com/knownsec/gsm

总结

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

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

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

最后感谢404实验室大佬rungobier为文章提供的技术内容。

*本文作者:知道创宇KCSC——芝士,转载来自FreeBuf


打赏我,让我更有动力~

0 条回复   |  直到 2019-6-20 | 1051 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.