Describe Sentinel as endpoint detection and response

This commit is contained in:
Luna 2026-06-13 05:49:34 -07:00
parent a51478fa22
commit 812cf0c836
6 changed files with 28 additions and 25 deletions

View file

@ -1,8 +1,8 @@
# Enodia Sentinel # Enodia Sentinel
A Linux host security platform: intrusion detection, file/package integrity, A Linux endpoint detection and response platform: intrusion detection,
anti-rootkit cross-checks, tamper-evidence, forensic snapshots, push alerts, and file/package integrity, anti-rootkit cross-checks, tamper-evidence, forensic
a read-only operator console. snapshots, push alerts, response planning, and a read-only operator console.
The current daemon continuously runs detectors over live system state — The current daemon continuously runs detectors over live system state —
processes, sockets, file descriptors, the SUID inventory, sensitive files, the processes, sockets, file descriptors, the SUID inventory, sensitive files, the
@ -17,8 +17,8 @@ the package database was tampered with, and what to do next."*
## Product direction ## Product direction
Enodia is becoming more than an IDS. The local detector is the first layer of a Enodia Sentinel is an endpoint detection and response system. IDS-style
broader host security platform: signatures are one detection layer inside a broader host security platform:
| Function | Current capability | Direction | | Function | Current capability | Direction |
|---|---|---| |---|---|---|
@ -438,7 +438,7 @@ change into the normal alert/snapshot/push pipeline (`fim_modified` `sid 100017`
## False positives & triage ## False positives & triage
A host IDS that cries wolf gets ignored, so Sentinel ships explicit tooling to An EDR that cries wolf gets ignored, so Sentinel ships explicit tooling to
separate benign noise from real findings — built on **provenance**: a binary separate benign noise from real findings — built on **provenance**: a binary
shipped by your package manager (`pacman`/`dpkg`/`rpm`) is overwhelmingly likely shipped by your package manager (`pacman`/`dpkg`/`rpm`) is overwhelmingly likely
to be legitimate (the same idea behind OSSEC's rootcheck and AIDE). to be legitimate (the same idea behind OSSEC's rootcheck and AIDE).
@ -505,9 +505,10 @@ conscious tradeoff documented in the file itself.
## Roadmap ## Roadmap
The short version: Enodia grows from local HIDS into a host security platform: The short version: Enodia grows from local endpoint detection and response into
incident grouping, posture checks, response planning, richer eBPF telemetry, a host security platform: incident grouping, posture checks, response planning,
fleet health, external anchors, and eventually attestation-ready assurance. richer eBPF telemetry, fleet health, external anchors, and eventually
attestation-ready assurance.
See [docs/ROADMAP.md](docs/ROADMAP.md) for the release tracks and phased plan. See [docs/ROADMAP.md](docs/ROADMAP.md) for the release tracks and phased plan.
The polling daemon isn't throwaway — it's the **oracle**: every signature is a The polling daemon isn't throwaway — it's the **oracle**: every signature is a

View file

@ -1,8 +1,9 @@
# Enodia Sentinel Roadmap # Enodia Sentinel Roadmap
This roadmap moves Enodia Sentinel from a host IDS into a host security platform: This roadmap moves Enodia Sentinel from single-host endpoint detection and
detect, verify, investigate, respond, and assure. Dates are intentionally not response into a fuller host security platform: detect, verify, investigate,
promised here; the sequence matters more than calendar precision. respond, and assure. Dates are intentionally not promised here; the sequence
matters more than calendar precision.
## Release Tracks ## Release Tracks
@ -145,7 +146,7 @@ Exit criteria:
- Multi-stage correlation raises one higher-confidence incident without hiding - Multi-stage correlation raises one higher-confidence incident without hiding
the underlying raw alerts. the underlying raw alerts.
## v1.1.1: IDS Quality and Rule Operations ## v1.1.1: Detection Quality and Rule Operations
Purpose: make detection coverage easier to audit, tune, and extend without Purpose: make detection coverage easier to audit, tune, and extend without
turning Sentinel into a noisy rules dump. turning Sentinel into a noisy rules dump.
@ -170,7 +171,7 @@ Exit criteria:
- Operators can inspect, test, document, and tune detection rules without - Operators can inspect, test, document, and tune detection rules without
reading Python source. reading Python source.
- Every shipped IDS rule has reproducible fixture/drill coverage and stable - Every shipped detection rule has reproducible fixture/drill coverage and stable
operator documentation. operator documentation.
## v1.2: Fleet Mode ## v1.2: Fleet Mode

View file

@ -1,11 +1,12 @@
# Enodia Sentinel Specification # Enodia Sentinel Specification
This document defines Enodia Sentinel as a host security platform, not only a This document defines Enodia Sentinel as an endpoint detection and response
signature IDS. The current implementation is a local Linux sensor with evidence system, not only a signature IDS. The current implementation is a local Linux
capture, integrity monitoring, anti-rootkit checks, a dashboard, and alert sensor with evidence capture, integrity monitoring, anti-rootkit checks, a
delivery. The intended product is a defensive control plane for a host or small dashboard, alert delivery, and dry-run response planning. The intended product
fleet: detect compromise, prove what changed, preserve useful evidence, guide is a defensive control plane for a host or small fleet: detect compromise, prove
response, and make sensor tampering visible. what changed, preserve useful evidence, guide response, and make sensor
tampering visible.
## Product Definition ## Product Definition

View file

@ -2,12 +2,12 @@
pkgname=enodia-sentinel pkgname=enodia-sentinel
pkgver=0.6.0 pkgver=0.6.0
pkgrel=1 pkgrel=1
pkgdesc="Host intrusion-detection daemon — signature-based detection of reverse shells, LD_PRELOAD rootkits, fileless malware, and persistence tampering" pkgdesc="Linux endpoint detection and response agent with IDS, integrity, anti-rootkit, and forensic response features"
arch=('any') arch=('any')
url="https://github.com/Enodia/enodia-sentinel" url="https://github.com/Enodia/enodia-sentinel"
license=('GPL-3.0-or-later') license=('GPL-3.0-or-later')
depends=('python>=3.11' 'iproute2' 'procps-ng') depends=('python>=3.11' 'iproute2' 'procps-ng')
optdepends=('python-bpfcc: eBPF event-driven execve monitor (catches short-lived processes)' optdepends=('python-bpfcc: eBPF event-driven execve/syscall monitors (catches short-lived processes and memory telemetry)'
'bpftrace: execve tracing of short-lived processes in snapshots' 'bpftrace: execve tracing of short-lived processes in snapshots'
'libnotify: desktop notifications on alert') 'libnotify: desktop notifications on alert')
backup=('etc/enodia-sentinel.toml') backup=('etc/enodia-sentinel.toml')

View file

@ -5,12 +5,12 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "enodia-sentinel" name = "enodia-sentinel"
version = "0.7.0" version = "0.7.0"
description = "Linux host security platform — detection, integrity, anti-rootkit checks, tamper-evidence, and forensic snapshots" description = "Linux endpoint detection and response platform — detection, integrity, anti-rootkit checks, tamper-evidence, and forensic snapshots"
readme = "README.md" readme = "README.md"
requires-python = ">=3.11" requires-python = ">=3.11"
license = { text = "GPL-3.0-or-later" } license = { text = "GPL-3.0-or-later" }
authors = [{ name = "Enodia" }] authors = [{ name = "Enodia" }]
keywords = ["security", "ids", "hids", "detection", "linux", "forensics"] keywords = ["security", "edr", "ids", "hids", "detection", "linux", "forensics", "response"]
classifiers = [ classifiers = [
"License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
"Operating System :: POSIX :: Linux", "Operating System :: POSIX :: Linux",

View file

@ -1,5 +1,5 @@
[Unit] [Unit]
Description=Enodia Sentinel - host intrusion detection daemon Description=Enodia Sentinel - endpoint detection and response agent
After=network.target After=network.target
Documentation=https://github.com/Enodia/enodia-sentinel Documentation=https://github.com/Enodia/enodia-sentinel