Skip to content

Latest commit

 

History

2,440 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShadowStrike Phantom

ShadowStrike Phantom

Open-Source Next-Generation Endpoint Protection Platform for Windows


Custom kernel sensor · Full-system emulation engine



Status License Platform Language Coverity Driver Verifier Commits Beta

Website · Architecture · Roadmap · Join Beta · Research


PhantomSensor.sys — Loaded and Verified

Driver loaded with ETW tracing active PhantomSensor loaded with ETW tracing
Driver Verifier — all checks passed Driver Verifier pass

Support This Project

If you believe in open-source security, consider supporting development:

Sponsor ShadowStrike

Your support helps build transparent, auditable endpoint protection that anyone can verify.


What Is ShadowStrike Phantom?

ShadowStrike Phantom is a from-scratch, open-source endpoint protection platform for Windows 10/11 x64, engineered to compete with the detection capabilities of commercial EDR/XDR products — CrowdStrike Falcon, SentinelOne Singularity, Microsoft Defender for Endpoint — with one fundamental difference: every line of code is auditable.

This is not a wrapper around existing tools, and not a proof of concept. It is a security platform built to production engineering standards, comprising five major subsystems each written from the ground up, currently at alpha maturity and being hardened against live Windows endpoints.

Subsystem What It Is
PhantomSensor WDM minifilter kernel driver — 20 detection subsystems, from file I/O interception to syscall integrity
PhantomCore User-mode detection, protection and intelligence stack — 23 module families, shared by all three product tiers
PhantomEmulator Custom x86/x64 CPU emulation engine for safe malware detonation — no hypervisor, no third-party emulation library
PhantomCortex Threat classification — 5 model architectures with the inference path wired into the scan pipeline
PhantomDisassembler In-house x86/x64 instruction decoder, replacing the vendored Zydis dependency

Current state — alpha, under active development, tested against live Windows endpoints. The kernel driver is complete: Coverity-verified at 0.25 defects/KLoC, passing Driver Verifier with zero violations, loading and filtering on a live endpoint. The user-mode engine is feature-complete and in a security-hardening phase — the product installs, loads its signed driver, establishes an encrypted kernel channel and performs on-access scanning, with a recent field run scanning 56,866 files on a live endpoint. The emulation engine is implemented. The AI models are trained on 3.5M+ real PE samples (EMBER 2018 + EMBER 2024) and the inference path is wired into the scan pipeline, but the models are not yet packaged for endpoint deployment. Public beta is targeted for the start of 2027. See Known Limitations for a full account of what is not finished.


Why This Exists

Commercial endpoint protection products run kernel-level code you cannot inspect. Every major vendor — including those who have caused global outages from faulty kernel updates — ships a black box with ring-0 access to your machine.

ShadowStrike Phantom is the alternative:

  • No hidden telemetry. Every network call the product makes is in the source.
  • No black-box detection. Every rule, every heuristic, every model weight is auditable.
  • No trust required. Read the code. Build it. Verify it. Run it on your own infrastructure.

Project Status

Component Status Detail
Architecture ✅ Complete Designed and documented
PhantomSensor.sys ✅ Complete 20 subsystems · Coverity 0.25 defect/KLoC · Driver Verifier zero violations · loads and filters on a live endpoint
PhantomCore 🔧 Feature-complete, hardening 23 module families · on-access scanning verified in the field · active security-audit and false-positive work
PhantomEmulator 🔧 Implemented, harness pending CPU emulation · 10 emulated DLLs · 12 analysis modules · no dedicated CLI harness exercising it yet
PhantomCortex 🔧 Inference wired, models not yet shipped ONNX Runtime bridge integrated into the scan pipeline · 4 models trained on EMBER 2018/2024, 1 being retrained · endpoint model packaging and signed distribution still to build
PhantomDisassembler 🔧 In development Custom x86/x64 decoder, replacing the vendored Zydis dependency
Kernel ↔ User-Mode IPC 🔧 Operational, hardening Encrypted channel established and carrying scan traffic · frame-level robustness work in progress
Product Tiers (Home/EDR/XDR) 🔧 In progress Phantom Home is the active target; EDR and XDR follow on the shared infrastructure
Management Dashboard 🔧 Early EDR/XDR fleet management
Public Beta 🎯 Target: 1 January 2027

