Gallia 是一个可扩展的渗透测试框架,专注于汽车领域。该工具链的范围涵盖从单个 ECU 到整车进行渗透测试。目前,主要关注 UDS 接口。作为通用接口,日志功能实现了可复现的测试,并支持后处理任务。文档可在 docs/ 文件夹中找到。
请记住,本项目仅用于研究和开发用途!不当使用可能导致被测设备出现不可逆的损坏。我们不对因使用本工具而造成的任何损坏承担责任。
Levent Çelik 等人在《通过模糊测试比较开源 UDS 实现》Comparing Open-Source UDS Implementations Through Fuzz Testing 中写道:
在我们评估的各种实现中,Gallia 以显著优势脱颖而出,是最稳健、最可靠的框架。
请参考 设置说明。
首先使用 --template 生成一个配置模板,将其保存到名为 gallia.toml 的文件中,然后根据你的需求进行调整。gallia 会读取此文件来设置命令行参数的默认值。所有选项均对应一个命令行参数;扫描时唯一必需的参数是 gallia.scanner.target,例如 isotp://can0?src_addr=0x123&dst_addr=0x312&tx_padding=0xaa&rx_padding=0xaa。
$ gallia --template > gallia.toml
一切就绪,可以开始你的第一次扫描了,例如读取诊断故障码:
$ gallia primitive uds dtc read
目标也可以通过命令行中的 --target 参数指定。关于 --target 参数的格式,请参见 传输层文档。
本工作部分由德国联邦教育与研究部(BMBF)在 SecForCARs 项目(资助编号 16KIS0790)下资助。本工作部分由德国联邦经济事务与能源部(BMWE)在 ATLAS-L4 项目(资助编号 19A21048D)下资助。此 页面 提供了简短演示和视频。