文章分页功能可以快速定位到想看的内容哦~
没想到,开发者仅使用谷歌搜索引擎就发现了现代摩比斯制作的D-Audio2系统的定制固件存在重大缺陷。
Register 指出,由于车载信息娱乐系统(IVI) 接受受密码保护的基于ZIP 的固件更新文件。
因此,可以绕过这种简单的存档保护来访问相关内容,包括IVI 组件的加密固件映像。
开发人员随后设法创建了自己的固件映像并将其加密为车载系统可以接受、安装和运行的ZIP 文件格式,从而允许使用黑客提供的代码来控制硬件。
截图(来自:编程同风格)
这期间最幸运的是“greenluigi1”在Mobis网站上找到了一个Linux安装脚本——。此脚本旨在为系统更新创建合适的ZIP 文件。
该脚本包括系统存档所需的ZIP 密码、AES 对称加密区块链(CBC) 的加密密钥(一个单独的密钥,而不是RSA 非对称公钥/私钥对)和初始化向量(IV 值)。
同时这些信息也可以用来解密图片,也就是说greenluigi1可以使用AES密钥解压修改,然后通过官方脚本重新打包ZIP格式加密的压缩包,用于用于现代IVI 的系统更新。
当然,实际操作起来还是没有看上去那么简单。至少所提供数据的某些部分仍需要使用RSA 私钥进行加密和签名。
此外,更新程序需要使用与私钥相对应的RSA 公钥来检查数据是否使用正确的私钥—— 签名,这意味着greenluigi1 需要找到RSA 私钥才能更进一步。
在5 月份的一篇博文中,他解释说该脚本暗示它正在使用RSA 签名,但遗憾的是该密钥并未包含在源代码中。
然而,更大的错误是原始脚本中的AES 加密密钥实际上指向NIST 文档SP800-38A 中列出的第一个AES 128 位CBC 示例密钥。
虽然加密社区普遍意识到CBC难以正常部署,建议使用其他方式代替,但车企还是照办了。
此外,微软去年警告说,根据已知的密码学研究,如果不首先确保密文的完整性,例如在极其特殊的情况下应用可验证的填充,CBC 模式加密的数据将不再安全。
由于Modern TIME(查成交价|参配|优惠政策)s错误地使用了AES CBC方案和网上公布的另一个密钥作为私钥,greenluigi1能够使用这个对称密钥提取更新ZIP包中一个加密固件镜像文件的内容。
在提取的文件中,他找到了处理IVI 更新的软件(称为updateAgent 的二进制文件)。
加密的zip 存档
有了zip 密码和加密密钥,他决定继续寻找签名密钥。好在公司不仅留下了公钥,连私钥也挂了。
幸运的加持下,greenluigi1在固件镜像中找到了更新程序使用的RSA公钥,上网搜索了一些密钥。
列出的文件
搜索结果指向出现在RSA 加密和在线教程(如c 中的OpenSSL 解密示例)中的公钥。
这意味着现代“实习生”直接应用教程中的公钥对,并将公钥插入到源代码中。
这样greenluigi1 就可以追溯到配对的私钥,并最终为IVI 可以接受的自定义固件的更新程序签名。
对于此事,截至发稿,现代汽车尚未回应外媒的置评请求。
正在加载中...
海报生成中...
生成失败