Platform Architecture

┌──────────────────────────────────────────────────────────────────────────────────────────┐
│                                      USER MODE                                            │
├──────────────────────────────────────────────────────────────────────────────────────────┤
│                                                                                           │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐                  │
│  │  PhantomEDR  │  │ PhantomHome  │  │ PhantomXDR   │  │  Dashboard   │                  │
│  │  (Service)   │  │    (GUI)     │  │  (Service)   │  │  (Planned)   │                  │
│  └──────┬───────┘  └──────┬───────┘  └──────┬───────┘  └──────────────┘                  │
│         └──────────────────┴──────────────────┘                                           │
│                            │                                                              │
│  ┌─────────────────────────┴──────────────────────────┐                                  │
│  │           Shared Detection Infrastructure           │                                  │
│  │  ┌────────────────────────────────────────────────┐ │                                  │
│  │  │ RealTimeProtection · ExploitPrevention         │ │                                  │
│  │  │ BehaviorBlocker · ProcessCreationMonitor       │ │                                  │
│  │  │ NetworkTrafficFilter · MemoryProtection        │ │                                  │
│  │  │ FileSystemFilter · ZeroHourProtection          │ │                                  │
│  │  └────────────────────────────────────────────────┘ │                                  │
│  │  ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────┐ │                                  │
│  │  │Signature │ │ Pattern  │ │  Hash    │ │ Threat │ │                                  │
│  │  │  Store   │ │  Store   │ │  Store   │ │ Intel  │ │                                  │
│  │  │ (B-tree) │ │(Aho-Cor.)│ │ (Bloom)  │ │(STIX)  │ │                                  │
│  │  └──────────┘ └──────────┘ └──────────┘ └────────┘ │                                  │
│  │  ┌──────────────────┐  ┌──────────────────────────┐ │                                  │
│  │  │ PhantomEmulator  │  │     PhantomCortex AI     │ │                                  │
│  │  │ x86/x64 CPU Emu  │  │  5 Neural Network Models │ │                                  │
│  │  │ 10 DLL Emulation │  │  ONNX Runtime            │ │                                  │
│  │  └──────────────────┘  └──────────────────────────┘ │                                  │
│  └─────────────────────────┬──────────────────────────┘                                  │
│                            │                                                              │
│              ┌─────────────┴─────────────┐                                               │
│              │   Encrypted IPC Bridge    │                                                │
│              │  (FilterConnectPort)      │                                                │
│              └─────────────┬─────────────┘                                               │
├────────────────────────────┼─────────────────────────────────────────────────────────────┤
│                        KERNEL MODE                                                        │
├────────────────────────────┼─────────────────────────────────────────────────────────────┤
│              ┌─────────────┴─────────────┐                                               │
│              │    PhantomSensor.sys       │                                               │
│              │  WDM Minifilter · Alt 385210                                              │
│              │     · 20 Subsystems        │                                               │
│              └─────────────┬─────────────┘                                               │
│   ┌────────────────────────┼────────────────────────┐                                    │
│   ▼                        ▼                        ▼                                    │
│ ┌──────────────┐ ┌─────────────────────┐ ┌──────────────────┐                            │
│ │ File System  │ │  Process / Thread   │ │ Registry Monitor │                            │
│ │  Callbacks   │ │  Image · Syscall    │ │ Persistence Det. │                            │
│ └──────────────┘ └─────────────────────┘ └──────────────────┘                            │
│ ┌──────────────┐ ┌─────────────────────┐ ┌──────────────────┐                            │
│ │ Memory Mon   │ │  Object Callbacks   │ │ Self-Protection  │                            │
│ │ VAD·ROP·Inj  │ │  Handle Protection  │ │ Anti-Tamper      │                            │
│ └──────────────┘ └─────────────────────┘ └──────────────────┘                            │
│ ┌──────────────┐ ┌─────────────────────┐ ┌──────────────────┐                            │
│ │ Network Flt  │ │  Behavioral Engine  │ │ ETW Telemetry    │                            │
│ │ C2·DGA·Exfil │ │  MITRE · Scoring    │ │ Structured Trace │                            │
│ └──────────────┘ └─────────────────────┘ └──────────────────┘                            │
├──────────────────────────────────────────────────────────────────────────────────────────┤
│                              HARDWARE / FIRMWARE                                          │
│                Secure Boot · TPM Attestation · Firmware Integrity                         │
└──────────────────────────────────────────────────────────────────────────────────────────┘

