针对BMW 联网驾驶 漏洞的改进方案

          事情的起因不再多说,互联网上“宝马 漏洞 ConnectedDrive”一搜就能查到,报道的结果是,德国汽车协会ADDC的研究人员发现,宝马汽车存在严重的漏洞,允许未经授权的攻击者启动车辆。

      以下是此次发现的六个安全漏洞:

1. 宝马在所有的车型中使用了相同的对称密钥

2. 有些服务没有对车辆及宝马后端服务器中传输的信息进行加密

3. ConnectedDrive配置数据没有验证发送源的身份信息

4. Combox通过NGTP错误信息披露了VIN

5. 通过会话消息发送的NGTP信息通过不安全的DES方法进行加密

6. Combox没有针对重放攻击实行防护措施

       现在对上面的专有名词做些解释,Combox是宝马车内一个类似modem的设备,用于将数据发送给宝马公司,它提供访问乘客的互联网通道、向制造商发起遥测数据或者流量信息、或者会在车祸发生时发出紧急服务警报。对于宝马车主来说,它还允许车主借助移动app对车门进行远程锁门和开锁,控制辅助加热系统或者对电动车上主电池充电。NGTP,全称Next Generation Telematics Protocol,是宝马公司开发的一个开放的技术标准协议,你可以为是车联网的http协议。VIN“车辆识别号码”(Vehicle Identity Number),类似手机的机身号,是车辆的身份证号。

好,现在我们针对上面的6个问题,谈谈怎么“破”

对称密钥   

宝马汽车ConnectedDrive服务安全漏洞跟踪分析 一文中提到宝马在实现NGTP时用的是DES加密,且所有车辆用的都是相同的密钥。DES的算法存在漏洞,建议改用AES128,另外加密基于人体身份特征(比如指纹,语音)等做digest的对称密钥,避免密钥一样的问题

信息缺少加密 

这个貌似宝马最新补救升级方案中已经在这么做,用SSL/TLS做加密,用https替带原来的http rest请求

ConnectedDrive缺少身份验证  

前面已经说过,不要单纯用VIN来匹配识别信息的发送者,而改用人体身份特征的SSO安全方案,通过httpdigest来做authentication


 NGTP错误信息披露了VIN   

修改ASN.1抽象语法标记规范,避免错误信息泄露敏感信息

发送的NGTP信息通过不安全的DES方法进行加密  

这个已经over了

重放攻击(Replay Attacks)  

重放攻击就是攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,这也是目前攻击里特别难防御的,比如前面的身份认证,前面的随机nonce加fingerprint信息可以有效地防御非法用户做认证工作,但如果在步骤4 send digest时该信息被恶意攻击者截获到,则在步骤5验证通过后,恶意攻击者用该digest作为token就可以伪装成合法用户发指令给ConnectedDrive。如何抗重放攻击,目前较好的是时间戳方案,因为这时原本一次的会话交互变成两次,原理是基于重放的时戳将相对远离当前时刻,校验的时候制定容忍时间窗大小来判断是否是有效的时间戳,当时间差大于可容忍的时间窗,那么每次请求都可能被作为无效请求绝。      

                                  

        

        以上是个人针对宝马ConnectedDrive模块安全漏洞事件的一点改进方案,考虑得肯定还有欠缺,但车联网无疑是未来正式市场的热点,无论有多少担忧,无人驾驶汽车在未来数十年时间将会变得越来越普遍,所以安全方面的考虑也需要慎之又慎。



个人介绍:

周明春 Samsung Electronics VD IoT Platform高级工程师,在物联网,云计算,移动通讯,网络安全和消息传递基础构架领域拥有超过9年的专业知识和经验。拥有丰富的企业消息传递基础构架开发,物联网、云、设备联接解决方案开发,以及成熟的管理软件和解决方案,如敏捷和DevOpts的开发经验。在国内首次提出SDT(softwaredefined Things)IOT概念,拥有2项专利。

是三星、英特尔、戴尔所成立智能家居设备标准联盟开放互联联盟(OIC)的代码贡献者(https://gerrit.iotivity.org/gerrit/p/iotivity.git)

https://www.iotivity.org/documentation/iotivity-services/protocol-plug-manager

经常参与云计算,物联网等开源社区(Openstack,Vmware,ECUG失效云计算用户组)交流讨论,关注开源社区技术动态


 


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值