- A+
在我们的物联网(IoT)研究过程中,SEC Consult将审查多种智能性玩具的安全性。 当前的路线图包括以下测试设备:
- Vibratissimo Panty Buster
- MagicMotion火烈鸟
- Realov Lydia
结果是Werner Schober与SEC Consult和应用科学大学St.Pölten合作撰写的硕士论文的基础。 第一个可用的结果可以在本博文的以下章节中找到。
由德国Amor Gummiwaren GmbH公司制造和运营的“Vibratissimo”产品系列及其云平台的性玩具受到严重安全漏洞的影响。 我们提供的信息不仅从技术角度来看,而且从数据保护和隐私角度来看也是如此。 包含所有客户数据(显式图像,聊天记录,性取向,电子邮件地址,明文密码等)的数据库对于互联网上的每个人来说基本上都是可读的。 此外,攻击者可以在未经他们同意的情况下远程感知个人。 如果攻击者在受害者附近(在蓝牙范围内),甚至在互联网上,这可能是可能的。 此外,由于可预测的数字和缺少授权检查,因此可以枚举所有用户的显式图像。
根据Google Play商店和Apple AppStore的官方统计数据,可能会有六位数的用户受到影响。
这些只是我们技术安全公告中的一些漏洞。 继续阅读全文。
从IOT到IOD
近年来,物联网受到越来越多的关注。 它承诺将所有东西与任何东西连接起来:汽车,建筑物,家用电器,甚至更奇特的东西,如冰箱,人行道或婴儿摄像头。
对大多数人来说,这听起来很具有未来感,但绝对不是这样。 未来赶上了我们。
虚拟互联网可以被视为物联网的子类别。 一般来说,每个设备,即人类的快乐,让他们以性方式达到高潮,并且另外连接到某种网络或设备可以被归类为IoD设备。 近年来,随着这一领域受到越来越多的关注,形成了一个全新的研究领域。 这个区域被称为teledildonics,或者称为cyberdildonics,这个术语来自1975年,甚至在维基百科上描述:
“ Teledildonics (也称为”cyberdildonics“)是用于远程性行为(或者至少是远程相互手淫)的技术,其中通过参与者之间的数据链路传达触觉。 这个术语也可以指远程呈现与这些界面所带来的性活动的整合 - 这个术语是由Ted Nelson于1975年出版的计算机图书馆/梦想机器一书中创造的。 “
正如我们所看到的,这个领域在一般意义上并不是“新的”,因为背后的思想已经在40多年前创立。 那时候它只是一个想法。 现在是现实。 为了深入了解teledildonics,研究项目IoD - 假阳具互联网得到了创建。 在该项目中,目前正在根据其软件和硬件审查来自不同制造商的某些设备。
VIBRATISSIMO“PANTY BUSTER”
内裤破坏者是一个性玩具,顾名思义,破坏你的内裤。 它可以通过移动应用程序(Android,iOS)进行远程控制,并且是具有不同功能但具有相同移动应用程序和后端的性玩具巨大“Vibratissimo”产品系列中的一种产品。 它由Amor Gummiwaren GmbH旗下的品牌Vibratissimo销售和销售。 移动应用程序,后端以及硬件和相应的固件由其他公司开发。
用于控制这些设备的移动应用程序不仅仅是普通的遥控器。 这些应用程序提供多种功能,用于沟通和社交,如搜索其他用户,维护朋友列表,视频聊天,留言板以及创建和共享图像库的功能,其中图像可以存储在Vibratissimo中并与朋友共享社交网络。
脆弱性
以下漏洞描述了iOS / Android应用程序中的问题以及相应的后端以及与硬件相关的问题。
- 客户数据库凭证披露
- 互联网上暴露的管理界面
- 明文密码存储
- 未经身份验证的蓝牙LE连接
- 认证机制不足
- 不安全的直接对象参考
- 远程控制中缺少身份验证
- 反射的跨站点脚本
1)客户数据库凭证披露
在主机vibratissimo.com的webroot中找到了一个.DS_STORE文件。 这些文件始终是真正的信息金矿。 通常在MacOS Finder应用程序访问的每个目录中创建.DS_STORE文件。 这些文件存储元数据,如文件夹的显示选项,例如图标位置和视图设置。
如果这些文件是在远程共享(例如webroot)上创建的,则可以使用它们来获取目录列表并枚举webroot的内容。 .DS_STORE文件中的数据以专有的二进制格式存储,详细信息请参见以下链接。 使用python包ds_store解码.DS_STORE文件并找到以下有趣的文件夹:
/config/
除了这个配置文件夹之外,还发现了许多其他的东西,比如文件/目录,在报告这些发现后,供应商立即将其删除。
在config文件夹中,启用了目录列表,找到了一个名为config.php.inc的文件,其中包含以下内容:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Database configuration file ;;;Vibratissimo Server ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
db_host="localhost"
db_name="vibratissimo"
db_user="<redacted>"
db_pass="<redacted>"
攻击者现在拥有整个客户数据库的用户名和密码。 下一步显示攻击者可以使用这些凭据连接到数据库,并阅读有关客户的所有敏感信息,包括图像,性取向和家庭地址等显式内容。
2)互联网上暴露的管理界面
虽然没有直接公开MySQL数据库,但我们在子目录中找到了一个用于数据库管理的phpMyAdmin安装。 可以使用上面的配置文件中的凭据成功登录。 可以访问phpMyAdmin安装,没有任何限制(没有IP白名单等)。 攻击者现在可以访问存储在数据库中的所有客户数据。
3)明文密码存储
用户密码以明文形式存储在数据库中。 如果攻击者获得了对数据库的访问权限(例如,通过凭证披露),他将能够检索用户的明文密码并滥用他们在系统中的权限。 许多人仍然重复使用他们的密码,这也可能导致Vibratissimo环境之外的潜在被劫持帐户。
攻击者本来可以访问以下类型的数据:
- 朋友列表
- 友谊
- 完整的用户信息(真实姓名,家庭住址,明文密码等)
- 图片库
- 交换的消息(包括时间戳和内容)
4)未经认证的蓝牙LE连接
分析的性玩具正在使用蓝牙LE协议与移动应用程序进行通信。 他们使用“无配对”方法,因此容易受到注射攻击。 攻击者可以无限制地控制这些设备,除了在外部天线的附近/范围内。
蓝牙安全基础知识
蓝牙传输安全性在很大程度上取决于两个主要因素:使用的蓝牙版本和密钥交换,即配对方法。 可以在下表中找到不同蓝牙版本之间的差异:
蓝牙LE 4.0,4.1 | 蓝牙LE 4.2 | |
---|---|---|
密钥交换 | 重要协议 | ECDH |
加密方法 | AES-CCM | AES-CCM |
数据速率 | 220 kBit / s | 〜550kBit /秒 |
其他安全功能 | 6LoWPAN(4.1) | LE Privacy 1.2LE安全连接
椭圆曲线密码学 |
蓝牙SIG强烈建议使用蓝牙LE 4.2,原因很明显。 “panty buster”产品目前正在使用蓝牙LE 4.0(出于兼容性原因),尽管它能够使用蓝牙4.2硬件。 除了使用的版本,第二个非常重要的参数是密钥交换。 密钥交换称为配对方法。 以下段落解释了不同的配对方法。
蓝牙密钥交换又名“配对”
口令
密钥配对方法是最常用的方法之一。 必须在设备上输入在启动器侧设置的密钥,该密钥应配对。 此方法可能非常不安全,因为许多设备使用默认密钥0000或1234。
品比较
当没有可用输入时(例如,配对设备,没有任何按钮/键盘),使用此方法。 在连接的启动器和设备本身上显示一个6位数的引脚。 如果两个设备上的引脚匹配,则建立连接。
带外配对
带外配对可以由支持例如NFC的设备使用,其中NFC协议用于交换临时密钥(TK)。
只是工作
正如这个名字已经暗示它只是有效,不幸的是简单往往导致不安全感。 在这种情况下,TK设置为0x00。 这允许攻击者解密整个通信甚至重放数据包。
没有配对
最后一种方法是根本不使用配对。 这是Vibratissimo目前使用的方法。
配对方法取决于以下参数:
- 显示值
- 显示二进制输入(是/否)
- 键盘
- 没有输入/输出
- 键盘/显示可用
很明显,一些配对方法不能与性玩具一起使用。 原因是没有屏幕,键盘或任何输入。 其中一种安全方法是使用OOB配对,或实现某种配对按钮,因为它用于其他性玩具。 没有配对绝对不是一个好选择,因为设备基本上可以由蓝牙范围内的每个人控制。
Swinger Club问题
在与CERT-Bund的多次调用中,制造商,软件开发人员和硬件开发人员进行了一次有趣的讨论。 硬件制造商表示,他们知道没有认证(又名“无配对”)的问题,而且这是性玩具的理想属性。 这样做的原因是,有一个用户组想要被随机的个人控制而不事先询问:Swingers。 根据供应商的说法,摇摆俱乐部的访客喜欢这个功能。
我们认为,知道该功能的用户群相当小,用户中较大的部分可能没有意识到任何人都可以远程打开他们的性玩具这一事实。 这一事实也得到了其他制造商完全相同的其他多个漏洞的证实:
- Lovense Hush
- https://internetofdon.gs/reports/
- Kiiroo Fleshlight,Lelo,Lovense Nora&Max
- Lovense
作为修补程序,硬件制造商已在新固件版本中实现了更安全的配对方法。 用户必须将设备发送到Amor Gummiwaren GmbH才能更新固件,因为没有办法远程执行此操作。 P assword受保护的配对已包含在新设备中,但默认情况下未启用。 从IT安全的角度来看,此功能应该是选择退出功能,而不是选择加入功能。
蓝牙协议反转
为了演示潜在的问题,使用蓝牙LE嗅探器来嗅探性玩具和移动应用程序之间交换的数据包。 使用的硬件是Bluefruit LE嗅探器,用于嗅探的工具是NordicRF Sniffer应用程序。 这个软件在蓝牙LE协议转换方面非常有用,因为它已经附带了正确的Wireshark插件来分析捕获的流量。 下图显示了将Vibratissimo Panty Buster设置为目标的NordicRF嗅探器(“sectest”)。
通过在控制台窗口中按“w”,可以使用所需的插件自动启动Wireshark,并在Wireshark窗口中显示嗅探的数据包。 为了产生有用的流量,Bluefruit LE嗅探器被放置在内裤破坏者和用于控制性玩具的智能手机之间,并且各种振动模式被发送到设备。
在向设备发送各种振动命令后,发现了一种模式。 以下两个句柄用于控制设备:
处理0x001f→0x03(初始化包)句柄0x0025→0x00 - 0xff(振动强度)
在下图中,性玩具设定为振动强度0x88 / 0xFF。
现在可以使用各种工具(例如bluepy,gatttool等)编写此行为,以在没有事先验证的情况下控制范围内的每个Vibratissimo设备。 例如,以下gatttool命令可用于将任意设备的振动强度设置在100%范围内:
gatttool -t random -b CF:DF:7A:FF:FF:FF -Ichar-write-req 0x001f 03char-write-req 0x0025 ff
为了使过程自动化,开发了python概念验证。 python脚本扫描附近的蓝牙LE设备,并尝试查询包含制造商名称的特定服务。 如果服务返回正确的字符串(“Amor AG”),则将振动强度设置为100%的命令发送到所识别的设备。 “Dildo Wardriving”一词可用于此次攻击。
5)认证机制不足
在评估移动应用程序时,确定了其他各种问题,与其他问题相比,这些问题并不重要。 这包括反映的跨站点脚本问题以及移动应用程序对后端的身份验证中的多个问题。 要了解有关这些漏洞的更多信息,请查看我们的技术咨询。
6)不安全的直接对象引用
由于授权中存在缺陷,不安全的直接对象引用漏洞允许攻击者访问受限制的资源。 如果移动应用程序的常规用户将图片上载到后端 ,则会重命名该文件。 新文件名是一个全局计数器,每次上传新图片时都会增加1。 可以通过设置个人资料图片或在应用程序中创建图库来上传图片。 图像存储在webserver /userPictures/$ID.png的以下路径中。
用户可以选择将他们的Vibratissimo配置文件设置为隐藏 (请参见下图,“ Versteckt ”是隐藏的德语)。 这应该可以防止任何人查看它。 但是,仍然可以使用此漏洞查看用户的图像。
供应商表示此行为是有意的。 基于攻击者可用的明确内容, 我们认为有必要与供应商和CERT-Bund 进一步讨论此问题。 由于大多数用户都不知道互联网上的每个人都能看到这些图片 ,因此供应商得出结论认为将来会修复这些图片 。
7)远程控制中缺少认证
移动应用程序允许其用户使用称为“快速控制”的功能。 从接下来的两个图中可以看出,此功能允许用户通过电子邮件或短信向朋友发送带有唯一ID的链接。 然后这位朋友可以远程控制性玩具。
如果包含唯一ID的链接是随机且足够长的,那么这通常不会成为问题。 除此之外,如果接收用户在被其他用户控制之前必须确认遥控器,那将是非常有用的。 目前情况并非如此。 这些ID也是一个全局计数器,每次创建一个新的快速控制链接时,它只会增加1。 攻击者可以简单地猜测这个可预测的ID,以便直接控制受害者。 有一个确认对话框,默认情况下不会激活。 在以下场景中(见下图),在中间的设备上创建了一个快速控制链接。 创建的链接如下所示:
https://vibratissimo.com/quickControl.php?id=11359
左侧设备的用户刚刚为自己创建了一个新的快速控制链接,并减少了他自己的ID(例如11362)几次以获得受害者的遥控器ID。 如果没有确认,攻击者可以直接激活受害者的设备。
以下视频显示了如何轻松地远程控制其他设备:
8)反射的跨站点脚本
在评估移动应用程序时,确定了其他各种问题,与其他问题相比,这些问题并不重要。 这包括反映的跨站点脚本问题以及移动应用程序对后端的身份验证中的多个问题。 要了解有关这些漏洞的更多信息,请查看我们的技术咨询。
脆弱/受影响的设备
Vibratissimo立即删除了包含数据库凭据的配置文件。 此外,对phpMyAdmin管理界面的访问受到限制。 数据库中的密码现在使用算法进行哈希处理,该算法是最先进的。 以下漏洞尚未修复,但已在路线图上,并将根据供应商在一个月(3月底)的时间范围内修复:
- 认证机制不足(问题5)
- 不安全的直接对象引用(问题6)
- 远程控制中缺少身份验证(问题7)
- 反射的跨站点脚本(问题8)
未经身份验证的蓝牙连接存在于固件低于2.0.2的所有设备中。 从2.0.2开始,用户可以设置密码,必须在通过蓝牙通过应用程序控制性玩具之前输入密码。 如果设备的固件版本低于2.0.2,则可以将设备发送到Amor Gummiwaren GmbH ,其中将更新固件。
供应商沟通和最终的话语
由于漏洞的性质,SEC Consult决定联系CERT-Bund(德国联邦信息安全办公室的一部分),以帮助协调德国供应商的披露流程。 在通过PGP加密电子邮件将最关键的问题传输到CERT-Bund后,我们在第二天立即收到回复,并在两小时后收到另一封电子邮件,通知我们最关键的问题已由供应商解决。 CERT-Bund的协调工作非常专业 ,我们要感谢所有参与者。
资料来源: https : //www.sec-consult.com/en/blog/2018/02/internet-of-dildos-a-long-way-to-a-vibrant-future-from-iot-to-iod/的index.html