PhantomSensor — Kernel Driver

A from-scratch WDM minifilter kernel driver that intercepts, analyzes, and blocks threats at the lowest software level. Coverity static analysis reports 0.25 defects/KLoC; Driver Verifier reports zero violations.

Subsystem Techniques Covered
Syscall Monitor Direct syscall detection · Heaven's Gate (WoW64) · Hell's Gate / Halo's Gate · NTDLL integrity · Callstack origin analysis · SSN validation
Memory Monitor VAD tree tracking · Process injection chains · Process hollowing · Reflective DLL loading · Shellcode detection · ROP chains · Heap spray · Code cave detection
Behavioral Engine MITRE ATT&CK mapping · Kill-chain correlation · Threat scoring (0–100) · IOC matching · Attack chain tracking · Anomaly detection
File System Callbacks Pre/post I/O interception · Ransomware pattern detection (write-rate, entropy, extension analysis) · Rename/delete monitoring · MFT analysis
Process Callbacks LOLBin detection · Parent PID spoofing · Token manipulation · Command-line analysis · WSL boundary crossing · Process masquerading
Thread Callbacks Remote thread detection · APC injection monitoring · Thread context hijacking · Start address validation
Image Load Callbacks DLL injection detection · Reflective loading · Unsigned module tracking · Known-vulnerable driver blocking
Registry Callbacks Persistence detection (Run/RunOnce/Services) · Security descriptor tampering · Registry key protection
Network Filter C2 beacon detection · DGA domain recognition · DNS anomaly analysis · Data exfiltration detection · TLS metadata inspection
Object Callbacks Handle-based self-protection · Suspicion scoring · Handle stripping for protected processes
Self-Protection Anti-unload · Callback guard · Runtime .text integrity verification · Anti-debug · UEFI variable monitoring
ALPC Monitor Advanced Local Procedure Call tracking · Cross-process communication analysis
ETW Provider Structured kernel telemetry · Event correlation · Diagnostic tracing
Sync Infrastructure Thread pool · Timer manager · Work queue · Deferred procedure calls · Async work queue
Cache System Scan cache with LRU eviction · TTL-based expiry · Concurrent access optimization
Transaction Monitor NTFS transactional operations · TxF abuse detection (process doppelgänging)
Power Management Sleep/hibernate state tracking · Resume-time integrity checks
Exclusion Engine Per-process · Per-path · Per-hash exclusion management with kernel-user sync

Kernel Technologies

  • Windows Filter Manager minifilter — altitude 385210, 14 operation callbacks
  • PsSetCreateProcessNotifyRoutineEx2 — process lifecycle with LOLBin scoring
  • CmRegisterCallbackEx — registry monitoring with persistence detection
  • ObRegisterCallbacks — handle-based self-protection with suspicion scoring
  • /INTEGRITYCHECK linked for PsSetCreateProcessNotifyRoutineEx compliance
  • CNG (BCrypt) — kernel-mode SHA-256/MD5 hashing for file reputation
  • Memory-mapped shared definitions for kernel↔user-mode type safety

PhantomEmulator — Malware Emulation Engine

A custom-built x86/x64 CPU emulation engine for safe malware detonation and analysis — no hypervisor dependency, no third-party emulation library. Designed to execute and analyze packed, obfuscated, and evasion-aware malware in a fully controlled virtual environment.

Core Engine

