Exploration C2 Core is the foundational submodule/package shared across all components of the Exploration Command and Control (C2) framework, including C2Implant, C2LinuxImplant and C2TeamServer. Written in C++, it provides core data structures, communication protocols, and serialization mechanisms to enable modular and cross-platform development of C2 components.
This repository is intended to be used as a dependency in both Windows and Linux builds of the Exploration C2 framework in the forme of a subomdule or a package.
- Unified message format across all C2 transport channels
- Serialization and deserialization of C2 messages using nlohmann/json
- Utilities for modules development
- Designed for portability and reuse across multiple platforms
- nlohmann/json: Modern C++ JSON serialization library
- cpp-base64: Lightweight base64 encoding/decoding
- CMake 3.24
- C++17 compatible compiler (e.g.,
g++
, or MSVC)
cmake -S . -B build
cmake --build build
cmake --install build --prefix <install_root>
ctest --test-dir build --output-on-failure
mkdir build
cd build
cmake -G "Visual Studio 17 2022" ..
msbuild .\C2Core.sln /property:Configuration=Release -m
cmake --install . --prefix <install_root>
cd ..
ctest --test-dir build -C Release