电子产业一站式赋能平台

PCB联盟网

搜索
查看: 30|回复: 0
收起左侧

CAN通信如何防止数据篡改与中间人攻击

[复制链接]

720

主题

720

帖子

3130

积分

四级会员

Rank: 4

积分
3130
发表于 昨天 08:00 | 显示全部楼层 |阅读模式

d4f0lmsjnfw6409959926.gif

d4f0lmsjnfw6409959926.gif

点击上方蓝色字体,关注我们


通过引入加密、认证、访问控制等技术,能够有效提升通信的安全性。

然而,面对嵌入式系统对性能的要求,必须灵活选择合适的安全技术并进行优化。

lyl4f3cfhwu6409960026.png

lyl4f3cfhwu6409960026.png


1
CAN网络的特点及其安全挑战
CAN网络是一个广泛应用于汽车、工业自动化和嵌入式系统的串行通信协议,设计时主要侧重于高效的实时数据传输和低成本实现。

其主要特点包括:
  • 广播性质:CAN总线是一种广播协议,所有节点都可以接收到同一总线上的消息,这使得它容易受到攻击。
  • 无内建安全机制:原始的CAN协议没有内置任何加密、认证或访问控制机制。
  • 高速实时性要求:CAN协议主要用于实时控制系统,因此安全机制的引入不应显著增加延迟或降低实时性能。
    2
    防止数据篡改的技术
    数据篡改攻击主要指通过恶意节点篡改在CAN总线上传输的数据包,影响系统的正常运行。

    为了防止这种攻击,可以采用以下技术:

    2.1 消息完整性校验
    一种简单有效的防止数据篡改的技术是在每个CAN消息中附加完整性校验码(如HMAC),确保数据在传输过程中未被修改。
  • 工作原理:通过在数据帧中附加一个校验值,接收方可以使用相同的算法和密钥来计算消息的完整性,并与附加的校验值进行比对。如果消息在传输过程中被篡改,计算出的校验值将不匹配,接收方便能检测到数据篡改。
  • 优点:这种方法成本较低,且易于实现,适合于实时性要求较高的场景。
  • 缺点:如果加密算法使用不当或密钥泄露,攻击者可能伪造合法消息。
    2.2 加密保护
    数据加密是防止数据被恶意篡改或泄露的另一重要手段。

    加密可以确保数据即使在传输过程中被截获,攻击者也无法读取或篡改内容。

    对称加密:采用如AES(Advanced Encryption Standard)等对称加密算法对消息内容进行加密。双方共享一个加密密钥,发送方加密消息,接收方解密。       
  • 优点:速度快,适合高实时性要求的环境。
  • 缺点:密钥的分发和管理较为复杂。
    非对称加密:使用如RSA或ECC(Elliptic Curve Cryptography)等非对称加密算法,发送方使用接收方的公钥加密消息,接收方则用私钥解密。       
  • 优点:密钥管理更为安全。
  • 缺点:计算开销较大,实时性要求较高的系统中可能会成为瓶颈。
    2.3 消息认证码
    一种增强的数据完整性验证方式是通过消息认证码(MAC)来确保消息的未被篡改。

    工作原理:发送方对数据与密钥进行加密生成MAC值,接收方使用同样的密钥来计算收到数据的MAC值并与发送的MAC值对比。若一致,数据未被篡改;否则认为数据被篡改。
  • 优点:防篡改能力强,特别适用于保护数据完整性。
  • 缺点:需要密钥共享,且密钥管理的安全性很关键。
    3
    防止中间人攻击
    中间人攻击(Man-In-The-Middle Attack, MITM)是指攻击者通过监听和篡改通讯链路上的消息,在受害者之间悄无声息地获取或篡改数据。

    为了防止这种攻击,可以采取以下措施:

    3.1 公钥基础设施与证书认证
    中间人攻击通常依赖于伪造身份或替换合法节点的消息。

    在CAN网络中引入PKI(公钥基础设施)和数字证书认证是防止此类攻击的有效方法。
    工作原理:每个节点都有一对公钥和私钥,并且公钥通过可信的证书颁发机构(CA)进行签名。节点间通信时,发送方使用接收方的公钥加密消息,接收方使用私钥解密,确保信息的机密性和完整性。
  • 优点:能够有效防止中间人伪造身份,增强安全性。
  • 缺点:需要一个强大的公钥管理系统,且计算开销较大。
    3.2 基于身份的加密
    在一些嵌入式系统中,可能没有传统的CA体系来管理证书。

    在这种情况下,可以使用基于身份的加密(IBE),其中节点的身份信息(如网络地址)被用作加密密钥的生成基础。

    工作原理:每个节点通过使用身份信息来生成密钥对,而不需要中心化的证书管理。这样,只有特定身份的节点才能解密特定消息。
  • 优点:简化了密钥管理,尤其适用于动态变化的网络。
  • 缺点:系统依赖于身份验证机制,若身份信息泄露,安全性将大大降低。
    4
    授权与访问控制
    为了确保只有授权的节点能够发送或接收消息,CAN网络中的授权和访问控制机制至关重要。

    4.1 基于角色的访问控制
    RBAC是常见的访问控制方法,通过定义不同的用户角色来限制节点对网络资源的访问权限。

    工作原理:根据节点的角色定义其对不同类型消息的访问权限。例如,只有认证通过的车辆控制单元(ECU)才可以发送启动命令。
  • 优点:管理和实现相对简单。
  • 缺点:需要密切关注系统中角色权限的定义与管理。
    4.2 动态访问控制
    对于动态变化的网络,如智能车辆网络或工业控制系统,基于策略的动态访问控制(DAC)能够提供更加灵活的访问权限管理。
    工作原理:系统会根据具体情况和安全策略实时调整访问权限。例如,基于当前网络状态、消息重要性等因素,临时授权或撤销节点的访问权限。
  • 优点:适应性强,适用于复杂和变化频繁的环境。
  • 缺点:相较于RBAC,实施和管理更加复杂。
    5
    性能与安全的平衡
    尽管上述安全技术在理论上能有效增强CAN通信的安全性,但在实际应用中,嵌入式系统往往面临实时性、带宽、计算资源等约束。

    因此,必须在安全性与性能之间找到平衡点:
  • 硬件加速:使用硬件加速(如加密引擎或安全模块)来提高加密解密操作的效率,降低计算开销。
  • 消息的最小化加密:对于实时性要求极高的消息,可以仅对关键信息进行加密,而不是对整个消息进行加密。
  • 多层次安全设计:通过分层次设计不同级别的安全防护措施,可以在确保关键通信安全的同时,保持系统的高效性。
    随着嵌入式系统硬件性能的提升和安全技术的不断发展,未来CAN网络的安全性将得到更进一步的保障,尤其是在汽车、工业控制等领域的应用中。

    3ro4kntgrg26409960126.gif

    3ro4kntgrg26409960126.gif

    点击阅读原文,更精彩~
  • 回复

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则


    联系客服 关注微信 下载APP 返回顶部 返回列表