Component Description
CPU Emulator Full x86/x64 instruction execution — arithmetic, logic, control flow, stack, string, FPU, SSE2, SSE4, AES-NI
Instruction Decoder Custom decoder with VEX/EVEX/AVX-512 prefix support and YMM register handling
JIT Compiler Just-in-time compilation framework for hot-path acceleration
Virtual Memory Page-level memory management with protection flags, guard pages, and access tracking
PE Loader Full PE32/PE32+ loading — imports, exports, relocations, TLS callbacks, resources, shellcode injection
Thread Scheduler Cooperative multi-threading with synchronization primitives (mutex, event, semaphore, critical section)

Windows API Emulation — 10 DLLs, 90+ API Handlers

DLL Emulated APIs
kernel32.dll File I/O · Memory · Process · Thread · Console · Library · APC Injection · File Mapping · Sync · Time · Environment · Strings
ntdll.dll Nt/Zw File · Memory · Process · Thread · Registry · System Info · Token · Loader · RTL · Syscall dispatch
advapi32.dll Registry · Service · Security · Credential access
ws2_32.dll Socket · Connect · Send/Recv · DNS resolution
winhttp.dll HTTP sessions · Request/Response · TLS
wininet.dll Internet sessions · FTP · HTTP · Cache
ole32.dll COM initialization · Object creation
shell32.dll Shell execution · File operations
user32.dll Window messages · Screen capture · Input
urlmon.dll URL download · MIME detection

Virtual OS Environment

  • Virtual File System — Isolated FS with pre-seeded Windows directory structure
  • Virtual Registry — Full HKLM/HKCU emulation with common key population
  • Virtual Network — Simulated DNS, HTTP, and socket responses for C2 detonation
  • Virtual Process — Process environment block (PEB/TEB) emulation

Anti-Evasion Countermeasures

  • Timing anti-evasion — Accelerated tick counts, QueryPerformanceCounter spoofing, GetTickCount manipulation
  • Debugger anti-evasionIsDebuggerPresent returns false, PEB flags cleaned, NtQueryInformationProcess spoofed
  • Environment anti-evasion — Realistic CPU/RAM/disk metrics, proper username/computername, registry artifacts
  • VM anti-evasion — No hypervisor artifacts, realistic CPUID responses, clean SMBIOS/DMI data

Analysis Suite — 12 Analyzers

Analyzer Capability
APISequenceAnalyzer Markov chain API call pattern analysis · n-gram extraction · Sequence similarity scoring
BehaviorMonitor 150 behavioral rules covering fileless, LOLBin, injection, credential theft, evasion, ransomware
CryptoDetector AES/Twofish/Serpent/ECC detection · Encoding/obfuscation · Ransomware crypto patterns
EvasionDetector Anti-debug, anti-VM, anti-sandbox technique identification
IOCExtractor IP/domain/URL/email/hash/mutex/registry IOC extraction from emulation traces
MemoryForensics Process memory diff analysis · Injected code detection · Unpacking artifact recovery
MITREMapper Automatic MITRE ATT&CK technique attribution from observed behaviors
NetworkBehaviorAnalyzer C2 signature matching · JA3 fingerprinting · TLS analysis · P2P detection · HTTP header profiling
StringExtractor ASCII/Unicode/stack-constructed string recovery from emulation memory
ThreatScorer Multi-signal threat scoring with weighted evidence aggregation
UnpackingEngine Runtime unpacking with OEP detection · Multi-layer unpacking · 100+ packer signatures
PerformanceProfiler Instruction-level profiling for emulation optimization

Integration

  • KernelIPCBridge — Direct communication with PhantomSensor.sys for kernel-assisted analysis
  • ResultConverter — Translates emulation results to unified detection events
  • EmulationSession — Orchestrates full sample analysis with timeout and resource limits

PhantomDisassembler — Custom Instruction Decoder

Status: in development

A from-scratch x86/x64 instruction decoder being built to replace the Zydis third-party dependency, with the goal of zero external dependencies for instruction-level analysis across the platform. The PhantomEmulator's existing decoder — including VEX/EVEX/AVX-512 support — serves as the foundation.


PhantomCore — Shared Detection Engine

The user-mode malware hunting engine, shared by all three product tiers (Home, EDR, XDR). 23 module families comprising the detection, protection, and intelligence stack:

