-
Notifications
You must be signed in to change notification settings - Fork 77
Requirements
This page lists the requirements for setting up SPADE on various operating systems. In all cases, the Open Java Development Kit (OpenJDK 11, 12, 13, or 14) is required to compile SPADE. This can be downloaded from OpenJDK. Installation instructions for different platforms are given below.
Ubuntu
On Ubuntu 18, the JDK can be installed with:
sudo add-apt-repository -y ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install -y openjdk-11-jdk
In addition to the JDK, building SPADE requires that you have Git installed on your system. It is used to download the source files for compilation. You will also need Linux Audit, FUSE, lsof, and uthash. On Ubuntu, all of these can be installed via the following command:
sudo apt-get install -y auditd bison clang cmake curl flex fuse git ifupdown libaudit-dev libfuse-dev linux-headers-`uname -r` lsof pkg-config unzip uthash-dev wget
Fedora
For Fedora 34, use the following commands to install the JDK:
sudo dnf install -y java-11-openjdk-devel.x86_64
Other dependencies can be installed with:
sudo dnf install -y audit audispd-plugins bison clang cmake curl flex fuse-devel fuse-libs git iptables kernel-devel-`uname -r` lsof unzip uthash-devel wget
For macOS, the following commands can be used to install the JDK (if no other JDK already present):
curl -o openjdk-11.0.2_osx-x64_bin.tar.gz https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_osx-x64_bin.tar.gz
tar -zxvf openjdk-11.0.2_osx-x64_bin.tar.gz
sudo mv jdk-11.0.2.jdk /Library/Java/JavaVirtualMachines/
If you are using macOS, you will need Git to retrieve the SPADE source files.
Fuse4X is required, unless you already have MacFUSE installed.
Using MacPorts, you can install the required packages with the following command:
sudo port install git fuse4x pkgconfig
Alternatively, you can use Brew to install the required package with:
brew install git pkgconfig Caskroom/cask/osxfuse
To use the ProcMon
reporter for Windows, you will need to download and install Process Monitor.
WSL
On Windows, SPADE can be installed using WSL. Select the Ubuntu distribution. Then install the JDK with:
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-11-jdk
Building SPADE also requires Git to be installed. It is used to download the source files for compilation. Further, uthash is also needed. In an Ubuntu shell, these can be installed with:
sudo apt-get install git pkg-config uthash-dev
Cygwin
Alternatively, SPADE can be installed using Cygwin. Detailed instructions on setting up Cygwin can be found on its homepage. The following Cygwin packages are required:
-
gcc
(under theDevel
category) -
gcc-core
(under theDevel
category) -
make
(under theDevel
category) -
git
(under theDevel
category) -
tar
(under theBase
category) -
wget
(under theWeb
category)
This material is based upon work supported by the National Science Foundation under Grants OCI-0722068, IIS-1116414, and ACI-1547467. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.
- Setting up SPADE
- Storing provenance
-
Collecting provenance
- Across the operating system
- Limiting collection to a part of the filesystem
- From an external application
- With compile-time instrumentation
- Using the reporting API
- Of transactions in the Bitcoin blockchain
- Filtering provenance
- Viewing provenance
-
Querying SPADE
- Illustrative example
- Transforming query responses
- Protecting query responses
- Miscellaneous