ubuntu读取can口数据_智能网联汽车信息安全实训平台——CAN总线逆向实验

(1)以建设车联网安全检测和培训体系为目的而搭建的一套成熟、落地、可操作的安全检测环境

(2)测试方案覆盖车机软件、车载通信、车内智能终端设备、车内总线等检测环境

(3)以提升能力为根本,帮助学院构造车载信息安全知识体系框架,培养学员车载信息安全检测能力

一、测试对象

CAN总线

二、教学目的

学习如何获取汽车中的CAN总线数据,并对CAN总线数据报文进行协议逆向。

三、详细介绍

通过工具获取汽车中的CAN总线数据,根据CAN总线协议对CAN总线的数据进行分析,通过逆向分析的手段,对CAN总线进行协议逆向,解析出相应指令的数据报文。

四、依赖文件和软件

  1. can-utils

Linux系统中对CAN总线分析的工具,可以显示抓取CAN报文,重放CAN日志文件,发送单个帧,生成随机CAN流量,显示CAN数据内容的差异,通过该工具,可以帮助我们对CAN总线进行协议逆向分析。

  1. ICSim

CAN总线模拟仿真工具,可以在主机中模拟出CAN总线的仪表盘,对接受的CAN报文进行解析,并在仪表盘中显示指令动作。

五、依赖硬件工具

  1. CAN-USB CAN总线嗅探工具,通过USB口连接在主机中,分析CAN报文

六、实验整体流程

58bb05b6fc8b529166468c037484ecb0.png
实验流程和网络拓扑

七、实验步骤

  1. 打开模拟器 在终端中打开汽车靶机模拟器

cd ICSim

./setup_vcan.sh

./icsim vcan0

在另一个终端中打开模拟器控制器:

./controls vcan0

  1. 使用模拟器发送指令

操纵模拟器控制器,执行键盘上的上下可以控制车速,左右可以控制车灯,如下图所示。

cd63e9a260de67e1733ed4d3f2a8e50b.png
模拟器控制器

可以在仪表盘模拟器中观察到相应的反应,如下图所示。

df35274cf3197d70079ffd7ad2564cb8.png
仪表盘显示状态

3.嗅探接收CAN报文

使用ifconfig命令可以看到vcan0接口存在,我们可以通过该接口与CAN网络进行交互,抓取嗅探CAN报文:

candump vcan0

可以看到抓取到了CAN报文数据,如下图所示。

0affe2b26eebab30570327d5235984a3.png
CAN报文数据

通过不断的控制模拟器,在屏幕上可以动态的显示CAN报文。

4.捕获并重放CAN操作

为了逆向CAN总线,我们需要缩小逆向范围,抓取单一指令的报文数据,通过模拟器控制器执行操作,通过candump工具来抓取相应的报文并存储为本地日志文件。

candump -l vcan0

将停止对模拟器控制器操作,将上面抓取的报文进行重放测试

canplayer -I candump-2020-05-13_154442.log

观察模拟器仪表盘,可以看到出现相应的反应。can总线是不可靠的服务,发送报文后无法确保能传输成功,因此可以多尝试几次发送,保证指令正确执行

5.差分法逆向 对can日志文件进行差分法发送,每次都截取一半数据报文进行发送,直到捕捉到对应指令的报文。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值