Metadata-Version: 2.1
Name: gallia
Version: 1.1.0a1
Summary: Extendable Pentesting Framework
Home-page: https://github.com/Fraunhofer-AISEC/gallia
License: Apache-2.0
Author: AISEC Pentesting Team
Requires-Python: >=3.9,<3.11
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Dist: aiofiles (>=0.8.0,<0.9.0)
Requires-Dist: aiohttp (>=3.8.1,<4.0.0)
Requires-Dist: aiosqlite (>=0.17.0,<0.18.0)
Requires-Dist: argcomplete (>=2.0.0,<3.0.0)
Requires-Dist: construct (>=2.10.68,<3.0.0)
Requires-Dist: msgspec (>=0.8.0,<0.9.0)
Requires-Dist: python-can (>=4.0.0,<5.0.0)
Requires-Dist: tabulate (>=0.8.9,<0.9.0)
Requires-Dist: tomlkit (>=0.11.0,<0.12.0)
Requires-Dist: xdg (>=5.1.1,<6.0.0)
Requires-Dist: zstandard (>=0.17,<0.19)
Project-URL: Documentation, https://fraunhofer-aisec.github.io/gallia
Project-URL: Repository, https://github.com/Fraunhofer-AISEC/gallia
Description-Content-Type: text/markdown

<!--
SPDX-FileCopyrightText: AISEC Pentesting Team

SPDX-License-Identifier: CC0-1.0
-->

# Gallia

[![docs](https://img.shields.io/badge/-docs-green)](https://fraunhofer-aisec.github.io/gallia)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/gallia)](https://pypi.python.org/pypi/gallia/)
[![PyPI - License](https://img.shields.io/pypi/l/gallia)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![PyPI](https://img.shields.io/pypi/v/gallia)](https://pypi.python.org/pypi/gallia/)

Gallia is an extendable pentesting framework with the focus on the automotive domain.
The scope of the toolchain is conducting penetration tests from a single ECU up to whole cars.
Currently, the main focus lies on the [UDS](https://www.iso.org/standard/72439.html) interface.
Taking advantage of this modular design, the [logging and archiving](https://fraunhofer-aisec.github.io/gallia/penlog.7.html) functionality was developed separately.
Acting as a generic interface, the logging functionality implements reproducible tests and enables post-processing tasks.
The [rendered documentation](https://fraunhofer-aisec.github.io/gallia) is available via Github Pages.

Keep in mind that this project is intended for research and development usage only!
Inappropriate usage might cause irreversible damage to the device under test.
We do not take any responsibility for damage caused by the usage of this tool.

## Quickstart

See the [setup instructions](https://fraunhofer-aisec.github.io/gallia/setup.html).

```
$ gallia primitive uds dtc --target "isotp://can0?src_addr=0x123&dst_addr=0x312&tx_padding=0xaa&rx_padding=0xaa" read
```

For specifying the `--target` argument see the [transports documentation](https://fraunhofer-aisec.github.io/gallia/transports.html).

## Acknowledgments

This work was partly funded by the German Federal Ministry of Education and Research (BMBF) as part of the [SecForCARs](https://www.secforcars.de/) project (grant no. 16KIS0790).
A short presentation and demo video is available at this [page](https://www.secforcars.de/demos/10-automotive-scanning-framework.html).

