tag 标签: 通信安全

相关帖子
相关博文
  • 热度 1
    2024-8-12 10:19
    305 次阅读|
    0 个评论
    随着智能网联(C-V2X)技术和车路云一体化系统的快速发展,汽车、道路和云端之间的信息交换变得越来越频繁和复杂。在这个信息高度互联的时代,如何确保车路云一体化通信的安全性成为了亟待解决的问题。 车路云一体化系统与C-V2X安全证书 车路云一体化系统通过新一代信息与通信技术将人、车、路、云的物理空间和信息空间融合为一体,基于系统协同感知、决策与控制,实现智能网联汽车及交通系统的安全、高效、节能和舒适运行。这个系统包括车辆、路侧基础设施、云控平台、相关支撑平台和通信网络。为了确保这些组件之间的通信安全,C-V2X安全证书成为关键技术。 C-V2X安全证书是一种用于保障车路云一体化系统中通信安全的数字证书。它采用公钥密码技术,通过加密、解密、签名和验证等手段,确保数据完整性和身份真实性。其主要作用如下: 身份认证: 通过验证安全证书,确认通信双方的身份,防止非法设备的接入和攻击。 数据加密: 对通信数据进行加密处理,确保数据在传输过程中的安全性。 数据完整性: 通过数字签名技术,确保数据在传输过程中未被篡改。 在车路云一体化系统中,C-V2X安全证书的应用场景包括: 车辆与车辆通信(V2V): 通过C-V2X安全证书,确保车辆之间的通信安全,实现协同驾驶、碰撞预警等功能。例如,在高速公路上,车辆可以通过V2V通信共享实时行驶信息,提前预警可能的危险。 车辆与基础设施通信(V2I): 利用C-V2X安全证书,实现车辆与交通信号灯、路侧单元等基础设施的通信,提高交通效率和安全性。例如,车辆可以接收交通信号灯的实时状态信息,优化行驶路径,减少等待时间。 车辆与行人通信(V2P): 通过C-V2X安全证书,确保车辆与行人之间的通信安全,实现行人检测和预警等功能。例如,车辆可以识别行人的位置和运动方向,提前做出避让决策,保障行人安全。 车路云一体化系统的跨域互信互认机制 为了实现车路云一体化系统在不同城市和区域间的互联互通,跨域互信互认机制至关重要。其主要包括以下几个方面: 可信根证书列表(TRCL): 车路云一体化系统中的各个区域需要通过可信根证书列表实现跨域互信。根CA发布TRCL,各区域系统获取TRCL并发布至终端,确保跨域通信的安全性。 根CA接入: 各区域的C-V2X安全证书管理系统作为二级节点接入根CA,根CA管理并发布可信根证书列表,确保不同区域的系统可以互相信任。 安全证书管理: 各区域的C-V2X安全证书管理系统为车辆和基础设施签发安全证书,通过公钥加密技术确保数据传输的安全性和完整性。 异常行为管理: 各区域系统可以监测和上报异常行为,确保系统的整体安全和稳定性。例如,若某在Q市进行身份认证的车辆在Z市出现异常行为,Q市可以通过跨域互信机制获知该车辆的信息,并采取相应的措施。 跨域身份互认体系在车路云系统中的实际应用 假设我们有两座城市,Q市和Z市,分别部署了智能网联汽车(C-V2X)系统,并且两个城市的系统需要互相识别和信任对方的车辆和基础设施。 C-V2X安全证书管理系统: Q市和Z市各自的C-V2X安全证书管理系统负责发布和管理各自的车辆和路侧设备的安全证书。 C-V2X安全层协议栈: 保障车辆与路侧设备之间的通信安全,确保每个设备和车辆都经过身份认证。 跨域互信互认机制: 可信根证书列表(TRCL): Q市和Z市的C-V2X安全证书管理系统都作为二级节点接入到一个根CA,这个根CA管理并发布可信根证书列表(TRCL)。 TRCL发布: 根CA发布TRCL,包含所有信任的根证书。 互认过程: Q市车辆到Z市: 车辆在Q市注册: Q市的C-V2X安全证书管理系统为车辆签发注册数字证书。 车辆进入Z市: 车辆携带Q市的数字证书进入Z市。Z市的路侧设备通过C-V2X安全层协议栈接收来自车辆的数字证书,并验证其有效性。 TRCL验证: Z市的路侧设备获取根CA发布的TRCL,并查找Q市的证书是否在可信列表中。由于Q市的证书在TRCL中,Z市的系统信任该证书。 通信和数据交换: Z市的路侧设备与Q市的车辆开始安全通信,确保数据的真实性和完整性。车辆和路侧设备可以进行各种C-V2X应用场景下的交互,如协同预警、协同驾驶辅助等。 异常行为管理: Z市的系统监测Q市车辆的行为,发现异常(如违反交通规则)会记录并上报到Z市的管理平台,同时通知Q市的管理系统。 多部门协同: Q市和Z市的交通管理部门、信息通信部门以及其他相关部门协同工作,确保两地系统间的无缝对接和高效运作。 CANoe生成安全证书与应用 以DAY1中的FCW场景测试为例,通过CANoe仿真场景的形式来触发DUT的FCW预警,形成测试报告,并且在该报告中记录了触发预警时DUT与仿真RV的距离。此时DUT发出的C-V2X信息中携带了安全证书的签名信息。 DUT与仿真车辆RV间能进行信息交互需满足以下要求: CANoe中必须加载由相同机构颁发的安全证书才能解析出DUT的C-V2X信息,从消息中获取相关数据进行计算。 CANoe仿真的RV发出的C-V2X信息也需要携带安全证书的签名信息给DUT,DUT才能解析出RV的信息。 通过CANoe可直接生成符合标准ETSI TS 103 097、IEEE 1609.2、China 2020的安全证书。并且可配置该证书是否为可信证书。 图1 CANoe提供欧标、美标、国标证书构建体系并配置是否为可信证书 以CANoe生成国标安全证书为例(先生成根证书,再用根证书签发假名证书),可使用该假名证书为C-V2X信息进行签名,通过搭建的C-V2X-HIL测试系统,可将该C-V2X信息发送至DUT。 图2 CANoe生成国标根证书与假名证书 图3 FCW场景中用假名证书给RV签名 也可将DUT返回的C-V2X信息进行验签并解析。如果DUT的证书验证通过,CANoe将从解析的DUT信息中获取经纬度信息,当FCW触发预警时,可根据该信息计算DUT与仿真RV的距离,并填充测试报告。如果证书验证不通过(证书过期、错误的签名、证书撤销等),亦可在CAPL脚本中添加错误处理逻辑,以检测和响应证书验证过程中可能出现的错误,并记录在测试报告中。 图4 解析DUT信息获取经纬度信息 总结 V2X安全证书在车路云一体化系统中的应用,是保障通信安全的关键技术。通过采用公钥密码技术和数字签名技术,可以确保通信过程中的数据完整性和身份真实性。跨域互信互认机制的引入,进一步保证了不同区域、不同系统之间的安全通信,支持车路云一体化系统的广泛应用和推广。北汇信息作为深耕汽车电子测试领域的服务商,可提供如安全证书申请、带安全证书C-V2X信息测试验证、车路云一体化系统测试等服务,欢迎垂询。 注:部分图片来自Vector。
  • 热度 8
    2023-2-8 12:05
    681 次阅读|
    0 个评论
    注1:本文为“湖南底网安全信息技术有限公司”安全团队原创文章(官网:www.bttmsec.com,聚焦车联网安全/物联网安全/工控安全),转发请注明出处 注2:该文已同步在今日头条"湖南底网安全"主页发布(原"电子技术论"主页),链接如下:https://www.toutiao.com/article/6789945669256741387/?log_from=a59c9ca98c949_1675651265539 前言 固件分析,一种深入硬件底层(芯片级)的技术破解方法,经常被用于系统攻防对抗、硬件破解、逆向分析等实际工作中,相对其它技术破解攻击方法,科学有效的固件分析因其扒开了破解攻击对象的“外衣”,直接深入“骨髓”对其逻辑代码、数据存储、数据类别、数据属性等全方面分析,可找出其它攻击方法无法找出的严重漏洞,可对破解攻击对象形成“致命级杀伤力”。 固件分析,由“固件”和“分析”2个词组成,看似简单的4个字,要想有效充分发挥出其“杀伤力”,其背后人员需要庞大的技术体系支撑,这些技术体系并非孤立自成一体,而是环环相扣、相辅相成;每项技术体系、每个技术点都力求达到熟练甚至精通的标准。除此之外,还需要有超强的心理素质,在未知二进制“数据海洋”里“黑盒”探索,需要耐心、细心、信心,同时还要面对固件分析里的高失败率,因为很多时候即便你能获取到固件,由于固件本身的防护(如加壳、私有指令集、差分固件包)或固件分析实力不够等因素仍然无法找出有效漏洞,你可能会不知所措、迷茫无助甚至焦虑不安,你得到的仅仅是固件文件、一堆冰冷的二进制数据而已,除此之外毫无其他用处,这时还得及时调整心态和思路继续“战斗”,以上内容通俗的讲就是对固件分析技术人员要求很广的技术面、很深的技术点、很强的心里素质。 固件分析技术浅谈 上面已提到过,固件分析由“固件”+“分析”两部分组成,不了解固件,何谈分析?“固件分析”--固件之所以在前面想必原因也在此。考虑到篇幅原因,这里对固件只做概要说明,不深究。 什么是固件? 什么是固件(firmware)?怎么理解固件?不同的人有不同的回答,但每种回答都会反映出回答者理解固件分析的思维层次。 固件是什么?固件是软件的一种,也是一种程序。 固件是什么?固件(Firmware)就是写入EPROM(可擦写可编程只读存储器)或EEPROM(电可擦可编程只读存储器)中的程序(百度百科)。 固件是什么?固件是指设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件(百度百科)。 以上回答都没错,我个人的回答是:固件是存储在可由CPU直接或间接读取指令/数据并可运行的FLASH/ROM芯片里的二进制数据集合,这些指令/数据集合是根据CPU内核架构及型号,将高级编程语言(如C、C++等)由对应的编译器、链接器、装载器生成并通过对应的烧写器将指令/数据集合烧写到对应设备里的存储芯片中。固件之所以和软件程序区分开来,是为了强调固件侧重于智能设备、嵌入式设备、工控设备里运行的程序,而非PC电脑、服务器、手机内部的程序(只是侧重并非绝对,很多场合手机里的程序也被称为固件)。 固件的位置是存储在设备的FLASH/ROM芯片里,但展现在固件分析人员面前是提取出来后以文件的形式呈现。固件文件的格式并非固定不变,因厂家、设备不同而不同,目前常见的固件文件格式有:hex、bin、elf、axf、txt、ulmage等,对于固件分析人员,熟悉这些固件文件的内部编码规则、数据块定义等细节尤为重要,否则拿到固件你也不认识它,更无从分析它。 固件的由来--编译、链接、装载 对于固件,不仅知其然,知其所以然也很重要,虽说不同的固件,格式、编码不同,但其 由来大体相同,都是由高级编程语言经编译、链接、装载生成而成,编译、链接、装载这3步6个字至关重要,是有效提升固件分析成功率的重点、难点,对固件文 件的形成机制、固件文件内部函数构造、内部指令/RAM/数据分配机制、固件启动运行机制等核心概念的深入理解非常有益。然而也只有深入理解了这些固件相关知识,才能充分发挥固件分析的破解攻击价值。 固件运行机制 applet。这里仅作简要说明,实际固件分析过程中,最好是对每一步里每个函数、每行代码的功能都做到了如指掌,这样才能充分发挥固件分析的破解攻击价值。 固件分析其它必要技术 固件分析,离不开电路/器件分析,因此需要具备必要的数电、模电知识;典型固件分析里,牵涉到固件提取、IO控制查询、数字接口驱动、中断唤醒、工作模式切换、外围器件的驱动等方面,这些都离不开电路/器件分析。 固件分析,需要熟悉常用数据通信规约/协议簇(如TCP/IP协议簇、CAN总线),在你分析有关数据通信功能部分的固件时,熟练掌握各类常用数据通信协议和底层对应接口,会让你在固件分析时如虎添翼,得心应手。 固件分析,需要熟悉主流CPU/MCU处理器内部体系架构、内部各硬件模块工作原理(DMA、虚拟内存管理、中断处理、工作模式管理、外围模块等)、内部存储及运行机制等,还有熟悉/能看懂并理解主流CPU/MCU汇编语言(寄存器级别操作)也很重要,在分析固件时,对每个函数的初始化、数据处理、代码跳转、函数执行等方面会让你临危不乱、思路清晰。 固件分析,熟悉相关加解密算法及安全通信、认证机制架构/原理,会让你少走很多弯路,知道如何权衡利弊得失,避开暗坑,提升固件分析效率。 固件分析,学会使用对自己有用的相关工具(包括但不限于:IDAPro、binwalk等)会让你事半功倍,这些工具会快速提升你的工作效率,让你进入状态,花更多的时间精力在固件分析上,而不是在固件分析的准备路上。 固件分析,熟悉主流嵌入式操作系统工作原理及内核工作原理(如linux、android等)也至关重要,然而这个也是最难的,因为要深入了解操作系统内核的具体工作流程、任务调度机制、数据存储分配细节、权限管理、进程隔离保护/运行机制等非常难,非一朝一夕能学成,需要时间、需要毅力、更需要智商,但是一旦掌握了这些知识,在分析类似的固件时,则很容易找出漏洞,而且是高危漏洞。当然一旦达到此级别,个人认为已是大牛级别、黑客级别了。 编后语 随着信息安全的普及,固件分析不仅受到黑客爱好者们的青睐,厂家设计者也越来也重视固件的防护,这无疑会加大固件分析的难度和降低固件分析的成功率,也正是因为这矛与盾的竞争关系,促使着网络技术的不断进步,就看随的步伐块,步伐慢的人注定会有被攻击破解的风险。