Semi-Automated Cyber Threat Intelligence or ACT is a research project led by mnemonic as with contributions from the University of Oslo, NTNU, Norwegian Security Authority (NSM), KraftCERT and Nordic Financial CERT.

The main objective of the ACT project is to develop a platform for cyber threat intelligence to uncover cyber attacks, cyber espionage and sabotage. The project will result in new methods for data enrichment and data analysis to enable identification of threat agents, their motives, resources and attack methodologies. In addition, the project will develop new methods, work processes and mechanisms for creating and distributing threat intelligence and countermeasures to stop ongoing and prevent future attacks.

In this repository the code of the ACT platform is published under an Open Source license.

Also Read – Shodan Eye : Tool Collects All The Information About All Devices Directly Connected To The Internet



  • Java 8 for running the application.
  • Maven for managing dependencies, building the code, running the unit tests, etc.
  • An installation of Apache Cassandra for storage. Any version of Apache Cassandra 3.x is support.
    • Import the Cassandra database schema from deployment-service/resources/cassandra.cql.
  • An installation of Elasticsearch for indexing. Version 6.8 of Elasticsearch is required.
  • (Optional) An installation of ActiveMQ for the multi-node environment.
  • (Optional) An installation of Docker for running the integration tests.


  • Execute mvn clean install -DskipTests from the repository’s root folder to compile the code.
  • Afterwards follow the deployment guide to run the application.


  • Download a Cassandra image by docker pull cassandra.
  • Download an Elasticsearch image by docker pull
  • Download an ActiveMQ image by docker pull webcenter/activemq.
  • Execute mvn clean install for running all tests including integration tests.
  • Execute mvn clean install -DskipSlowTests for skipping the integration tests.
  • By default the integration tests will try to connect to Docker on localhost and port 2375. Set the $DOCKER_HOST environment variable to override this behaviour.