
Framework d’audit de sécurité extensible pour les interfaces UDS automobiles, permettant des scans reproductibles, la lecture des codes de diagnostic, et le post-traitement via une architecture modulaire de plugins.
Gallia est un framework de test d'intrusion extensible axé sur le domaine automobile.
La chaîne d'outils vise à réaliser des tests d'intrusion allant d'un seul ECU jusqu'à des véhicules complets.
Actuellement, l'accent principal est mis sur l'interface UDS.
Agissant comme une interface générique, la fonctionnalité de journalisation implémente des tests reproductibles et permet des tâches de post-traitement.
La documentation est disponible dans le dossier docs/.
Gardez à l'esprit que ce projet est destiné uniquement à un usage de recherche et développement !
Un usage inapproprié pourrait causer des dommages irréversibles au dispositif testé.
Nous ne prenons aucune responsabilité pour les dommages causés par l'utilisation de cet outil.
Levent Çelik et al. dans Comparing Open-Source UDS Implementations Through Fuzz Testing :
Parmi les implémentations que nous avons identifiées, Gallia se démarque comme la plus robuste et la plus fiable, et ce de manière significative.
Voir les instructions d'installation.
Créez d'abord un modèle de configuration avec --template, enregistrez-le dans un fichier nommé gallia.toml, et ajustez-le selon vos besoins.
gallia lit ce fichier pour définir les valeurs par défaut des options de ligne de commande.
Toutes les options correspondent à une option de ligne de commande ; la seule option requise pour les scans est gallia.scanner.target, par exemple isotp://can0?src_addr=0x123&dst_addr=0x312&tx_padding=0xaa&rx_padding=0xaa.
$ gallia --template > gallia.toml
Vous êtes prêt à lancer votre premier scan, par exemple pour lire les codes de diagnostic :
$ gallia primitive uds dtc read
La cible peut également être spécifiée via l'option --target en ligne de commande.
Pour le format de l'argument --target, voir la documentation des transports.
Ce travail a été partiellement financé par le Ministère fédéral allemand de l'Éducation et de la Recherche (BMBF) dans le cadre du projet SecForCARs (subvention n° 16KIS0790).
Ce travail a été partiellement financé par le Ministère fédéral allemand de l'Économie et de l'Énergie (BMWE) dans le cadre du projet ATLAS-L4 (subvention n° 19A21048D).
Une courte présentation et une vidéo de démonstration sont disponibles sur cette page.