Real-Time Protection Layer

Module Role
RealTimeProtection Master orchestrator — coordinates all detection engines
ExploitPrevention ROP · JIT spray · Stack pivot · Heap spray · Kernel exploit detection · DEP/ASLR/CFG/CET enforcement
BehaviorBlocker Real-time behavioral analysis with MITRE ATT&CK correlation
FileSystemFilter On-access scan orchestration · LRU cache · Kernel minifilter communication
NetworkTrafficFilter C2 beacon analysis · DGA detection · Exfiltration monitoring · WFP integration
ProcessCreationMonitor LOLBin classification · Parent-child validation · Command-line analysis · Masquerading detection
MemoryProtection DEP enforcement · Guard pages · W^X policy · ROP/shellcode/reflective DLL detection
ZeroHourProtection Zero-day cloud verdict · Adaptive heuristics · Outbreak mode
FileIntegrityMonitor Critical system file integrity verification
AccessControlManager Fine-grained access policy enforcement

Detection Data Stores

Store Technology
SignatureStore Custom B-tree index · YARA rule integration · Copy-on-write updates · Bulk import
PatternStore Aho-Corasick automaton · Boyer-Moore · KMP failure functions · SSE4.2/AVX2 SIMD acceleration
HashStore Bloom filter (0.001% FP) · Memory-mapped DB · O(1) reputation lookups
FuzzyHasher Approximate/similarity hashing built on TLSH (Apache-2.0), deliberately chosen over GPL-licensed ssdeep to keep the dependency set permissive
ThreatIntel STIX 2.1 / TAXII 2.1 ingestion · Sharded B-tree index · LRU cache · IOC correlation
Whitelist Hash + pattern whitelisting · Bloom filter · Publisher trust chains

Core Detection Modules

Category Modules
Process ProcessAnalyzer · ProcessInjectionDetector · ProcessHollowingDetector · AtomBombingDetector · DLLInjectionDetector · ReflectiveDLLDetector · ThreadHijackDetector · MemoryScanner · ProcessMonitor · ProcessKiller
File System DirectoryMonitor · FileWatcher · FileHasher · FileTypeAnalyzer · ExecutableAnalyzer · ArchiveExtractor · DocumentScanner · MediaFileScanner · FileLockManager · MountPointMonitor · FileReputation
Network NetworkMonitor · DNSMonitor · BotnetDetector · FirewallManager · DDosProtection · EmailScanner · TorDetector · P2PMonitor · WebProtection
Registry RegistryAnalyzer · EventLogger
Engine ScanEngine · ThreatDetector · HeuristicAnalyzer · QuarantineManager · PolymorphicDetector · ZeroDayDetector · PackerUnpacker · SandboxAnalyzer · EmulationEngine · MachineLearningDetector
System CrashHandler

Anti-Evasion Suite

Module Detection
VMEvasionDetector 50+ VM detection techniques with ASM-level CPUID/RDTSC/MSR checks
SandboxEvasionDetector Sleep acceleration · Mouse movement · Screen resolution · Environment fingerprinting
DebuggerEvasionDetector Hardware breakpoints · Software breakpoints · Timing checks · NtQueryInformationProcess
PackerDetector 100+ packer signatures · Entropy analysis · Section characteristics · Import table anomalies
ProcessEvasionDetector Parent PID spoofing · Token theft · Job object escape · WoW64 abuse
NetworkBasedEvasionDetector DNS tunneling · Domain fronting · Fast-flux · Encrypted C2 channels
TimeBasedEvasionDetector RDTSC delta analysis · NTP manipulation · Delayed execution
EnvironmentEvasionDetector User/system artifact checks · Registry fingerprinting · File system probing
Metamorphic/Polymorphic Instruction-level mutation detection · Code morphing analysis

Security & Self-Defense

