Security Engine
WormSec includes a modular Endpoint Detection & Response (EDR) engine for Linux.
It continuously monitors system activity through the /proc filesystem
and generates structured alerts whenever suspicious behaviour is detected.
Overview
The security engine is composed of independent detectors running inside a
central monitoring loop. Every 500 milliseconds, the engine collects a new
snapshot of running processes from the Linux /proc filesystem.
Each detector analyses this snapshot and produces alerts independently.
Architecture
The monitoring engine follows a simple pipeline:
Collector (/proc)
│
▼
Process Snapshot
│
▼
Detection Engine
│
┌──────┼───────────────┐
│ │ │ │
CPU RAM Zombie Orphan
│ │ │ │
└──────┴───────┴───────┘
│
▼
JSON Alerts
Each detector receives the same process snapshot and performs a specific analysis. Detectors are completely independent from one another.
Available Detectors
The current implementation includes several behavioural detectors:
F4 High CPU usage
F5 High memory usage
F6 Orphan processes
F7 Persistent zombie processes
F8 Execve burst
F9 Thread explosion
F10 Fork abuse
F11 Privilege changes
F12 Ptrace abuse
F13 Sensitive file access
F14 Self deleting binaries
F15 Chmod abuse
F16 Dynamic executable detection
Each detector evaluates a different aspect of process behaviour and emits structured alerts containing the process identifier, executable name, severity level and detection reason.
Monitoring Cycle
The engine continuously repeats the following workflow:
Read /proc
│
▼
Build process snapshot
│
▼
Run every detector
│
▼
Generate JSON alerts
│
▼
Wait 500 ms
│
└───────────────► Repeat
This lightweight polling approach allows WormSec to monitor Linux endpoints without requiring kernel modules or elevated privileges while remaining fully extensible through additional detectors.