电动玩具变身“开锁神器” 10秒内开车库门(附视频)

简介:

安全研究人员将一款电动玩具打造为“开锁神器”,可在几秒内打开几乎任何有固定密码的车库门。虽然目前这个电动玩具已不再公开售卖,但你依然可从eBay上花12美元到100多美元淘到。

电动玩具变身“开锁神器” 10秒内开车库门(附视频)

正常攻击需耗费30多分钟

尽管因为通过极其有限的密钥空间绕过由固定密码系统的安全守护,但一次正常的攻击依然需要比较长的时间。

安全研究人员Samy Kamkar表示,对于一般带有12个二进制指拨开关的车库开门器来说,要找到正确的密码,共有4096次可能的组合。而且发送一个字节需要2毫秒,发送下一个字节需要再等待2毫秒。此外,每次点击后一个单独密码会被发送五次。

他计算后发现要暴力打开整个8、9、10、11、及12字节的密钥空间需要29分钟,前提是攻击者知道所有的细节信息(频率及传输速率)。

芝麻开门:10秒内开门

Kamkar提出一种他称之为“芝麻开门(OpenSesame)”的开车库方法——可将开门时间缩短为不到10秒钟。而一款名为Radica Girltech IM-ME的电动玩具中恰好包含发送密码需要的组件(CC1110 RF芯片)。

电动玩具变身“开锁神器” 10秒内开车库门(附视频)

Kamkar删除了代码传输及等待时间,并且设法将时间缩短到大概3分钟。通过利用德布鲁因序列,他设法在8.2秒内成功实施了暴力破解。

Kamkar还利用Travis Goodspeed的GoodFET适配器重新设定了IM-ME玩具的程序,并且创建了可处理发送代码的“芝麻开门”代码。

攻击源码公布

Kamkar已公开了源代码,但表示故意进行了处理以防止被恶意利用。

“这些源码基本可以用,但并不是特别好用,而且发布源代码是出于教育的目的。如果你是RF跟微控制器方面的专家,你可以搞定,但这样的话,你原本就不需要我的帮助,不是吗?”

受“芝麻开门”攻击影响的厂商包括Nortek及North Shore Commercial Door。攻击还在以下厂商的老旧系统中奏效:Chamberlain、Liftmaster、Stanley、Delta-3以及Moore-O-Matic。

安全研究人员建议将系统升级到显著标注滚动码、调频码、安全+或智能码的系统,因为这些系统将能够阻止攻击以及传统的暴力破解尝试,尽管这并非完全安全的解决方案。

视频演示


作者:codename


来源:51CTO



相关文章
|
小程序 物联网
基于STM32F103设计的智能门锁(支持多种开锁解锁方式)
基于STM32F103设计的智能门锁(支持多种开锁解锁方式)
995 0
基于STM32F103设计的智能门锁(支持多种开锁解锁方式)
|
8月前
|
弹性计算 安全 Linux
阿里云服务器镜像解析:镜像类型对比、适用场景与选择策略参考
阿里云服务器镜像,作为ECS实例的“装机盘”,不仅提供了操作系统,还包含了初始化应用数据和预装软件,云服务器镜像的选择对于云服务器的性能和稳定性起着至关重要的作用,选择合适的镜像对于云服务器的性能和稳定性至关重要。本文将深入解析阿里云服务器提供的多种镜像类型,从公共镜像到社区镜像,全面介绍每种镜像的特点、优势以及选择建议,帮助用户根据自身需求做出适合自己的选择。
1092 12
|
存储 前端开发 测试技术
Android Kotlin中使用 LiveData、ViewModel快速实现MVVM模式
使用Kotlin实现MVVM模式是Android开发的现代实践。该模式分离UI和业务逻辑,借助LiveData、ViewModel和DataBinding增强代码可维护性。步骤包括创建Model层处理数据,ViewModel层作为数据桥梁,以及View层展示UI。添加相关依赖后,Model类存储数据,ViewModel类通过LiveData管理变化,而View层使用DataBinding实时更新UI。这种架构提升代码可测试性和模块化。
599 2
|
12月前
|
设计模式 网络协议 Java
02.单一职责原则详解
单一职责原则(SRP)是面向对象设计的重要原则,强调一个类或模块应仅负责完成一个特定的职责或功能。通过将复杂的功能分解为多个粒度小、功能单一的类,可以提高系统的灵活性、可维护性和可扩展性。本文详细介绍了如何理解单一职责原则,包括方法、接口和类层面的应用,并通过具体例子解释了其优势和判断标准。此外,还探讨了在实际开发中如何平衡类的设计,避免过度拆分导致的复杂性增加。
406 5
|
12月前
|
监控 Java 开发者
深入理解Java中的线程池实现原理及其性能优化####
本文旨在揭示Java中线程池的核心工作机制,通过剖析其背后的设计思想与实现细节,为读者提供一份详尽的线程池性能优化指南。不同于传统的技术教程,本文将采用一种互动式探索的方式,带领大家从理论到实践,逐步揭开线程池高效管理线程资源的奥秘。无论你是Java并发编程的初学者,还是寻求性能调优技巧的资深开发者,都能在本文中找到有价值的内容。 ####
|
12月前
|
机器学习/深度学习 人工智能 计算机视觉
深度学习在医疗影像分析中的应用与挑战
本文探讨了深度学习技术在医疗影像分析领域的应用现状和面临的主要挑战。随着人工智能技术的飞速发展,深度学习已经成为推动医疗影像诊断自动化和智能化的重要力量。文章首先概述了深度学习的基本原理及其在图像识别任务中的优势,随后详细讨论了其在CT、MRI等医疗影像处理中的成功案例,并分析了当前技术面临的数据隐私、模型解释性以及临床验证等方面的挑战。最后,提出了未来研究的方向和可能的解决方案,旨在促进深度学习技术在医疗领域的更广泛应用。
295 0
|
小程序 JavaScript 前端开发
微信小程序(十七)小程序监听返回键跳转事件(安卓返回也适用)
onUnload:function(){ wx.redirectTo({ url: '../index/index' }) wx.navigateTo({ url: '../index/index' }) wx.switchTab({ url: '../../member/member' }) }
1739 0
|
存储 前端开发 NoSQL
如何设计 QQ、微信等第三方账号登陆 ?还要我说出数据库表设计!
如何设计 QQ、微信等第三方账号登陆 ?还要我说出数据库表设计!
568 2
|
域名解析 IDE 小程序
腾讯云服务器备案全流程 40天备案的血与泪(二)
腾讯云服务器备案全流程 40天备案的血与泪
893 0
|
应用服务中间件 nginx Docker
深入理解Dockerfile:构建镜像的详细解释与常用命令(上)
Docker 是一种流行的容器化平台,可将应用程序和其依赖项打包到一个独立的、可移植的容器中。Dockerfile 是构建 Docker 镜像的文本文件,它包含了一系列的指令和配置,用于定义镜像的构建过程。本文将深入解释 Dockerfile 的工作原理,并介绍常用的 Dockerfile 指令和构建命令,以帮助读者更好地理解和使用 Docker。
2306 0