Module Protection
SelfDefense Orchestrates all protection modules
TamperProtection File hash integrity · DLL hijack prevention · Critical path monitoring
ProcessProtection Anti-termination · Handle stripping · Token protection
MemoryProtection DEP · Guard pages · RWX prevention
FileProtection ACL hardening · ADS stripping · Integrity monitoring
RegistryProtection Service key protection · Run/RunOnce guarding
AntiDebug Multi-layer debugger detection and prevention
CryptoManager AES-GCM encryption · BCryptGenRandom · Key zeroization
CertificateValidator Chain validation · CRL/OCSP checking
DigitalSignatureValidator Authenticode verification · Catalog file validation

Script and Scripting Engine Protection

Module Coverage
AMSIIntegration AMSI bypass detection · Provider integrity · Tamper repair
PowerShellScanner -EncodedCommand · IEX · AMSI bypass · Constrained Language Mode bypass
JavaScriptScanner Obfuscation detection · eval() chains · WSH abuse
VBScriptScanner WScript.Shell · CreateObject · ActiveX abuse
MacroDetector VBA macros · AutoOpen/AutoExec · Macro 4.0 · DDE
PythonScriptScanner exec/eval · subprocess · ctypes injection · PyInstaller analysis

Other Infrastructure

Module Purpose
PEParser Full PE32/PE32+ parsing · Section analysis · Import/export · Delay imports · .NET metadata
Communication Encrypted kernel↔user-mode IPC · Message dispatch · Protocol handling
Database SQLite-backed persistent storage · Configuration management
RansomwareProtection Honeypot files · VSS guard · Entropy-based detection · Rollback
Performance CPU/Disk/Network monitoring · Ransomware write-rate detection · C2 beaconing
Update Secure delta updates · Cryptographic verification · Rollback support
Config Centralized configuration management

MITRE ATT&CK Coverage

526 distinct ATT&CK technique IDs — 193 base techniques plus sub-techniques — are referenced across the kernel sensor and the user-mode detection sources, so detections carry T-ID attribution for SOC integration. This measures attribution coverage in the detection logic; it is not a benchmarked efficacy claim per technique.


Product Tiers

Tier Target Description
Phantom Home Consumer endpoints Lightweight protection with local desktop UI
Phantom EDR Enterprise endpoints Full detection + response with management dashboard
Phantom XDR Enterprise fleet Extended detection across endpoint, cloud, identity, network

All three tiers share the same kernel sensor, detection engines, AI models, and emulation engine. Product differentiation happens at the orchestration, UI, and management layers.


Building

⚠️ The codebase is under active development and not yet packaged for external builds. Full build instructions will be provided when the project reaches beta.

Requirements:

  • Visual Studio 2022 with C++23 support (MSVC v143)
  • Windows Driver Kit (WDK) 10.0.22621.0+
  • Windows SDK 10.0.22621.0+
  • Python 3.10+ with PyTorch (for PhantomCortex training only)
  • Test environment: Windows 10/11 x64 VM with Driver Verifier enabled

Quick build (user-mode only):

MSBuild.exe ShadowStrike.sln /p:Configuration=Release /p:Platform=x64 /t:ShadowStrike /m

Full build (includes kernel driver — requires WDK):

MSBuild.exe ShadowStrike.sln /p:Configuration=Release /p:Platform=x64 /m

Repository Structure

