TL;DR
- Container runtime security tools trace kernel system calls with eBPF to catch attacks like container escape, fileless execution, and exfiltration as they happen, not at scan time.
- Detection alone is a louder alarm; on-host response that can kill, quarantine, or block locally, even with no cloud backend, is what actually stops an attacker.
- Prioritize findings with exploited-vulnerability scoring: patch every CISA KEV entry, rank the rest by EPSS, and filter by what actually runs in production.
- Runtime discipline now extends to LLM agents and MCP servers, where prompt injection, tool-poisoning, and excessive agency are runtime behaviors, not static flaws.
- CRA and NIS2 want evidence, not posture slides: SBOMs, exploitation-aware findings, and control-to-requirement-ID mapping turn compliance into live runtime proof.
- Tool choice is situational; EdgeLabs fits self-hosted or air-gapped Kubernetes and AI-agent runtime security with detection and response running entirely on one agent.
Q1: What Is Container Runtime Security, and Why Isn't Image Scanning Enough?
Container runtime security watches running containers at the kernel level, often using eBPF (a Linux feature that reads system calls safely), to catch and stop live threats like container escapes, crypto-miners, and lateral movement. Image scanning only checks what sits inside an image before it runs. It cannot see an attacker abusing a live workload. You need both, but only runtime protection defends the moment code actually executes.
Why a green pipeline is a dangerous illusion
I have spent years shipping agent-based detection for containers and Kubernetes. Here is what I keep seeing. Teams treat a clean image scan as proof they are safe. It is not.
Scanning tells you what a container contains. Runtime security watches what a container does. Those are different questions, and attackers live in the gap between them.
The standard read gets this backwards. Container security is not really about scanning images. It is about controlling the blast radius from the moment code is written to the moment it runs in production.
⚠️ The "Exit Code Zero" trap
Here is the trap I want you to look for in your own pipeline. Open your CI/CD config and find the scanner step. Check the exit code.
Many teams run a scanner that finds real vulnerabilities, yet the pipeline still passes with exit code zero. The build goes green. The container ships. Nobody blinks.
Having a security tool in place does not mean you are secure. A tool set to report-only, or one whose failures are ignored, is theater. I could be blunt here: a scanner you do not enforce is a log file with a marketing budget.
✅ What runtime detection actually watches
Runtime is where you see the attack, not the theory. On a live workload, a few signals matter more than a wall of CVE counts.
- bin/bash or a shell spawning inside a container that should never open one.
- curl or wget running inside a pod, often the first step of pulling a second-stage payload.
- Writes to system paths or sensitive host directories, a common container-escape tell.
- Sudden outbound traffic spikes, which often mean data exfiltration or a crypto-miner phoning home.
These are behaviors. A build-time scan cannot see any of them, because none of them exist until the container runs.
At EdgeLabs, our single agent uses eBPF kernel-level detection layered above the Falco ecosystem (Falco is the CNCF open-source runtime engine), so we catch these signals as they fire in production, not weeks earlier in a scan report.
Choosing a container runtime security tool is a high-stakes call, because attacks execute at runtime, not at scan time, a tool that cannot reach self-hosted or air-gapped clusters leaves real gaps, and alert noise buries the one signal that matters. I evaluated the tools below against title-specific criteria: runtime versus build-time coverage, Kubernetes-native detection, in-line response, the Falco/eBPF relationship, and deployment reach. This guide is written for the Kubernetes and container runtime-security owner, and the SMB SecOps or DevSecOps lead, moving from build-time scanning toward real on-host detection and response.
Our Evaluation Criteria
- Runtime versus build-time coverage. Does the tool detect and respond to live behavior, or does it mostly scan images and posture before anything runs?
- Kubernetes-native detection. Does it deploy cleanly as a DaemonSet (one agent per node), read Kubernetes audit events, and support admission control across clusters?
- In-line response autonomy. Can it kill, quarantine, or block a source IP on the host itself, not just raise an alert?
- Falco and eBPF relationship. Does it use eBPF kernel-level detection, and is it an open-source rules engine you tune yourself or a managed platform?
- Deployment reach. Does detection and response keep working self-hosted, on-prem, and air-gapped, with no cloud backend required?
Who This Guide Is For
- Kubernetes and container runtime-security owners moving from build-time scanning to real-time runtime detection and response.
- SMB SecOps and DevSecOps leads making cloud and AI or GPU workloads production-safe without a 24/7 team.
- AI-workload and LLM-agent runtime-security owners securing agents and agentic systems in production.
- Security teams that need detection and response to keep working self-hosted, on-prem, or air-gapped.
The Tools at a Glance
- EdgeLabs: Best for self-hosted or air-gapped Kubernetes and AI workloads that need detection and response on the agent, with no cloud backend.
- Sysdig: Best for cloud-native teams wanting a mature, Falco-rooted runtime and CNAPP platform with broad cloud coverage.
- Aqua Security: Best for teams anchoring on build-time scanning (Trivy) and extending into runtime from the same platform.
- CrowdStrike: Best for organizations standardizing on one endpoint-first XDR platform that also covers container runtime.
- SentinelOne (Singularity Cloud): Best for teams wanting autonomous endpoint XDR with a cloud and container runtime module.
- Oligo Security: Best for application-layer runtime detection focused on live library and dependency behavior.
- Upwind Security: Best for cloud-native teams tying runtime signals back into cloud posture and CNAPP context.
- Falco: Best for teams wanting the CNCF open-source eBPF rules engine and willing to tune and operate it themselves.
| Company | Best For | Detection & Response Model | Deployment & Environment Coverage |
| EdgeLabs | Self-hosted or air-gapped Kubernetes and AI workloads needing detection and response on the agent, with no cloud backend | Agent-only runtime detection and response on the agent (eBPF); in-line host-local blocking; Disconnected Mode | Cloud, data center, on-prem, air-gapped; Docker, Kubernetes, OpenShift, Talos, K3S; x86_64 and ARM_64; GPU AI-inference nodes |
| Sysdig | Cloud-native teams wanting a mature, Falco-rooted runtime plus CNAPP breadth | eBPF runtime detection on Falco heritage, platform-oriented; response leans on the cloud platform | Cloud-first across major clouds and Kubernetes; heavier, more platform- and cloud-oriented deployment |
| Aqua Security | Teams anchoring on build-time scanning and extending into runtime | Build-time scanning (Trivy OSS) plus runtime protection; combined scan-to-runtime model | Cloud and Kubernetes; container-focused across CI/CD and production |
| CrowdStrike | Standardizing on one endpoint-first XDR platform that also covers containers | XDR/endpoint-first engine with a container runtime module added on top | Cloud-connected agent across endpoints, servers, and containers; cloud-leaning response |
| SentinelOne (Singularity Cloud) | Autonomous endpoint XDR extended to cloud and container runtime | XDR/endpoint-first with autonomous response; cloud workload and container module | Cloud-connected across endpoints, cloud workloads, and containers |
| Oligo Security | Application-layer runtime detection on live library behavior | Runtime application and library behavior detection | Cloud and Kubernetes application workloads |
| Upwind Security | Cloud-native teams tying runtime signals into cloud posture | Runtime signals feeding cloud posture and CNAPP context | Cloud-native, cloud-connected across major clouds and Kubernetes |
| Falco | Teams wanting the CNCF open-source eBPF engine and willing to operate it | Open-source eBPF rules engine; detection only, response via integrations you build | Self-hostable across Kubernetes and Linux hosts; you run and tune the stack |
Total providers: 8.
1 out of 8EdgeLabs
- Runtime vs build-time coverage: Runtime-first. Detects live behavior (container escape, fileless execution, lateral movement), not just image contents.
- Kubernetes-native detection: Deploys as a DaemonSet, reads Kubernetes audit rules (kubectl exec/attach, sensitive hostPath), one agent per node.
- In-line response autonomy: Host-local, time-boxed source-IP blocking (1 minute to 90 days) that fires with no cloud backend.
- Falco and eBPF relationship: eBPF kernel-level detection, Falco-ecosystem compatible, layered above it with AI, NDR, IPS, and playbooks.
- Deployment reach: Full detection and response continue offline in Disconnected Mode, self-hosted, on-prem, or air-gapped.
- Published case study (EdgeLabs' own, PR-cleared): Trader Joe's reported 83% MTTR reduction, 573% ROI, roughly $1.3M operational savings, an under-2-week deploy, and 0 outages.
- Runs detection on shared GPU nodes using only CPU, so it can catch cryptojacking without taxing the GPU budget.
"Good IPS/IDS/EDR software. Webportal management is good. Docker container integration is useful."
Verified User in Computer Software · EdgeLabs G2 verified review
"It's beneficial to secure any website or any server from hackers. I don't think there is any option for dislike but the commercial seems high."
Abhishek A. · EdgeLabs G2 verified review
Sysdig
- Runtime vs build-time coverage: Strong runtime coverage. Focuses on "what containers do, not just what they contain," using system-call capture.
- Kubernetes-native detection: Mature Kubernetes-native detection and broad cloud-native visibility.
- In-line response autonomy: Response is capable but leans on the cloud platform, rather than fully on the agent.
- Falco and eBPF relationship: Deep Falco heritage. Sysdig originated much of the Falco lineage and runs eBPF detection.
- Deployment reach: Cloud-first and heavier. Less suited to fully air-gapped, no-cloud-backend operation.
- Widely adopted in cloud-native environments and closely tied to the Falco project's runtime detection lineage.
- Many teams already trust the Falco engine as the open-source baseline that Sysdig builds on.
Aqua Security
- Runtime vs build-time coverage: Strong on both. Anchors on build-time image scanning (Trivy) and extends into runtime enforcement and drift detection.
- Kubernetes-native detection: Kubernetes and container-native, tight CI/CD integration (Jenkins, GitLab, Docker).
- In-line response autonomy: Enforces policies and monitors containers at runtime; response is platform-managed.
- Falco and eBPF relationship: Runtime protection is agent-based, not centered on the Falco open-source engine the way Sysdig is.
- Deployment reach: On-prem deployable via Helm chart, which is a genuine strength for self-hosted teams.
- Widely used for image scanning before artifact promotion, with a curated, frequently updated vulnerability database.
- Reviewers cite catching real issues like Log4j in their pipelines.
CrowdStrike
- Runtime vs build-time coverage: Strong behavioral runtime detection on endpoints; container runtime is an extension of the endpoint engine.
- Kubernetes-native detection: Covers containers and Kubernetes through its Falcon Cloud Security (CNAPP) line, partly assembled through acquisitions.
- In-line response autonomy: Fast automated response, but leans on cloud SaaS availability.
- Falco and eBPF relationship: Behavioral detection engine, not built around the Falco open-source rules project.
- Deployment reach: Cloud-connected by design. Heavy SaaS dependency, less suited to air-gapped, no-cloud operation.
- Broadly deployed enterprise endpoint protection with strong real-time behavioral detection.
- Reviewers consistently praise it for catching novel threats, not just known signatures.
SentinelOne (Singularity Cloud)
- Runtime vs build-time coverage: Real-time protection for cloud servers and containers, plus CI/CD and IaC scanning; runtime rides on the endpoint engine.
- Kubernetes-native detection: Covers containers and Kubernetes through Singularity Cloud, multi-cloud in one dashboard.
- In-line response autonomy: Strong AI-driven automated response, which reduces manual work.
- Falco and eBPF relationship: Proprietary behavioral engine, not Falco-centered.
- Deployment reach: Cloud-connected. Reviewers note it can feel heavy and expensive for smaller environments.
- Reviewers report real-time protection across cloud, containers, and data.
- Attack-path analysis surfaces exploitable risks rather than raw alert lists.
Oligo Security
- Runtime vs build-time coverage: Runtime-focused at the application and library layer, watching how dependencies behave when they run.
- Kubernetes-native detection: Operates in cloud-native and Kubernetes application environments.
- In-line response autonomy: Focused more on detection and prioritization of live library behavior than on host-level in-line blocking.
- Falco and eBPF relationship: Uses runtime instrumentation focused on the application layer, a different vantage point than kernel-syscall engines.
- Deployment reach: Cloud-native oriented.
- Positioned around observing real library execution at runtime.
- Helps cut the noise of vulnerabilities that never actually load or run.
Upwind Security
- Runtime vs build-time coverage: Uses runtime data to sharpen cloud posture and prioritization, blending both views.
- Kubernetes-native detection: Cloud-native and Kubernetes-aware.
- In-line response autonomy: Oriented toward context and prioritization within a cloud platform, rather than host-local offline blocking.
- Falco and eBPF relationship: Uses runtime sensors to enrich cloud posture, not a self-hosted Falco rules engine.
- Deployment reach: Cloud-connected by design.
- Built around using runtime context to prioritize cloud risks.
- Reduces the "everything is critical" problem of posture-only tools.
Falco
- Runtime vs build-time coverage: Purely runtime. Continuously watches running-container behavior via system calls, the open-source baseline for the category.
- Kubernetes-native detection: Deploys cleanly as a DaemonSet and integrates well with Kubernetes and container environments.
- In-line response autonomy: Detection and alerting are the core; response requires you to wire up your own automation.
- Falco and eBPF relationship: This is the CNCF Falco project itself, the reference eBPF engine other tools build on or compare to.
- Deployment reach: Fully self-hostable, which is a real strength, but you own the operation and tuning.
- Broadly adopted as the community standard for container runtime detection.
- Reviewers praise the DaemonSet integration and customizable rules, while noting resource use and configuration complexity.
Q2: How Do eBPF and Syscall Monitoring Actually Detect a Container Attack?
Runtime tools trace kernel system calls using eBPF (a safe way to run small programs inside the Linux kernel) to catch attack behavior like privilege escalation, host-namespace access, or writes to sensitive host paths. They map that behavior to MITRE ATT&CK techniques, then alert or block in real time. Falco, the CNCF-graduated project, is the open-source eBPF baseline every commercial tool is measured against.
What eBPF actually watches, in plain terms
Let me strip the jargon. A system call, or syscall, is how a program asks the Linux kernel to do something, like open a file or start a process.
eBPF lets a security tool read those requests safely, right inside the kernel, without changing your app. That matters because attackers act at the kernel level, not the application layer.
The standard read gets this backwards. Teams instrument the app and hope to see attacks. But an attacker who escapes a container does not use your app's logging. They talk straight to the kernel.
✅ Why kernel telemetry beats app instrumentation
Watching containers means watching what they do, not just what they contain. Falco pioneered this by pairing syscall capture with a rules engine, created inside Sysdig back in 2016.
The result is a live view of behavior. You see the process spawn, the file write, and the network call as they happen, not after a log ships somewhere. This is the same live vantage point our eBPF-based agent is built on.
A container escape, mapped to MITRE ATT&CK
Here is a real signal chain. MITRE ATT&CK is a public catalog of attacker techniques, and eBPF detections map cleanly to it.
- A pod runs unshare to break its namespace isolation (Escape to Host, T1611).
- The process calls memfd_create to run a payload only in memory, leaving no file on disk (fileless execution).
- It uses PTRACE to inspect or tamper with another process (anti-debug and injection).
- Then it writes to a sensitive hostPath or spikes outbound traffic (exfiltration or a miner).
Each step is a syscall. A build-time scan sees none of them, because none exist until the container runs. Catching them live is the core of real workload and application security.
⚠️ Your Monday-morning check
Before you trust any runtime tool, ask two blunt questions. First, does it use eBPF, or an older kernel module that can break on upgrades?
Second, does it run on tainted or managed nodes, like GKE or EKS, where you do not control the kernel? If the answer is fuzzy, keep testing.
Where EdgeLabs fits
We built our single agent to be Falco-ecosystem compatible, layered above it, with eBPF kernel-level detection. You get that trusted open-source detection lineage without becoming the tuning team for it. This is central to how we secure Kubernetes.
Here is my honest take, from watching this play out. There is an IKEA effect in security. Teams overvalue the Falco setup they wired themselves, then quietly drown in the upkeep. Distributed AI computing demands distributed security, so detection has to run where the workload executes, and we add AI, NDR, IPS, and response on top of that eBPF base, in one agent.
Q3: What Separates On-Host Detection AND Response From Detection Alone?
Detection tells you an attacker popped a pod. Response stops them before they move. On-host response means the agent itself can kill a process, quarantine a workload, or block a malicious source IP locally, even with no cloud backend. NIST SP 800-61 Rev. 3 (April 2025) frames this as the Detect-then-Respond execution layer of incident response, not an optional add-on.
Detection without response is a louder alarm
Here is my claim, and I have earned the right to make it. Detection alone is an alert cannon. It tells you the house is on fire, then hands you a clipboard.
I spent years generating millions of security alerts before building EdgeLabs. What I learned is uncomfortable: an alert nobody can act on in time is not security, it is paperwork.
⏰ Why response speed is the whole game
Speed is not a nice-to-have. A single destructive API call can wipe production faster than you can read a Slack message.
I have seen a team lose a database and every backup in one command, because the backups sat on the same volume. Detection would have logged it. Only response could have blocked it.
Map every tool to Detect, Respond, Recover
NIST SP 800-61 Rev. 3 replaced the old four-phase model with a lifecycle aligned to Detect, Respond, and Recover. It is a clean rubric for judging any runtime tool.
Use it as a checklist:
- Detect: Does the tool see the attack behavior live, at the kernel level?
- Respond: Can it act on the host itself, killing, quarantining, or blocking, not just alerting?
- Recover: Does it leave a clear trail of what happened and what it stopped?
⚠️ The question that decides everything
Here is the test I would run in any proof of concept. Cut the cloud link, then trigger an attack.
Many cloud-dependent CNAPP, NDR, and CDR tools go quiet when the backend is unreachable. If detection and response both stop, you do not have on-host response. You have a cloud service with an agent attached.
Where EdgeLabs fits
We run detection AND response entirely on the agent. That includes in-line prevention, host-local, time-boxed source-IP blocking (durations from 1 minute to 90 days, per our own product specs), which keeps working in Disconnected Mode with no cloud backend. If you want to see it, talk to our team or read how our AI-generated playbooks speed up response.
My conviction here is simple, and a little contrarian. A rule in a config file is not a guardrail. Our job is to make the dangerous action impossible, not just discouraged, and that only works if the response fires locally, the instant the behavior does. This is the "detection AND response" the whole category promises, tested against the case that matters: when the cloud is dark and the audit is three days out.
Q5: How Do You Prioritize Runtime Findings Without Drowning in CVEs?
Not every CVE (a publicly listed software flaw) is exploitable, and CVSS severity alone floods you with theoretical criticals. Exploited-vulnerability scoring combines CISA KEV (a list of flaws under confirmed active attack), EPSS (a daily probability that a flaw will be exploited), and runtime context, what actually executes. KEV entries are non-negotiable. Then rank the rest by EPSS.
CVE is not the same as exploit
Let me clear up the biggest misread in vulnerability management. A CVE is a known flaw. It is not proof that anyone can, or will, attack it.
Every exploit started as a CVE, but most CVEs never become exploits. If you treat all of them as equal fires, you burn out your team chasing smoke.
✅ KEV and EPSS, in plain words
Two public data sources fix this. CISA KEV lists flaws that attackers are using right now, with a fix deadline attached.
EPSS, run by FIRST.org, gives each flaw a daily score from 0 to 1, the chance it gets exploited in the next 30 days. The current EPSS v4 model started publishing in March 2025.
The 400-critical problem
Here is what this looks like on a real Monday. Your scanner reports 400 "critical" vulnerabilities. Panic sets in.
But layer in the data, and the picture changes fast:
- Maybe 12 of those 400 sit on the CISA KEV list. Those are confirmed, active, and deadline-bound.
- Another handful score high on EPSS, so they are likely next.
- The rest are theoretical, and many never even load at runtime.
You just went from 400 fires to roughly 15 that matter.
⚠️ Your triage rule
Keep it this simple. First, patch every KEV entry, no debate.
Second, rank the remainder by EPSS, highest first. Third, filter by what actually runs in production, because a flaw in code that never executes is not your top problem. Our approach to runtime vulnerability management is built on exactly this order of operations.
Where EdgeLabs fits
I have lived the unfunded vulnerability backlog, the one where three different tools each scream "critical" and nobody can act. That experience shaped how we scored things at EdgeLabs, and it is a theme we cover in our writeup on the top Linux vulnerabilities.
Our exploited-vulnerability and explainability scoring fuses CVSS, EPSS, CISA KEV, and CWE (a flaw-type taxonomy) with runtime execution context. I want to be precise here: we score by observed exploitation and runtime behavior, not by a reachability model. That scoring feeds the "No Known Exploitable Vulnerabilities" check inside our CRA and NIS2 Compliance Center, so triage and audit evidence come from the same source.
Where my head is right now: the teams that win in the next two years will stop patching what is scary on paper and start patching what is provably exploited. What is the ratio of KEV-listed to total "critical" findings in your last scan? I would genuinely like to know.
Q6: Can a Runtime Tool Also Secure LLM Agents and AI Workloads at Runtime?
As LLM agents and MCP servers (a standard way for AI agents to call external tools) reach production, the runtime layer is where prompt injection, tool-poisoning, and excessive agency do real damage. OWASP now publishes both an LLM Top 10 (2025) and an Agentic Top 10 (December 2025). A runtime tool that watches agent and process behavior, not just container CVEs, extends the same on-host discipline to AI workloads.
Can the same engine watch an agent?
Here is the question I keep sitting with. We know how to watch a container at the kernel level. Can we watch an AI agent the same way?
The standard read says no, that AI safety is a modeling problem for data scientists. I think that read gets it backwards.
⚠️ You can patch a bug, but you cannot patch a brain
An LLM agent is a new kind of insider. It reads files, calls the internet, and can write and run code, all on its own judgment.
That judgment is the risk. You can patch a flawed library. You cannot patch a model that gets talked into doing the wrong thing by a poisoned input.
Why the risks live at runtime
Look at where the OWASP risks actually fire. They do not show up in a pre-flight scan. They show up when the agent runs.
- Prompt injection and indirect injection happen mid-conversation, in production.
- Tool-poisoning corrupts an MCP tool the agent trusts, at call time.
- Excessive agency, an agent doing more than it should, is a runtime behavior, not a static flaw.
A useful guardrail I lean on is the two-of-three rule. An agent that can read files, reach the internet, and execute code has too much power. Allow any two, not all three.
✅ Distributed AI needs distributed security
Here is the turn. If AI compute is spreading across clusters and inference nodes, security has to run where the agent runs, not in a distant control plane.
That is why we built the Parallax engine at EdgeLabs. It acts as an LLM proxy and firewall, doing input and output alignment, prompt-injection and tool-poisoning defense, and hallucination checks on live agents and MCP servers.
Where EdgeLabs fits
Parallax runs on the same agent-only, no-cloud model as our container runtime work. It protects LLM agents and agentic systems in production, and it secures GPU clusters and AI inference nodes, watching GPU workloads using only CPU so there is no GPU tax. This is the core of our AI and LLM security work.
I will stay honest about maturity: this capability, LLM agent security in runtime, is newly released, and the whole category is young. To build trustworthy AI, you have to start by learning how to break it. What I think shifts over the next two years is that securing the agent at runtime stops being niche and becomes the default question every SecOps team has to answer. Are you seeing agents hit production faster than your controls can follow?
Q7: How Do Runtime Tools Help You Prove CRA and NIS2 Compliance, and Which Tool Fits Your Situation?
The EU Cyber Resilience Act (Regulation 2024/2847, in force since November 2024) and NIS2 require secure development, coordinated vulnerability handling, and SBOMs (a Software Bill of Materials, the ingredient list of your software). Posture reports will not prove it. Regulators want evidence of what runs and what is actually exploitable. Runtime tools that export SBOMs, exploitation-aware findings, and control-to-requirement-ID mappings turn compliance into live evidence.
Posture reports are not evidence
Here is my claim, and it has teeth. A clean posture scan is a snapshot of intentions. An auditor wants proof of what actually happened.
CRA Annex I spells out 22 essential requirements, including secure-by-design, vulnerability handling, and SBOM. None of those are satisfied by a slide that says "we scanned." Our practical CRA roadmap walks through this in detail.
⚠️ The cost of un-evidenced posture
You cannot govern what you do not know exists. I have watched firms lose an entire database and learn about it from the news, not their tooling.
That gap is not a documentation problem. It is a missing runtime record of what ran, what was exploitable, and what got stopped.
What a runtime tool must emit for CRA and NIS2
If you are choosing a tool for audit readiness, hold it to this list:
- SBOM, runtime and build-time, so you can show what shipped and what actually loaded.
- Exploitation-aware prioritization, using KEV and EPSS, not raw CVSS counts.
- Control-to-requirement-ID mapping, linking each control to a specific clause.
- A "No Known Exploitable Vulnerabilities" check, the CRA Annex I bar, evidenced from real data.
💰 Choosing the tool that fits your situation
Tool choice is situational, not a leaderboard. From the roster in this guide, here is how I would steer it.
- If you are cloud-first and want broad CNAPP breadth, look hard at Sysdig or Upwind.
- If your center of gravity is build-time scanning across CI/CD, weigh Aqua Security.
- If you are standardizing on one endpoint XDR estate, CrowdStrike or SentinelOne fit that shape.
- If you want the open-source detection baseline and will operate it yourself, Falco is the honest start.
- If you run self-hosted or air-gapped Kubernetes, or you are securing AI agents at runtime, that is our lane.
Where EdgeLabs fits
We ship a named CRA and NIS2 Compliance Center that maps controls to requirement IDs and runs the "No Known Exploitable Vulnerabilities" check off runtime and build-time SBOM data. It also maps to NIS2, ISO 27001:2022, HIPAA, PCI DSS, FedRAMP, and NIST. You can see the fuller picture in why NIS2 and CRA change the game or how the agent works.
I will name the boundary plainly, because overclaiming here is how you fail an audit. Our Compliance Center covers runtime, vulnerability-handling, and detection-and-response controls. It does not cover lifecycle and governance program controls, business continuity, backups, MFA-as-a-program, HR training, or the CRA multi-year support obligations. Those are on you.
Where my head is right now: compliance stops being a quarterly scramble when the evidence is a byproduct of how you run, not a separate project. If you want to test that, cut the cloud link in a proof of concept and see whether detection, response, and the audit trail all keep working. That is the honest way to judge any tool in this space, including ours. I would rather you test it than take my word for it.
FAQs
Container runtime security tools watch what a container actually does once it is running, rather than what it contains before it ships. They trace kernel system calls, usually with eBPF, to catch behavior like privilege escalation, container escape, fileless execution, and unexpected outbound traffic in real time.
- Image scanning tools inspect an image at build time for known CVEs and misconfigurations, before anything runs.
- Runtime tools detect live attack behavior, because a container escape uses the kernel, not your build pipeline.
The two are complementary. A scan tells you what risks shipped; runtime tells you what is being exploited right now. A build-time scan sees none of a live escape chain, because none of those syscalls exist until the container runs.
We think both layers matter, which is why our workload and application security approach pairs runtime detection with build-time and runtime SBOM context in a single agent, so triage and audit evidence come from the same source.
A system call, or syscall, is how a program asks the Linux kernel to do something, like open a file or start a process. eBPF lets a security tool read those requests safely, inside the kernel, without changing your application.
That matters because attackers act at the kernel level, not the application layer. An attacker who escapes a container does not use your app's logging; they talk straight to the kernel.
- A pod runs unshare to break namespace isolation (Escape to Host, T1611).
- It calls memfd_create to run a payload only in memory (fileless execution).
- It uses PTRACE to inspect or tamper with another process.
- It writes to a sensitive hostPath or spikes outbound traffic (exfiltration or a miner).
Each step is a syscall, and eBPF detections map cleanly to MITRE ATT&CK. Falco, the CNCF-graduated project, is the open-source baseline every commercial tool is measured against. Our single agent is Falco-ecosystem compatible, layered above it, so you get that detection lineage plus response. See how the agent works.
Detection tells you an attacker popped a pod. Response stops them before they move. On-host response means the agent itself can kill a process, quarantine a workload, or block a malicious source IP locally, even with no cloud backend.
Detection alone is an alert cannon. It tells you the house is on fire, then hands you a clipboard. A single destructive API call can wipe production faster than you can read a Slack message, so response speed is the whole game.
- Detect: Does the tool see the attack behavior live, at the kernel level?
- Respond: Can it act on the host itself, not just alert?
- Recover: Does it leave a clear trail of what happened and what it stopped?
A blunt test: cut the cloud link, then trigger an attack. Many cloud-dependent CNAPP and CDR tools go quiet when the backend is unreachable. We run detection and response entirely on the agent, including host-local, time-boxed source-IP blocking that keeps working in Disconnected Mode. Read more on our network protection approach.
Not every CVE is exploitable, and CVSS severity alone floods you with theoretical criticals. Exploited-vulnerability scoring combines CISA KEV (flaws under confirmed active attack), EPSS (a daily probability a flaw gets exploited in the next 30 days), and runtime context, meaning what actually executes.
Picture a scanner reporting 400 criticals. Layer in the data and the picture changes:
- Maybe 12 sit on the CISA KEV list. Those are confirmed, active, and deadline-bound.
- A handful score high on EPSS, so they are likely next.
- The rest are theoretical, and many never load at runtime.
You just went from 400 fires to roughly 15 that matter. The triage rule is simple: patch every KEV entry, rank the remainder by EPSS, then filter by what runs in production.
Our runtime vulnerability management fuses CVSS, EPSS, CISA KEV, and CWE with runtime execution context. We score by observed exploitation and runtime behavior, not a reachability model, and that feeds the audit evidence directly.
Yes, when it watches agent and process behavior rather than only container CVEs. As LLM agents and MCP servers reach production, the runtime layer is where prompt injection, tool-poisoning, and excessive agency do real damage.
An LLM agent is a new kind of insider. It reads files, calls the internet, and can write and run code on its own judgment. You can patch a flawed library, but you cannot patch a model that gets talked into the wrong action by a poisoned input.
- Prompt injection and indirect injection happen mid-conversation, in production.
- Tool-poisoning corrupts an MCP tool the agent trusts, at call time.
- Excessive agency is a runtime behavior, not a static flaw.
A useful guardrail is the two-of-three rule: an agent that can read files, reach the internet, and execute code has too much power, so allow any two, not all three. Our Parallax engine acts as an LLM proxy and firewall for live agents and MCP servers. See our AI and LLM security capability.
The EU Cyber Resilience Act (Regulation 2024/2847, in force since November 2024) and NIS2 require secure development, coordinated vulnerability handling, and SBOMs. Posture reports will not prove it; regulators want evidence of what runs and what is actually exploitable.
A clean posture scan is a snapshot of intentions. An auditor wants proof of what actually happened. CRA Annex I spells out 22 essential requirements, and none are satisfied by a slide that says we scanned.
If you are choosing a tool for audit readiness, hold it to this list:
- SBOM, runtime and build-time, to show what shipped and what actually loaded.
- Exploitation-aware prioritization, using KEV and EPSS, not raw CVSS counts.
- Control-to-requirement-ID mapping, linking each control to a specific clause.
- A No Known Exploitable Vulnerabilities check, the CRA Annex I bar, evidenced from real data.
Our CRA and NIS2 Compliance Center maps controls to requirement IDs and runs that check off runtime and build-time SBOM data, so compliance becomes a byproduct of how you run.
Tool choice is situational, not a leaderboard. Each tool in this guide exists for a different center of gravity, so match the tool to your environment rather than a ranking.
- If you are cloud-first and want broad CNAPP breadth, look hard at Sysdig or Upwind.
- If your center of gravity is build-time scanning across CI/CD, weigh Aqua Security.
- If you are standardizing on one endpoint XDR estate, CrowdStrike or SentinelOne fit that shape.
- If you want the open-source detection baseline and will operate it yourself, Falco is the honest start.
- If you run self-hosted or air-gapped Kubernetes, or you are securing AI agents at runtime, that is our lane.
The honest way to judge any tool, including ours, is to cut the cloud link in a proof of concept and see whether detection, response, and the audit trail all keep working. That single test separates runtime-first tools from cloud services with an agent attached. To see how we handle self-hosted Kubernetes runtime security, or to run that test yourself, talk to our team.
It does not have to. The concern is fair, because some tools ship heavyweight agents or stop working the moment the cloud backend is unreachable. But a well-designed runtime agent runs lean and keeps functioning offline.
Two questions cut through the marketing:
- Footprint: Does the agent use eBPF for efficient kernel-level visibility, or an older kernel module that can break on upgrades and consume more resources?
- Cloud dependency: Does detection and response keep running when the cloud link is cut, or does the tool go silent?
Falco, for example, runs as a DaemonSet on each node, which reviewers note can consume noticeable resources without tuning. Cloud-dependent CNAPP and CDR tools often go quiet in air-gapped or disconnected environments.
We built our single agent to run agent-only with no cloud dependency, keeping detection and response local, so it keeps working in Disconnected Mode. You can review our footprint and architecture claims and pricing on our pricing page and decide what fits your environment.
Last updated: July 28, 2026