MAL (the Meta Attack Language)
A Domain Specific Language for Probabilistic Threat Modeling and Attack Simulations
Attack simulations may be used to assess the cybersecurity of systems. In such simulations, the steps taken by an attacker in order to compromise sensitive system assets are traced, and a time estimate may be computed from the initial step to the compromise of assets of interest. Attack graphs constitute a suitable formalism for the modeling of attack steps and their dependencies, allowing the subsequent simulation.
To avoid the costly proposition of building new attack graphs for each system of a given type, domain-specific attack languages may be used. These languages codify the generic attack logic of the considered domain, thus facilitating the modeling, or instantiation, of a specific system in the domain. Examples of possible cybersecurity domains suitable for domain-specific attack languages are generic types such as cloud systems or embedded systems but may also be highly specialized kinds, e.g. Ubuntu installations; the objects of interest as well as the attack logic will differ significantly between such domains.
In this project, we propose the Meta Attack Language (MAL), which may be used to design domain-specific attack languages such as the aforementioned. The MAL provides a formalism that allows the semi-automated generation as well as the efficient computation of very large attack graphs. We declare the formal background to MAL, define its syntax and semantics, exemplify its use with a small domain-specific language and instance model, and report on the computational performance.
The git repository has more information, tools and languages: github.com/mal-lang
Keywords: Domain Specific Language, Cybersecurity, Threat Modeling, Attack Graphs
A large number of research papers have been authored by the group on MAL related work, for instance the following:
Research Papers
In addition, the following student thesis projects are examples of work related to MAL: