Installation

We provide multiple installation methods of our attack propagation. Depending on the use case different variants are preferably. For user who only want to try or only use the attack propagation, we would recommend the Palladio-Bench (Attack Drop) and use the current release. It is the easiest way to get started. For more advanced users or potential developers, we would recommend a mixture of the Manual Installation and the Update Site Installation variant (also see sec. Recommended Developer Installation).

Dependencies

Our attack propagation analysis is realized as Eclipse Plugins. The analysis source code is compiled with Java 17 as Target. Therefore, we recommend using a Java 17 environment for execution. Newer versions might work, but we have not tested them. Older versions especially Java 11 or Java 8 are not supported.

Note

If you only want to use the metamodel, you also can use Java 11. However you have to use the Java11 branch and manually install it.

If not our Palladio-Bench (Attack Drop) is used, our tooling requires an Eclipse Modelling Edition (min. 2021-12) with the following dependencies:

The Eclipse dependencies without a link are available from Eclipse Orbit

Note

We provide an Eclipse installation file. The file assumes that the Eclipse Modelling Tools are already installed. After downloading the file you can install it in Eclipse via File->Import->Install->Install Software Items from File and then selecting the installation file. Install-File.

Note

For the release update site replace nightly in the urls with release/latest.

Palladio-Bench (Attack Drop)

We created an Eclipse product, which can be used to start our analysis and view the models. It should be configured that it automatically opens a workspace with the necessary projects loaded.

  • Download and unpack the version for your operating system

  • Start the application by executing the PalladioBench binary (not the Eclipse one!)

  • After the load screen you should see 3 Projects in the Modelviewer on the left side:
    • edu.kit.ipd.sdq.kamp4attack.tests

    • org.palladiosimulator.pcm.confidentiality.context.analysis.testframework

    • org.palladiosimulator.pcm.confidentiality.context.analysis.testmodels

Note

The nightly version can be found here.

Note

The MAC-Version might not work, because of MACOS security features. In that case this might help. If not, you can still use the update site or manually install the tooling, but you are required to solve the dependencies manually.

Manual Installation

Please make sure that you have installed the Dependencies. Clone the metamodel and analysis repositories. The repositories do not contain the source code for the stored metamodels. The easiest solution to create the source code is to build each repository with maven for instance with mvn clean verify. If there is no maven available see Code Generation (without Maven).

After downloading the source code. The necessary plugins for applying the projects are in each repository in the bundle folder. All folder in this folder contain plugin projects and must be imported into the Eclipse workspace. After importing the projects, an inner Eclipse application can be started, where the attack propagation is installed.

Code Generation (without Maven)

The metamodel source code can be generated without using the Maven workflow. However, this process must be triggered manually for each metamodel in Eclipse. The code generation utilizes the MWE2 workflow, and the MWE2 workflow engine must be installed in Eclipse. After installing the engine, the code generation projects for our metamodels can be found in the releng subfolders of each Git repository. These projects are identified by the file extension *.mwe2*.

To generate the metamodel source code, follow these steps:

  1. Import each project ending with *.mwe2* into the workspace. The workspace should also contain the Eclipse projects for the metamodels.

  2. For each metamodel, execute the workflow/generate.mwe2 workflow. You can do this by selecting the file and then opening the context menu (right-click) and selecting Run as -> MWE2 Workflow. This will create the required source code and automatically insert the custom code.

  3. If necessary, the generated code can be deleted by executing the clean.mwe2 workflow.

Warning

The regular genmodels from EMF cannot be used because the analysis requires custom code, which is inserted by the workflows.

Update Site Installation

We provide also two Eclipse update site for our attack propagation. The Eclipse installation needs to have the Dependencies installed. After installing the dependencies, our attack propagation analysis can be installed. First add and install our metamodel. Afterwards, our analysis can be installed.

Note

We also provide a complete Eclipse installation file. Using this installation file, it is not necessary to install the dependencies before, since they are bundled within. The file assumes that the Eclipse Modelling Tools are already installed. After downloading the file you can install it in Eclipse via File->Import->Install->Install Software Items from File and then selecting the installation file. Install-File.