ShadowStrike/
├── PhantomSensor/              # Kernel driver — WDM minifilter, 20 detection subsystems
│   └── PhantomSensor/
│       ├── Behavioral/         # MITRE engine · Threat scoring · IOC matching
│       ├── Callbacks/          # Process · Thread · Image · Registry · FS callbacks
│       ├── Communication/      # Kernel↔user-mode IPC port
│       ├── Memory/             # VAD tracking · Injection detection · ROP/shellcode
│       ├── Network/            # WFP filters · C2/DGA/exfil detection
│       ├── Syscall/            # Direct syscall · Heaven's Gate · Hell's Gate
│       ├── SelfProtection/     # Anti-tamper · Callback guard · Integrity
│       ├── Sync/               # Thread pool · Timer · Work queue · DPC
│       └── ...                 # 20 subsystem folders total
│
├── PhantomEmulator/            # Custom x86/x64 emulation engine
│   ├── Core/                   # CPU · Memory · JIT · PE Loader · Threading
│   │   ├── CPU/                # Instruction decoder · Executor (15 categories)
│   │   ├── Memory/             # Virtual memory manager · Memory tracker
│   │   ├── Loader/             # PE/shellcode loading · Import/export resolution
│   │   └── Threading/          # Cooperative scheduler · Sync primitives
│   ├── WinAPI/                 # 10 DLLs · 90+ API handlers
│   ├── VirtualOS/              # Virtual FS · Registry · Network · Anti-evasion
│   ├── Analysis/               # 12 analyzers · Behavior · Crypto · MITRE · IOC
│   ├── Integration/            # Kernel IPC bridge · Session · Result converter
│   └── Common/                 # Types · Config · Constants · Errors
│
├── PhantomCortex/              # AI/ML training pipeline (Python)
│   └── training/
│       ├── models/             # 5 model architectures (LightGBM, CNN, GRU, MLP, AE)
│       ├── features/           # Feature extraction pipeline
│       ├── feeds/              # 6 threat intel feed integrators
│       ├── data/               # Dataset generators · EMBER loader
│       ├── evaluation/         # Model evaluation · Metrics
│       └── export/             # ONNX export · Quantization
│
├── src/
│   └── PhantomCore/            # User-mode detection infrastructure, 23 module families
│       ├── AI/                 # C++ inference bridge → PhantomCortex models
│       ├── Core/               # Engine · FileSystem · Network · Process · Registry · System
│       ├── RealTime/           # RTP · Exploit prevention · Behavior blocking
│       ├── AntiEvasion/        # 9 evasion detection modules + ASM
│       ├── Security/           # 10 self-defense modules
│       ├── Scripts/            # 6 script analysis engines
│       ├── SignatureStore/     # B-tree · YARA · Copy-on-write
│       ├── PatternStore/       # Aho-Corasick · Boyer-Moore · SIMD
│       ├── HashStore/          # Bloom filter · Memory-mapped DB
│       ├── ThreatIntel/        # STIX 2.1 · IOC · Sharded index
│       ├── PEParser/           # Full PE32/PE32+ parser
│       ├── RansomwareProtection/ # Honeypot · VSS · Entropy · Rollback
│       ├── Performance/        # CPU · Disk · Network monitoring
│       └── ...                 # 23 module families total
│
├── include/                    # Vendored headers (YARA · SQLiteCpp · tlsh)
├── vendor/                     # Vendored libraries
├── tests/                      # Unit · integration · fuzz · contract tests
├── malware_tests/              # Malware sample testing framework
└── docs/                       # Architecture documentation

Dependencies

A deliberate design goal is a small, permissively licensed dependency set: the supply chain of a security product is part of its attack surface, and every third-party component in a Ring-0-adjacent product is something a user would otherwise have to audit separately.

There are no GPL dependencies.

Dependency Licence Role Notes
YARA BSD-3-Clause Malware pattern matching 11,053 rules compiled into the shipped database; third-party rule attribution ships with the product
ONNX Runtime 1.20 MIT ML inference for PhantomCortex
Zydis MIT x86/x64 instruction decoding Being removed — PhantomDisassembler is the in-house replacement
SQLite + SQLiteCpp Public domain / MIT Persistent configuration and event storage
nlohmann/json MIT JSON parsing
pugixml MIT XML parsing
TLSH Apache-2.0 Fuzzy / similarity hashing Chosen over GPL-licensed ssdeep specifically to keep the dependency set permissive
Public Suffix List MPL-2.0 Registrable-domain determination for DNS, URL and DGA analysis Data only, no code. Vendored under content/psl/; a last-dot split cannot tell co.uk from example.com
OpenSSL Apache-2.0 Vendored The product's own cryptography uses Windows CNG/BCrypt; OpenSSL's remaining surface is being reduced
Qt 6 LGPL-3.0 Desktop UI only Not present in the kernel sensor or the detection path
googletest / googlemock BSD-3-Clause Test framework Test-only, not shipped

Platform APIs used directly rather than through a wrapper: Windows Filter Manager (WDK), CNG/BCrypt, WinVerifyTrust, AMSI, Windows Filtering Platform, and ETW.


