Getting Started
Installation
Install prerequisites and build ExfilGuardian
Prerequisites
ExfilGuardian is a cross-platform anti-exfiltration detection system (Windows first, Linux planned). Different components have different platform requirements:
| Tool | Minimum Version | Purpose | Platform |
|---|---|---|---|
| Bun | >= 1.3 | JavaScript runtime and package manager | All (desktop/docs) |
| Rust (stable) | Latest stable | Workspace compilation (agent, server, analysis, installer, certs) | All |
| Rust (nightly) | Latest nightly | Driver compilation (requires unstable features) | Windows only |
| Windows Driver Kit (WDK) | Latest | Kernel driver build headers and libraries | Windows only |
| Visual Studio Build Tools | 2022+ | MSVC linker and Windows SDK | Windows only |
Note: The analysis crate (exfil-analysis) compiles on all platforms (macOS, Linux, Windows). The agent, installer, and driver require Windows.
Install Commands
Windows (Full Build)
# Install Bun
powershell -c "irm bun.sh/install.ps1 | iex"
# Install Rust (stable + nightly)
winget install Rustlang.Rustup
rustup toolchain install nightly
# Install Visual Studio Build Tools (includes Windows SDK)
winget install Microsoft.VisualStudio.2022.BuildTools
# Install Windows Driver Kit (WDK)
# Download from https://learn.microsoft.com/en-us/windows-hardware/drivers/download-the-wdkmacOS / Linux (Analysis + Docs Development)
# Install Bun
curl -fsSL https://bun.sh/install | bash
# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shThese platforms can build the analysis crate, run the docs site, and develop the desktop frontend, but cannot build the Windows driver, agent, or installer.
Clone and Build
# Clone the repository
git clone git@github.com:Wany917/exfil-guardian.git
cd exfil-guardian
# Install frontend dependencies
bun install
# Build the full Rust workspace (Windows only for agent/installer)
cargo build --workspace
# Or build just the analysis crate (cross-platform)
cargo build -p exfil-analysisVerify Installation
# Check versions
bun --version
cargo --version
rustup show
# Run analysis tests (cross-platform, 18 tests)
cargo test --workspace