Skip to content

API documentation

Joakim Loxdal edited this page Jan 16, 2026 · 8 revisions

MAL-Toolbox

maltoolbox.language

Contains tools to load and parse MAL languages.

maltoolbox.language.languagegraph

  • A LanguageGraph is used to represent MAL languages in the MAL Toolbox
  • Created from a language specification and can be loaded from file (LanguageGraph.load_from_file)

maltoolbox.language.compiler

  • A MALCompiler parses .mal-files and converts them to language specifications

maltoolbox.model

  • A Model is a representation of a specific system modeled in a MAL language
  • Contains ModelAssets that can be associated to each other

maltoolbox.attackgraph

  • An Attack Graph is a representation of all paths an attacker can take in a specific system based on a MAL language.
  • Contains AttackGraphNodes that has parents and children
  • Contains rules that define whether they are reachable or not from other nodes

maltoolbox.visualization

  • Functions to visualize Models and Attack Graphs.
  • graphviz, draw.io, neo4j

maltoolbox.translators

  • Functions to convert model files from older formats

maltoolbox.patternfinder

  • Functions to find specific patterns in AttackGraphs

Clone this wiki locally