通缉!可以使用您的电子邮件地址入侵的家庭安全系统

漏洞和红队公司 Rapid7 的一名研究人员最近发现了数字家庭安全产品中的两个危险安全漏洞。

第一个漏洞于 2021 年 5 月报告并被称为 CVE-2021-39276,这意味着知道您注册产品所用的电子邮件地址的攻击者可以有效地使用您的电子邮件作为密码向系统发出命令,包括将整个警报关闭。

受影响的产品来自Fortress Security Store公司,该公司销售两种品牌的家庭安全设置,入门级S03 Wifi 安全系统,起价 130 美元,以及更昂贵的S6 Titan 3G/4G WiFi 安全系统,起价 250 美元。

勇敢的研究员 Arvind Vishwakarma 获得了 S03 启动系统,其中包括控制面板、遥控钥匙、门窗传感器、运动探测器和室内警报器。

(该公司还销售额外的遥控钥匙和传感器、室外警报器,它们的声音可能更大,以及“宠物免疫”运动探测器,我们认为它们不如常规探测器灵敏。)

不幸的是,Vishwakarma 并没有花费太多时间来破坏系统,并找出如何在本地和远程未经授权的情况下对其进行控制。

RESTful 解释

像许多现代物联网 (IoT) 产品一样,Fortress Security 产品利用互联网上基于云的服务器进行控制和监控,通过在行话中称为 Web API(应用程序的缩写)的方式访问 Fortress 云编程接口。

而且,与大多数现代 Web API 一样,Fortress 使用称为 REST 的编程风格,代表状态传输的缩写,其中数据通过 HTTPPOST命令发送到 API ,并使用GET命令检索,使用一组静态的、定义明确的 URL以编程方式作为基于 Web 的“函数调用”。

在过去,Web API 通常将他们想要发送和接收的数据嵌入到 URL 本身中,以及任何需要的数据,包括密码或身份验证令牌,作为参数添加在末尾,如下所示:

GET/functions/status?id=username&password=W3XXgh889&req=activate&value=1 HTTP/1.1

主机:example.com

但是每次都构建唯一的 URL 对服务器来说很麻烦,并且往往会将敏感数据泄漏到日志文件中,因为 URL 访问历史通常是为了故障排除或其他目的而存储的,因此应该避免将查询特定的数据编码到其中。

(谨慎的防火墙和具有安全意识的 Web 服务器会在记录 URL 之前尽力从 URL 中编辑敏感信息,但最好在 URL 中根本没有机密数据。)

RESTful API,正如他们通常所说的那样,使用一致的 URL 列表来触发特定功能,并且通常将上传和下载的参数打包到 HTTP 请求的其余部分中,从而使 URL 没有潜在的机密数据。

例如,如果您使用 Sophos Intelix进行实时威胁查找,您首先需要使用您的用户名和密码进行身份验证,这会为您提供一个名为 an 的会话密码,该密码access_token在接下来的 60 分钟内有效。

只有一个 RESTful 身份验证 URL,您的用户名和密码(Intelix 仅接受 HTTPS 请求,以确保数据交换安全)在请求中发送,如下所示:

POST https://api.labs.sophos.com/oauth2/token HTTP/1.1

主机:api.labs.sophos.com

授权:[已编辑 - 此处提供的用户名和密码]

内容类型:应用程序/x-www-form-urlencoded,

连接:关闭

grant_type=client_credentials

Fortress API 的工作方式类似,但 Vishwakarma 很快发现他不需要预先通过身份验证阶段。

相反,他能够按照以下方式发送请求:

发布 https://fortress.[已编辑].com/api?HTTP/1.1

主持人:fortress.[已编辑].com/api?

内容类型:应用程序/json

连接:关闭

{ cmd=GETINFO [...], user_name="XXXXXX" }

尽管他只user_name在请求中提供了 a ,但他收到了一个包含标有 JSON 字符串的回复,这是IMEI一个通常用于移动电话上下文中的首字母缩写词,也是国际移动设备标识的缩写。

每部手机,无论是否插入 SIM 卡,都有一个 IMEI 由制造商刻录到设备中(拨打神奇的电话号码*#06#查看您的),手机运营商使用它来跟踪您在网络上的物理设备并将被盗手机列入黑名单。

IMEI 被认为有害

由于 IMEI(发音为eye-me,与blimey押韵)是您的设备所独有的,因此强烈建议您不要将其透露给其他任何人。

您当然不应该将您的 IMEI 当作用户名或公共标识符来使用,并且 Google Play 和 Apple App Store 等精选在线市场中的移动应用程序不允许收集它们,因为会考虑 IMEI 抓取应用程序默认情况下是恶意的。

尽管入门级的S03家庭安全产品不带SIM卡,只能通过Wi-Fi网络工作,但堡垒机似乎仍然用一个数字代码来唯一标识每个设备,它指的是一个IMEI。

(我们猜测这是为了让 S03 可以与更昂贵的 S6 Titan 产品共享源代码,该产品有一个 SIM 卡插槽,因此有自己的内置 IMEI。)

不幸的是,这个 IMEI 不仅用作用户名,这本身是不明智的,而且还用作完整的密码,可以在未来对 Fortress Web API 的请求中用作永久有效的身份验证令牌。

换句话说,只要知道您的 Fortress user_name,Vishwakarma 就可以获取您设备的 IMEI,然后只需知道您的 IMEI,他就可以向您的设备发出经过身份验证的命令,例如:

发布 https://fortress.[已编辑].com/api?HTTP/1.1

主持人:fortress.[已编辑].com/api?

内容类型:应用程序/json

连接:关闭

{ cmd=ACTIVATE [...], imei="KNOWNVALUE", op=0, user_name="XXXXXX" }

在上面的命令中,数据项op似乎代表操作数,该名称通常用于提供给计算机功能或机器代码指令的数据。(在诸如 之类的汇编代码行中 ADD RAX,42,值RAX和42是操作数。)

如上所示,作为操作数指定给命令 ACTIVATE 的值 0 完全符合您的预期:它关闭了警报!

当然,要找出KNOWNVALUE您帐户的 IMEI/密码,攻击者首先需要知道 的值XXXXXX。

可悲的是,正如 Vishwakarma 发现的那样,XXXXXX这只是您的电子邮件地址,或者更准确地说是您在设置系统时使用的电子邮件地址。

简而言之:猜测电子邮件地址 ==> 获得永久验证码 ==> 随意远程解除警报。

福布斯也被打败了

Vishwakarma 还研究了系统附带的钥匙扣(遥控按钮,例如打开车库门或解锁汽车的按钮)的安全性。

Vishwakarma 使用了一种时髦但越来越实惠的设置,称为 SDR,是软件定义无线电的缩写,一种可重新编程的发射器和接收器系统,可以适应在大范围的不同频率下工作并模拟各种不同的无线电套件。

您需要一个高端 SDR 设置来处理非常高频的设备,例如 Wi-Fi(5GHz 和 2.4GHz),但价格低于 50 美元的硬件加密狗具有足够的性能来“监听”433MHz 的传输,遥控器等遥控设备常用的频段。

理论上,正确配置的 SDR 可以可靠且轻松地记录钥匙扣在锁定或解锁您的汽车、车库或家庭安全系统时发出的准确无线电信号。

相同的 SDR 可以稍后播放相同的传输。

从这个意义上说,SDR 就像蜡块或肥皂一样使用老式钥匙,攻击者(或犯罪小说中的私家侦探)可以在今天给你的门钥匙留下印象,然后投下一个明天自己用copy。

然而,数字密钥卡与传统钥匙相比有一个显着优势,即它可以在每次按下按钮之间“变形”。

通过使用加密算法来改变每次传输的实际数据,就像手机安全应用程序生成的那些不断变化的 2FA 代码一样,精心设计的密钥卡应该能够抵御所谓的重放攻击。

这种动态代码重新计算,通常基于在配置密钥卡时在密钥卡和控制单元之间安全共享的数字秘密,意味着今天记录的无线电代码明天甚至两分钟后都将无法使用。

可悲的是,正如您可能已经猜到的那样,Vishwakarma 发现 Fortress S03 遥控器在每次按下时都不会产生一次性代码,而是反复使用相同的代码,这个漏洞现在被称为 CVE-2021-39277 .

简而言之:将鼠标悬停在某人家附近 ==> 捕获遥控器“警报关闭”传输一次 ==> 稍后随意取消警报。

该怎么办?

根据 Rapid7 的说法,Fortress 决定不回应这些漏洞,并于 2021 年 5 月关闭报告,并且不反对该公司在 2021 年 8 月底提出的漏洞披露建议。

因此,该公司似乎没有计划任何类型的固件更新,无论是针对其控制单元还是密钥卡,因此这些漏洞将不会被修补,至少在已售出的系统中是这样。

因此,如果您有这些系统之一,或者您怀疑可能来自同一原始设备供应商的不同品牌下的类似系统,您可以使用两种解决方法:

使用攻击者不太可能知道或猜到的电子邮件地址。例如,Webmail 服务(例如 Outlook 和 Gmail)允许您为主帐户设置多个电子邮件别名,只需+ABCDEFG在常规电子邮件名称的末尾添加文本即可。例如,如果您使用nickname@example.com常规电子邮件地址,那么nickname+random5XXG8@example.com即使两个地址不匹配,邮件也应该发送到同一个邮箱。请注意,这是obscurity 安全性的一个示例,因此它不是理想的解决方案,但它确实使攻击者或脾气暴躁的朋友或家人的事情变得更加困难。

完全避免使用遥控钥匙。这意味着您将始终需要随身携带笔记本电脑或手机,或者直接从控制面板执行所有操作,但是如果您从未将遥控钥匙设置为与您自己的控制单元配合使用,它们就不会泄露任何秘密攻击者可以在随后的重放攻击中使用。

调用所有编码器

再一次,正如我们在谈论 IoT 安全性时经常说的那样:如果您是一名程序员,请不要走捷径,因为您知道这些捷径会再次困扰您和您的客户。

正如我们多次提到的,MAC 地址、UUID 和 IMEI 等设备标识符不适合作为加密机密或密码,因此不要将它们用于该目的。

您传输或显示未加密的加密材料,无论是来自身份验证器应用程序的 2FA 代码、加密文件的初始化向量,还是来自密钥卡的无线电脉冲,都不得重复使用。

对于这类数据,密码学中甚至有一个行话术语:它被称为nonce,是number used once 的缩写,这个词的意思正是它所说的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值