Testing and Verification

Layer Coverage
User-mode unit and integration tests 5,104 automated tests across 539 suites, run green with zero skips before any change is committed
Source-level contract tests 624 tests holding kernel↔user-mode protocol invariants, security-policy invariants, and detection-integrity rules that a compiler cannot check
Static analysis Coverity Scan on the kernel sensor — 0.25 defects/KLoC
Kernel runtime verification Driver Verifier with zero violations; build-deploy-test cycles against live Windows endpoints, analysed from service logs and kernel traces

The contract tests exist because the most dangerous regressions in a security product are not crashes — they are a detector quietly becoming less precise, or a trust decision silently widening. Each one pins an invariant to the source and is validated by mutation: the invariant is deliberately broken, and the test that must fail is required to be the only one that does.


Known Limitations

An alpha under active development. A security product that is vague about its own gaps is asking for trust it has not earned, so this is the current state of what is and is not finished.

Not yet shipped to endpoints

  • ML models. The inference bridge is wired into the scan pipeline and four models are trained, but the models are not packaged into the installer and there is no signed model distribution yet, so ML detection is inactive on an installed endpoint.
  • Detection content is thin. The shipped database carries 11,053 YARA rules, but the malware hash section holds only EICAR test hashes. Most public malware-hash feeds are licensed for non-commercial use only, which constrains what this project may redistribute; hash content is therefore user-supplied via the updater for now.

Verified working, still hardening

  • False positives on signed binaries. Publisher trust is now evaluated at the script-conviction, remediation, registry-write and file-enumeration decision points, each change shipped with contract tests that fail if a detector is weakened rather than made more precise. Remaining false positives are being worked through against field evidence from live endpoints.
  • Kernel IPC frame robustness. The encrypted kernel channel is established and carrying scan traffic, but a fraction of frames currently fail integrity checks and are answered fail-open. Every such frame is an unscanned file, and this is treated as a correctness defect, not a performance one.
  • Cloud-backed files. Files stored as OneDrive placeholders are currently unreadable by the scanner and are not yet distinguishable from scanned files in the statistics.

Infrastructure and process

  • Kernel testing cannot be automated. No CI system can load a kernel driver, so integration verification runs as build-deploy-test cycles against real Windows endpoints, analysed from service logs and kernel traces.
  • Static analysis coverage is partial. The Coverity result of 0.25 defects/KLoC applies to the kernel sensor; extending the same analysis across every source tree is outstanding work.
  • No independent security review or third-party detection benchmark. Neither has been funded or performed.
  • Driver signing. Distribution to end users without disabling Secure Boot requires Microsoft attestation/WHQL signing, which is not yet in place.

Contributing

Please read CONTRIBUTING.md before submitting anything.


Security

To report a vulnerability, do not open a public GitHub issue. See SECURITY.md for the private disclosure process.


License

GNU Affero General Public License v3.0 (AGPL-3.0)

Any derivative work must also be released under AGPL-3.0.

The engine stays open source. The kernel sensor, the detection engines, the emulation engine and the inference bridge are AGPL-3.0 and will remain so — auditability is the reason this project exists, and a product you cannot inspect is the thing it is meant to replace. Optional hosted services may be offered commercially around that engine in future — managed threat-intelligence feeds, fleet and threat-intel dashboards for the EDR and XDR tiers, and similar operational infrastructure. Those would be services, not a closed fork: running the platform entirely on your own infrastructure, with no external dependency and no feature held back, will always be supported.

For commercial licensing enquiries: contact@shadowstrike.dev


Acknowledgments

  • The Windows Driver Kit documentation and Microsoft kernel engineering resources
  • YARA — malware pattern matching engine
  • The EMBER dataset by Elastic — PE feature training data
  • The security research community whose published work makes open-source EDR possible
  • Every open-source threat intel feed provider (abuse.ch, AlienVault OTX, MalwareBazaar)

ShadowStrike-Labs · Alpha · shadowstrike.dev

Every line auditable.

For business inquiries: contact@shadowstrike.dev

Releases

Sponsor this project

Packages

Contributors

Languages