【车联网】VerhicleTestTool测试工具
VerhicleTestTool测试工具手册
目前支持两个模块:
- UDS测试
- ADB/SSH系统信息收集
0x01 UDS测试
1 | python verhicletool.py uds -h |
UDSTool测试工具目前实现了:
- 常用测试数据发收,例如1001、2701、1101、F190等
- 向总线发送诊断ID固定,报文数据随机的应用层畸形数据进行FUZZ
- 向总线发送诊断ID随机,报文数据随机的应用层畸形数据进行FUZZ
- 向总线发送1003和2701请求seed,默认请求1次,可以通过-n参数指定请求次数
- 请求seed后筛选出seed数据显示到终端,可以通过-n参数指定请求次数
- 统计周立功文件中的seed重复率
常用测试数据发收
plugins/data_dict.py中,定义了常用测试的总线数据,包含10服务、11服务、27服务、23服务等,后续添加数据只需增加一条字典即可
1 | data_dict = { |
运行python3 UDSTool.py uds -id 733 -data 1001即可发送数据并查看回复
如果发送的数据不在定义的列表,只会输出banner信息
ID固定报文随机的FUZZ
运行python3 UDSTool.py uds -id 733 -fd进行FUZZ,No ECU response received就代表TX的数据没有回应,过程中也可通过candump can0 -l进行保存
ID报文均随机的FUZZ
运行python3 UDSTool.py uds -fuzz进行FUZZ
seed请求
运行python3 UDSTool.py uds -id 733 -seed请求seed,默认请求一次,通过-n参数指定请求次数
统计周立功seed文件
首先通过周立功UDS诊断功能多次请求seed,开启实时保存,发送完毕停止保存。
将xx.zudslog文件复制到同目录,执行python UDSTool.py uds -file GW.zudslog,就会统计seed
0x02 系统服务信息收集
定义了一些系统测试常用命令,包括apk查找、netstat端口查看、配置文件搜索等,输出到目录
1 | python verhicletool.py adb -h |
0x03 ToDo
- UDS
- DID读取
- 2e服务写入
- 信息收集
- SSH证书登录
- 固件
- hex/bin/s19固件互转
- 固件敏感信息搜索
- 固件基址查询
- 固件数据篡改