- rule: Suspicious Raw Byte Argument
desc: Detects a process argument containing a specific non-UTF-8 byte
condition: proc.args contains \xc0\xae
output: 'Suspicious raw byte in argument (proc=%proc.name args=%proc.args)'
priority: WARNING
proc.cmdline contains anyof (curl, wget, nc, scp)
evt.buffer contains "\x00"
proc.name != allof (bash, sh)
reload_control:
enabled: true
curl -s --unix-socket /run/falco/falco.sock http://localhost/reload
capture_events: 10000
capture_filesize: 100
rules:
- rule: MultiMatchRule
condition: evt.type = open and proc.name oneof ("bash", "sh")
static_fields:
environment: production
cluster: k8s-us-east-1
falco_libs:
thread_table_auto_purging_interval_s: 60
thread_table_auto_purging_thread_timeout_s: 300
json_include_output_fields:
- proc.name
- container.id
- evt.type
- fd.name
base_syscalls:
all: true
falco_libs:
snaplen: 512
buffer_format_base64: true
# In falco.yaml:
buffer_format_base64: true
# Then restart Falco service
# In falco.yaml:
base_syscalls.all: true
# Then restart Falco service
# In falco.yaml:
falco_libs.snaplen: 4096
# Then restart Falco service
# In falco.yaml
json_include_message_property: true
json_output: true
# In falco.yaml
append_output:
- match:
source: syscall
extra_output: "user=%user.name container=%container.id"
falco --enable-metrics
falco -r /etc/falco/k8s_rules.yaml -p '{{k8s.kubelet.name}} {{k8s.pod.name}}'
# Add to falco.yaml:
metrics:
enabled: true
prometheus_enabled: true
# Add to falco.yaml:
falco_libs:
thread_table_size: 1024
falco --list-events
falco --version-json
export DRIVERS_REPO=https://repo1.example.com/drivers,https://repo2.example.com/drivers
falco-driver-loader --install
falco --markdown
falco --list-syscall-events
falco --k8s-node=worker-01
falco --alternate-lua-dir /opt/custom/falco/plugins
falco --disable-cri-async
export FALCO_BPF_PROBE=/path/to/bpf/probe.ko
grpcurl -plaintext localhost:8765 falcosecurity/falco/version.Version/GetVersion
falco --disable source=k8s_audit
falco -V /path/to/rules.yaml
cmake -DSYSDIG_DIR=/home/user/src/sysdig ..
# In user_rules.yaml:
# - rule: MyCustomWrite
# condition: user_known_write_root_conditions
required_engine_version: 3
falco --support
falco -pk
evt.type=connect and fd.sip.name=github.com
user.loginuid==1000
falco -V /etc/falco/falco_rules.yaml -V /etc/falco/custom_rules.yaml
falco -V
falco -s /tmp/stats.txt
Summary
Falco is an open-source runtime security agent, released free of charge, that watches Linux kernel activity, such as syscalls, and alerts on abnormal or suspicious behavior using custom rules. It runs as a kernel monitoring agent deployed on hosts or as a Kubernetes daemonset, enriching events with container and Kubernetes metadata before forwarding them off-host to a SIEMSIEMSecurity information and event management, collecting logs from many systems and correlating events to find suspicious activity. Analysts use it to investigate alerts and incidents. or data lake, which makes it a fit for SOCSOCA security operations center, the team or function that monitors threats, investigates alerts and coordinates incident response. Its work can be internal, outsourced or shared. analysts and platform teams securing containerized infrastructure rather than for developers scanning code pre-deployment. Its README describes it as a cloud native runtime security tool and a CNCF graduated project, positioning it as the standard in that space rather than as an alternative to a named competitor. First committed in 2016, it remains active, with 298 contributors, 298 commits in the past year, and a release only 71 days ago.
Cloud-native Linux runtime security agent that detects abnormal behavior and threats by monitoring syscalls and container events using custom rules.
Which process on this host just did something no legitimate workload should do?
matches live syscall activity against custom rules in real time and fires an alert naming the process, its arguments, and the rule it tripped
Which Kubernetes workload is responsible for the pod that triggered an alert?
enriches the raw syscall event with container and Kubernetes metadata before the alert is written, so the namespace, pod, and workload are attached rather than left to be looked up later
What happened on a host right before and after an alert fired, in enough detail to hand to an investigator?
can record a live capture of raw events around the activity, capped by a configured size or event count, for offline replay rather than relying on the alert line alone
Am I flooding my SIEM with alert fields nobody queries?
lets the fields included in JSON alert output be restricted to a chosen set, cutting the payload down to what the downstream system actually consumes
Built from Falco's releases, docs, README and our own runs.
“Seen” marks the month we first spotted a release the vendor didn't date.
Group names and tags are our labels.
Falco covers 3 of the 11 endpoint investigation and controls capabilities we track.
Falco covers 1 of the 5 supply chain security capabilities we track.
What Falco offers you
Command-line interface11
gRPC API support1
JSON data export1
Outbound webhooks (the product notifies you)1
Plugin API support1
REST API1
No capabilities match.
+Process telemetry2 featuresEndpoint investigation and controlssince 2016▸
+User identity tracking filterchecksshippedAdds loginuid and loginname filterchecks to consistently identify users across sudo/su usage.1 release · 1 other source · first seen Sep 2018▸
Shared capability: Process telemetry
release
Adds user.loginuid and user.loginname filterchecks to match users consistently across sudo/su.
0.12.0 · Sep 2018
· source
· release history
example
Match processes by the original user ID regardless of sudo/su usage with the new loginuid filtercheck.$ user.loginuid==1000
0.12.0 · Sep 2018
· source
+Process session tracking filterchecksshippedAdds the proc.sname filtercheck to support tracking process session names and setsid system calls in detection rules.1 release · first seen Jun 2016▸
Shared capability: Process telemetry
release
Adds proc.sname field support for syscalls handling setsid and session id tracking (requires sysdig >= 0.10.0)
v0.2.0 · Jun 2016
· source
· release history
+File integrity monitoring1 featureEndpoint investigation and controlssince 2018▸
+Directory write monitoring ruleshippedAdds an out-of-the-box rule to monitor file writes beneath specified paths.3 releases · first seen Jul 2018▸
Shared capability: File integrity monitoring
Also counts toward: gRPC API support
release
Supports bi-directional async streaming gRPC outputs via the falco.outputs.service/sub method
0.24.0 · Jul 2020
· source
· release history
The server streaming gRPC outputs method is changed from the previous name to falco.outputs.service/get.
0.24.0 · Jul 2020
· source
· release history
Introduces a new rule named Write below monitored directory for monitoring file writes beneath specified paths.
0.11.0 · Jul 2018
· source
· release history
+Security baseline assessment1 featureEndpoint investigation and controlssince 2017▸
+Kubernetes cluster scanningshippedScans Kubernetes clusters to detect misconfigurations and policy violations.2 releases · first seen Mar 2017▸
Shared capability: Security baseline assessment
release
Falco no longer depends on sysdig's sysdig-probe kernel module; users must install the new Falco kernel module
0.6.0 · Mar 2017
· source
· release history
Introduces Falco's own dedicated kernel module, removing the sysdig-probe dependency
0.6.0 · Mar 2017
· source
· release history
+Image integrity verificationshippedContainer images are signed with cosign to enable integrity verification.2 releases · first seen Oct 2020▸
Shared capability: Artifact signing
release
Container images are now signed with cosign, enabling verification of image integrity.
0.35.0 · Jun 2023
· source
· release history
Adds --alternate-lua-dir flag to load Lua plugin files from arbitrary paths instead of the default location.
0.26.1 · Oct 2020
· source
· release history
+Other / not yet classified44 featuresFeatures we have not matched to a capability yet. A suggested match is marked.▸
+Runtime security rule managementshippedAllows operators to run with the default runtime-security ruleset, load custom rules alongside defaults, and inspect the fields available to rule conditions.19 releases · 5 other sources · first seen Aug 2016▸
release
19 total
Adds ability to select specific rules to load via configuration or command-line arguments
0.38.0 · May 2024
· source
· release history
Adds a new engine-level mechanism for selective overrides of Falco rules
0.37.0 · Jan 2024
· source
· release history
Exposes rule_tags and event_source fields in gRPC output for rule context
0.30.0 · Oct 2021
· source
· release history
Exposes rule_tags and event_source fields in JSON output for rule context
0.30.0 · Oct 2021
· source
· release history
Disables the Change thread namespace and Set Setuid or Setgid bit rule by default, changing its initial state from enabled to disabled without requiring manual config edits
0.29.0 · Jun 2021
· source
· release history
Expands the known_sa_list rule in kube-system to automatically allow namespace-controller, statefulset-controller, disruption-controller, job-controller, horizontal-pod-autoscaler, and persistent-volume-binder as allowed service accounts
0.29.0 · Jun 2021
· source
· release history
example
Define a rule that triggers only when multiple specific strings match using the new modifiers.$ rules: - rule: MultiMatchRule condition: evt.type = open and proc.name oneof ("bash", "sh")
Version0.44.0 · May 2026
· source
Customize rules to allow specific write operations by referencing the new macros in your rules file.$ # In user_rules.yaml: # - rule: MyCustomWrite # condition: user_known_write_root_conditions
0.15.0 · May 2019
· source
List the fields available to rule conditions$ falco --list
Run with the default runtime-security ruleset$ falco
+Alert field selection and static contextshippedAllows operators to control the output fields in JSON alerts and attach static key-value labels to every event.15 releases · 3 other sources · first seen Jun 2016▸
release
15 total
Adds ability to define static fields via the static_fields configuration section in falco.yaml
Version0.42.0 · Oct 2025
· source
· release history
Adds static_fields configuration option to attach statically defined key-value fields to every Falco alert output.
0.42.0 · Oct 2025
· source
· release history
Adds json_include_output_fields option in .falco/config.yaml to control which output fields are included in JSON events
Version0.41.0 · May 2025
· source
· release history
buffer_format_base64 option allows base64 output formatting in falco.yaml, replacing the deprecated -b flag
Version0.40.0 · Jan 2025
· source
· release history
Introduces append_output configuration option in falco.yaml
Version0.39.0 · Oct 2024
· source
· release history
Adds json_include_message_property to output a message field without date and priority
Version0.39.0 · Oct 2024
· source
· release history
example
Attach a static environment label to every alert — useful for distinguishing prod vs. staging alerts in a shared SIEM.$ static_fields: environment: production cluster: k8s-us-east-1
0.42.0 · Oct 2025
· source
Configure base64 encoded output for Falco events instead of the default format$ # In falco.yaml: buffer_format_base64: true # Then restart Falco service
Version0.40.0 · Jan 2025
· source
Specify the minimum engine version required by a custom rules file.$ required_engine_version: 3
0.14.0 · Feb 2019
· source
+Prometheus metrics integrationshippedExposes internal Falco metrics, including event counters, drop rates, host networking stats, and plugin-specific gauges via a dedicated HTTP endpoint for monitoring.14 releases · 1 other source · first seen May 2024▸
release
14 total
The tags label is split into multiple tag_-prefixed labels in falco_metrics output
Version0.39.0 · Oct 2024
· source
· release history
Adds host_ifinfo metric exposing per-interface information.
0.39.0 · Oct 2024
· source
· release history
Adds host_netinfo stats family for networking information
Version0.39.0 · Oct 2024
· source
· release history
Adds host_ifinfo Prometheus metric
Version0.39.0 · Oct 2024
· source
· release history
Prometheus metrics falco_metrics now use full names for configs and rules files labels instead of short names; label matchers using short names will no longer match.
0.39.0 · Oct 2024
· source
· release history
Adds host_netinfo networking information stats family for richer host-level network observability in metrics.
0.39.0 · Oct 2024
· source
· release history
example
Expose Falco's internal metrics for monitoring with Prometheus.$ # Add to falco.yaml: metrics: enabled: true prometheus_enabled: true
0.38.0 · May 2024
· source
+Multiple container runtime supportshippedAllows connecting to several container runtimes simultaneously via multiple CRI flags.12 releases · 1 other source · first seen Oct 2016▸
Also counts toward: Command-line interface
release
12 total
Container plugin 0.7.4 keeps already-collected metadata and retrieves missing container info in the background when an initial listing is interrupted at startup.
announced · seen Sep 2026
· source
· release history
Adds engine_timeout option to the container plugin (defaults to 10 seconds) to prevent an unresponsive runtime socket from blocking Falco startup indefinitely; set to 0 to disable.
announced · seen Sep 2026
· source
· release history
Adds container_engines configuration key in falco.yaml
Version0.39.0 · Oct 2024
· source
· release history
Adds container_engines configuration block in falco.yaml to explicitly control which container engines Falco monitors.
0.39.0 · Oct 2024
· source
· release history
Allow specifying multiple --cri flags on the command line to connect to several container runtimes simultaneously
0.31.1 · Mar 2022
· source
· release history
Adds the --disable-cri-async CLI flag to disable asynchronous container metadata (CRI) fetch
0.22.0 · Apr 2020
· source
· release history
example
Disable async CRI fetch when experiencing latency or connection issues with the container runtime.$ falco --disable-cri-async
0.22.0 · Apr 2020
· source
+Multi-matching rule engineshippedAllows multiple rules to match on a single event instead of stopping at the first match.8 releases · 1 other source · first seen Oct 2017▸
release
8 total
Evaluates rule conditions on raw field bytes, enabling matching of invalid and non-printable UTF-8 sequences with string operators and single-byte matching with the new \xHH escape sequence; regex now operates on sanitized input and non-printable characters are escaped at output encoding time.
0.45.0 · Sep 2026
· source
· release history
Adds oneof, allof, anyof modifiers to the string comparator in rules for complex logic
Version0.44.0 · May 2026
· source
· release history
Adds backslash escaping support to the -o key-path parser, allowing literal dots and brackets in YAML key names (e.g., -o 'my\.dotted\.key=val').
0.44.0 · May 2026
· source
· release history
Adds oneof, allof, and anyof string comparator modifiers to the rule engine for richer multi-value matching in conditions.
0.44.0 · May 2026
· source
· release history
Adds support for list transformer exceptions in rule exception handling.
0.44.0 · May 2026
· source
· release history
Allows multiple rules to match on a single event instead of stopping at the first match
0.36.0 · Sep 2023
· source
· release history
docs
== iglob Evaluates standard glob patterns. The iglob variant is case-insensitive. Example: can be considerably slower than simpler string operations. Invalid UTF-8 sequences in the field value are replaced with U+FFFD before matching (see string matching ).
docs update · Sep 2026
· source
+Process injection detection rulesshippedIncludes out-of-the-box rules to detect code injection attempts using PTRACE.7 releases · 2 other sources · first seen May 2021▸
Also counts toward: Plugin API support
release
7 total
Adds json_include_output_fields config option to control which fields appear in JSON alert output.
0.41.0 · May 2025
· source
· release history
Supports plugin-exposed suggested output formats, letting Falco automatically honor the output format a plugin recommends.
0.40.0 · Jan 2025
· source
· release history
New rule to detect attempts to inject code into a process using PTRACE
0.34.0 · Feb 2023
· source
· release history
Adds user_known_userfaultfd_processes list to exclude known processes from the new detection
0.29.1 · Jul 2021
· source
· release history
Adds Unprivileged Delegation of Page Faults Handling to a Userspace Process rule to detect unprivileged userfaultfd syscalls
0.29.1 · Jul 2021
· source
· release history
Adds consider_userfaultfd_activities macro to gate the new page fault delegation rule
0.29.1 · Jul 2021
· source
· release history
example
Include only specific fields in JSON alert output to reduce noise when forwarding to a SIEM.$ json_include_output_fields: - proc.name - container.id - evt.type - fd.name
0.41.0 · May 2025
· source
Encode alert output fields in base64 (equivalent to the old -b flag) via falco.yaml for structured log pipelines.$ buffer_format_base64: true
0.40.0 · Jan 2025
· source
+Driver fallback configurationshippedAllows configuring multiple driver repository URLs via environment variables for fallback.7 releases · 2 other sources · first seen May 2020▸
release
7 total
Modern eBPF is now the default driver and highest priority in automatic driver selection logic, potentially changing behavior if older drivers are needed
0.38.0 · May 2024
· source
· release history
Adds --download-insecure flag to falco and falco-driver-loader docker images to allow downloading kernel modules via insecure HTTP connections.
0.37.1 · Feb 2024
· source
· release history
Adds driver selection configuration in falco.yaml to choose the kernel module or no-driver mode
0.37.0 · Jan 2024
· source
· release history
Enables passing custom options directly to falco-driver-loader via the driver loader container's entrypoint or command arguments
0.36.0 · Sep 2023
· source
· release history
falco-driver-loaderDRIVERS_REPO environment variable now accepts comma-separated URLs for driver fallbacks
0.33.0 · Oct 2022
· source
· release history
Add falcosecurity/falco-no-driver Docker image for running Falco without a host-side kernel module
0.23.0 · May 2020
· source
· release history
example
Emit a clean message field in JSON alerts (no timestamp or priority prefix) for easier downstream log parsing.$ # In falco.yaml json_include_message_property: true json_output: true
0.39.0 · Oct 2024
· source
Configure fallback driver repositories in environment variables$ export DRIVERS_REPO=https://repo1.example.com/drivers,https://repo2.example.com/drivers falco-driver-loader --install
0.33.0 · Oct 2022
· source
+Automatic configuration reloadshippedSupports reloading configuration via systemctl without restarting the daemon, and automatically restarts on config file changes.8 releases · first seen Nov 2018▸
release
8 total
Adds GET /reload webserver endpoint reporting process identity, reload generations, and readiness so integrations can verify a completed reload.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
announced · seen Sep 2026
· source
· release history
Exposes reload status via GET /reload and adds optional reload control over a protected Unix socket on Linux, preserving SIGHUP reception and pending requests across reloads.︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄
0.45.0 · Sep 2026
· source
· release history
Enables watch_config_files to monitor configuration file moves and deletions
0.37.0 · Jan 2024
· source
· release history
Enables environment variable expansion inside YAML strings across all configuration files via FALCO_CONF or standard parser support
0.37.0 · Jan 2024
· source
· release history
Adds systemctl reload falco.service support for reloading configuration without restarting the daemon
0.36.0 · Sep 2023
· source
· release history
Adds support for parsing system environment variables (e.g. ${VAR}) within falco.yaml configuration files
0.36.0 · Sep 2023
· source
· release history
+BPF iterator configurationshippedLets operators disable BPF iterators for environments where their use causes issues.4 releases · 3 other sources · first seen Mar 2020▸
Also counts toward: Command-line interface
release
Adds configuration support for disabling BPF iterators, giving operators control over BPF iterator usage in environments where they cause issues.
0.44.1 · Jun 2026
· source
· release history
Adds configuration support for disabling BPF iterators, giving operators a workaround for environments where BPF iterator usage is problematic.
0.44.1 · Jun 2026
· source
· release history
Adds --k8s-node CLI flag to filter pod metadata requests by node name
0.30.0 · Oct 2021
· source
· release history
FALCO_BPF_PROBE replaces SYSDIG_BPF_PROBE as the environment variable for specifying the BPF probe path.
0.21.0 · Mar 2020
· source
· release history
docs
Byte escapes and YAML quoting Since Falco 0.45, quoted condition strings support \xHH , where HH is exactly two hexadecimal digits identifying one byte. Existing escapes include \n for a newline, \t for a tab, and \\ for a literal backslash. YAML parses the rule before Falco parses its condition.
seen Sep 2026
· source
Since Falco 0.45, the probe uses BPF atomic compare-and-swap instructions when the kernel supports them. These instructions were introduced in Linux 5.12, but availability depends on the architecture and any distribution backports. Falco checks support at startup.
seen Sep 2026
· source
example
Run Falco but only fetch node-specific metadata for worker-01 to reduce API load.$ falco --k8s-node=worker-01
0.30.0 · Oct 2021
· source
+Syscall event listingshippedsuggestedLists supported syscall events, tracepoints, metaevents, and plugin events for the current source configuration.5 releases · 2 other sources · first seen Jan 2022▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
Also counts toward: Command-line interface
release
Adds capture_events and capture_filesize stop conditions to cap capture file size or event count via config.
0.44.0 · May 2026
· source
· release history
New ability to record live .scap capture files directly from a running Falco instance.
0.42.0 · Oct 2025
· source
· release history
Renames the CLI flag --list-syscall-events to --list-events and expands its output to include tracepoints, metaevents, and plugin events
0.36.0 · Sep 2023
· source
· release history
Adds --list-syscall-events subcommand to list supported syscall events for the configured source
0.32.0 · Jun 2022
· source
· release history
falco --list option can now list fields related to plugin event sources
0.31.0 · Jan 2022
· source
· release history
example
Cap a capture file at 10,000 events to prevent runaway disk usage during incident capture.$ capture_events: 10000 capture_filesize: 100
0.44.0 · May 2026
· source
List all supported syscall events for the current source configuration.$ falco --list-syscall-events
0.32.0 · Jun 2022
· source
+Configurable base syscall trackingshippedsuggestedAllows controlling which syscalls are tracked by the engine via user options and repairing inconsistencies.4 releases · 2 other sources · first seen Aug 2016▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
release
base_syscalls.all option enables capturing all syscalls via config file, replacing the deprecated -A flag
Version0.40.0 · Jan 2025
· source
· release history
Adds base_syscalls.all option to falco.yaml, replacing the deprecated -A flag for enabling all syscalls.
0.40.0 · Jan 2025
· source
· release history
Adds base_syscalls user option to control which syscalls are tracked by the engine, along with base_syscalls.repair to repair base set inconsistencies.
0.35.0 · Jun 2023
· source
· release history
Enable running Falco on all events including those marked with EF_DROP_FALCO via new configuration.
0.3.0 · Aug 2016
· source
· release history
example
Capture all raw syscalls for deep forensic analysis without using command-line flags$ # In falco.yaml: base_syscalls.all: true # Then restart Falco service
Version0.40.0 · Jan 2025
· source
Capture all syscalls (equivalent to the old -A flag) using the new config key so operator intent is version-controlled in falco.yaml.$ base_syscalls: all: true
0.40.0 · Jan 2025
· source
+Structured version informationshippedProvides version info in JSON format via CLI flags, metrics snapshots, and a webserver endpoint for automation.4 releases · 2 other sources · first seen Feb 2020▸
Also counts toward: Command-line interface, JSON data export
release
--version-json flag to print version information in JSON format
0.34.0 · Feb 2023
· source
· release history
Webserver endpoint for retrieving internal version numbers
0.34.0 · Feb 2023
· source
· release history
--plugin-info CLI argument added to falco for printing plugin metadata.
0.32.1 · Jul 2022
· source
· release history
Get structured version info for automation or inventory.$ falco --version-json
0.34.0 · Feb 2023
· source
Retrieve the Falco server version programmatically via gRPC.$ grpcurl -plaintext localhost:8765 falcosecurity/falco/version.Version/GetVersion
0.20.0 · Feb 2020
· source
+Validation modeshippedProvides a CLI command to validate rule files and exit immediately without running the daemon.4 releases · 2 other sources · first seen Oct 2017▸
Also counts toward: Command-line interface
release
Adds -V flag to print validation results (OK or error) for rule files on standard output
0.16.0 · Jul 2019
· source
· release history
Adds -V flag support for multiple validations (-V <file1> -V <file2>)
0.10.0 · Apr 2018
· source
· release history
Adds -v flag to print dangling (unused) macros/lists when validating rules
0.10.0 · Apr 2018
· source
· release history
Add -V flag to validate rules file and exit immediately
0.8.0 · Oct 2017
· source
· release history
example
Validate a rules file before deploying it to catch syntax errors early.$ falco -V /path/to/rules.yaml
0.16.0 · Jul 2019
· source
Validate and dump multiple rule files in one invocation without running the daemon.$ falco -V /etc/falco/falco_rules.yaml -V /etc/falco/custom_rules.yaml
0.10.0 · Apr 2018
· source
+Configuration schema validationshippedEnforces JSON schema validation on both rule files and Falco configuration files at startup to catch misconfigurations early.4 releases · 1 other source · first seen Oct 2017▸
release
Suggests --dry-run when --validate receives a Falco configuration file.
0.45.0 · Sep 2026
· source
· release history
Adds validation for unknown keys in rules, surfacing misconfigured or misspelled rule fields at load time.
0.44.0 · May 2026
· source
· release history
Adds --config-schema action to print the config schema
Version0.39.0 · Oct 2024
· source
· release history
Adds JSON schema validation for both rule files and Falco config files, catching misconfigurations at startup.
0.39.0 · Oct 2024
· source
· release history
example
Validate syntax of modified rules before starting the service to prevent runtime failures.$ falco -V
0.8.0 · Oct 2017
· source
+Configurable thread table sizingshippedAllows tuning the internal thread table size via configuration to optimize performance in high-concurrency environments.3 releases · 1 other source · first seen May 2024▸
release
Exposes reload status through a new GET /reload HTTP endpoint
0.45.0 · Sep 2026
· source
· release history
Adds optional reload control over a protected Unix socket on Linux
0.45.0 · Sep 2026
· source
· release history
Adds falco_libs.thread_table_size configuration option to tune thread table size
0.38.0 · May 2024
· source
· release history
example
Configure a custom thread table size for high-concurrency environments.$ # Add to falco.yaml: falco_libs: thread_table_size: 1024
0.38.0 · May 2024
· source
+Capture file size limitingshippedsuggestedAdds configuration controls to cap the maximum number of events or size of live SCAP capture files.3 releases · 1 other source · first seen Oct 2025▸
Suggested capability: Remote forensic collection. This is our guess, not confirmed.
release
Adds capture_events and capture_filesize stop conditions to cap capture file size or event count via config.
0.44.0 · May 2026
· source
· release history
Adds capture_events and capture_filesize as stop conditions for capture file actions
Version0.44.0 · May 2026
· source
· release history
Adds the ability to record .scap files (capture feature) for post-capture analysis
Version0.42.0 · Oct 2025
· source
· release history
example
Cap a capture file at 10,000 events to prevent runaway disk usage during incident capture.$ capture_events: 10000 capture_filesize: 100
0.44.0 · May 2026
· source
+HTTP output capabilityshippedSupports sending detection events to external HTTP endpoints via an output backend.4 releases · first seen May 2019▸
Also counts toward: Outbound webhooks (the product notifies you)
release
Enables http_output, webserver, and metrics features on macOS and Windows
Version0.44.0 · May 2026
· source
· release history
Adds output_timeout config option for slow outputs detection
0.27.0 · Jan 2021
· source
· release history
Asynchronous outputs implementation so output channels no longer block event processing
0.27.0 · Jan 2021
· source
· release history
Adds HTTP output capability to send alerts directly to HTTP endpoints.
0.15.0 · May 2019
· source
· release history
+DNS name resolution filterchecksshippedAdds fd.*ip.name filterchecks to resolve connection IPs to DNS names for filtering by hostname.2 releases · 2 other sources · first seen Sep 2018▸
release
falco_libs.snaplen option sets packet capture length via config file, replacing the deprecated -S / --snaplen flags
Version0.40.0 · Jan 2025
· source
· release history
Adds fd.*ip.name filterchecks to resolve connection IPs to DNS names for filtering by hostname.
0.12.0 · Sep 2018
· source
· release history
example
Limit the snaplen (capture length) for network events via configuration$ # In falco.yaml: falco_libs.snaplen: 4096 # Then restart Falco service
Version0.40.0 · Jan 2025
· source
Identify outbound connections to a specific domain using the new DNS name filtercheck.$ evt.type=connect and fd.sip.name=github.com
0.12.0 · Sep 2018
· source
+Rate limiting controlsshippedProvides controls for global event drop rates and notification rate limiter disabling.4 releases · first seen Dec 2016▸
Also counts toward: Command-line interface
release
notification rate limiter is now disabled by default
0.33.0 · Oct 2022
· source
· release history
--drop-pct flag added to control the global rate of dropped events for high-volume environments
0.33.0 · Oct 2022
· source
· release history
Adds configurable token bucket logic to throttle falco events
0.6.1 · May 2017
· source
· release history
Add outputs.rate and outputs.max_burst config options in .falcorc to throttle Falco notifications using a token bucket algorithm
0.5.0 · Dec 2016
· source
· release history
+Container escape detection rulesshippedsuggestedIncludes out-of-the-box rules to detect container escapes via release_agent, excessive capabilities, and shared host namespaces.4 releases · first seen Jun 2021▸
Suggested capability: Security baseline assessment. This is our guess, not confirmed.
release
Adds new rule to detect container escape attempts via the release_agent file
0.32.0 · Jun 2022
· source
· release history
Adds new rules to detect pods sharing host PID and IPC namespaces
0.32.0 · Jun 2022
· source
· release history
Adds new rule to detect excessively capable containers
0.32.0 · Jun 2022
· source
· release history
The Change thread namespace and Set Setuid or Setgid bit rule is now disabled by default, which may reduce detection coverage for that specific event pattern until re-enabled in configuration
0.29.0 · Jun 2021
· source
· release history
+Kubernetes metadata field additionsshippedAdds hostname and other fields to JSON output for detection events.3 releases · 1 other source · first seen Oct 2016▸
Also counts toward: Command-line interface
release
Adds hostname field to JSON output for detection events
0.32.0 · Jun 2022
· source
· release history
Adds k8s.ns.name field to output fields when the -pk CLI argument is used, enabling namespace-aware alert formatting.
0.13.1 · Jan 2019
· source
· release history
Adds -pc, -pk, -pm, -k, and -m CLI flags to pull Kubernetes/Mesos metadata for notifications
0.4.0 · Oct 2016
· source
· release history
example
Run Falco with Kubernetes audit rule context to include the namespace in alerts for better filtering.$ falco -pk
0.13.1 · Jan 2019
· source
+Syscall drop counter monitoringshippedMonitors additional kernel drop counters including n_drops_scratch_map.3 releases · 1 other source · first seen Oct 2016▸
Also counts toward: Command-line interface
release
Add n_drops_scratch_map to the list of kernel drop counters monitored by Falco
0.31.1 · Mar 2022
· source
· release history
Add -s <statsfile> CLI flag to write event capture statistics to a specified file during runtime
0.5.0 · Dec 2016
· source
· release history
Adds -w flag to write event traces to a file for later reproduction
0.4.0 · Oct 2016
· source
· release history
example
Export event capture statistics to a file for later analysis using the new CLI flag$ falco -s /tmp/stats.txt
0.5.0 · Dec 2016
· source
+Kubernetes audit event sourceshippedProvides the ability to ingest and process Kubernetes audit logs for detection.4 releases · first seen Jun 2019▸
Also counts toward: REST API
release
Changes config key webserver.k8s_audit_endpoint default from /k8s_audit to /k8s-audit
0.24.0 · Jul 2020
· source
· release history
k8s_audit endpoint now accepts POST requests with JSON arrays containing Kubernetes audit events
0.19.0 · Jan 2020
· source
· release history
Bumps engine version to 4, introducing the new ka.useragent field in k8s audit event fields
0.16.0 · Jul 2019
· source
· release history
Add instructions for k8s audit support in versions >= 1.13
0.15.1 · Jun 2019
· source
· release history
+Dynamic thread table managementshippedAdds configuration options to automatically purge stale entries from the internal thread table.2 releases · 1 other source · first seen Oct 2025▸
release
Adds falco_libs.thread_table_auto_purging_interval_s and thread_table_auto_purging_thread_timeout_s config options to automatically purge stale thread-table entries.
0.42.0 · Oct 2025
· source
· release history
Adds falco_libs.thread_table_auto_purging_interval_s and thread_table_auto_purging_thread_timeout_s configuration options to control automatic thread table cleanup
Version0.42.0 · Oct 2025
· source
· release history
example
Enable automatic thread-table purging to reclaim memory in long-running deployments with high process churn.$ falco_libs: thread_table_auto_purging_interval_s: 60 thread_table_auto_purging_thread_timeout_s: 300
0.42.0 · Oct 2025
· source
+Simulated drop testingshippedAllows configuring simulated drops for testing purposes.2 releases · 1 other source · first seen Feb 2023▸
release
Adds falco_libs.snaplen option to falco.yaml, replacing the deprecated -S/--snaplen flag for capture snap length.
0.40.0 · Jan 2025
· source
· release history
Set packet capture snap length (equivalent to the old -S/--snaplen flag) persistently in falco.yaml.$ falco_libs: snaplen: 512
0.40.0 · Jan 2025
· source
+Rule filtering and loading controlsshippedAllows operators to selectively load specific rules from the available set via configuration or CLI arguments.3 releases · first seen Mar 2017▸
Also counts toward: Command-line interface
release
Adds ability to select specific rules to load via configuration or command-line arguments
0.38.0 · May 2024
· source
· release history
Enables rule override in later files when using multiple -r flags
0.6.0 · Mar 2017
· source
· release history
Adds tags metadata to falco rules for granular grouping
0.6.0 · Mar 2017
· source
· release history
+HTTP output TLS configurationshippedSupports custom CA certificates, stores, and mTLS for the HTTP output backend.3 releases · first seen Feb 2019▸
release
Adds http_output.server_tls.cacert_file, http_output.server_tls.cert_file, and http_output.server_tls.key_file config keys to /etc/falco/falco.yaml to enable mTLS for the HTTP output backend
0.36.0 · Sep 2023
· source
· release history
Adds ssl_ca and tls_store configuration keys under http_output in the Falco config file to allow custom CA certificates and stores for HTTP output.
0.35.0 · Jun 2023
· source
· release history
Enables SSL configuration for the K8s audit endpoint and embedded webserver
0.14.0 · Feb 2019
· source
· release history
+Kubernetes node filteringshippedAllows fetching pod metadata for specific nodes to reduce API load.2 releases · 1 other source · first seen Oct 2016▸
Also counts toward: Command-line interface
release
Adds --k8s-node CLI flag to filter pod metadata requests by node name
0.30.0 · Oct 2021
· source
· release history
Adds k8s.deployment.* and k8s.rs.* filters to support latest Kubernetes features
0.4.0 · Oct 2016
· source
· release history
example
Run Falco but only fetch node-specific metadata for worker-01 to reduce API load.$ falco --k8s-node=worker-01
0.30.0 · Oct 2021
· source
+Rule exception supportshippedAdds the ability to define exceptions directly within rule attributes to compactly exclude specific conditions from alerting.2 releases · first seen Apr 2021▸
release
Adds support for list transformer exception in the userspace engine
Version0.44.0 · May 2026
· source
· release history
Adds support for exceptions as rule attributes to provide a compact way to add exceptions to Falco rules
0.28.0 · Apr 2021
· source
· release history
+Static build supportshippedProvides static builds of the cyber tool as tgz packages for environments where dynamic linking or driver loading is not feasible.2 releases · first seen Apr 2021▸
release
Reintroduces static builds of Falco, available as tgz-static-x86_64 packages.
0.40.0 · Jan 2025
· source
· release history
Makes falco-driver-loader container images available on AWS ECR gallery (https://gallery.ecr.aws/falcosecurity/falco-driver-loader)
0.28.0 · Apr 2021
· source
· release history
+HTTP user-agent customizationshippedAllows specifying a custom User-Agent header for HTTP output requests.1 release · 1 other source · first seen Jan 2022▸
release
HTTP output now supports custom user-agent header via http_output.user_agent configuration key
0.31.0 · Jan 2022
· source
· release history
example
Emit a clean message field in JSON alerts (no timestamp or priority prefix) for easier downstream log parsing.$ # In falco.yaml json_include_message_property: true json_output: true
0.39.0 · Oct 2024
· source
+Minimal distroless imageshippedProvides a minimal Docker image based on Wolfi for reduced runtime footprint.2 releases · first seen Apr 2021▸
release
Adds the falco-distroless Docker image (Wolfi-based) for a minimal Falco runtime without package managers
0.36.0 · Sep 2023
· source
· release history
Makes falco-no-driver container images available on AWS ECR gallery (https://gallery.ecr.aws/falcosecurity/falco-no-driver)
0.28.0 · Apr 2021
· source
· release history
+Markdown output formatshippedSupports outputting detection events in Markdown format for easier viewing.1 release · 1 other source · first seen Jun 2022▸
Also counts toward: Command-line interface
release
Adds --markdown flag to output detection events in Markdown format
0.32.0 · Jun 2022
· source
· release history
example
Output detection events in Markdown for easier viewing in chat or wiki tools.$ falco --markdown
0.32.0 · Jun 2022
· source
+Dropped event configuration and monitoringshippedAllows tuning the sensitivity of drop detection thresholds, monitoring additional kernel drop counters, and using simulated drops for testing.2 releases · first seen Jun 2019▸
release
Introduces a new configuration field syscall_event_drops.threshold to tune the drop noisiness
0.28.0 · Apr 2021
· source
· release history
Drop unnecessary events at the kernel level to improve performance
0.15.1 · Jun 2019
· source
· release history
+Raw byte rule matchingshippedAllows detecting specific non-UTF-8 byte sequences in process arguments by preserving raw bytes during field extraction.1 release · 1 other source▸
release
Preserves raw bytes when extracting field values for rule matching, so rule conditions now see original bytes rather than sanitized replacements.
announced · seen Sep 2026
· source
· release history
example
Write a rule that detects a process argument containing a specific non-UTF-8 byte sequence, now possible with raw byte escapes.$ - rule: Suspicious Raw Byte Argument desc: Detects a process argument containing a specific non-UTF-8 byte condition: proc.args contains \xc0\xae output: 'Suspicious raw byte in argument…
announced · seen Sep 2026
· source
+SCAP capture file recordingshippedsuggestedAllows recording of .scap files for post-capture analysis.1 release · first seen Oct 2025▸
Suggested capability: Remote forensic collection. This is our guess, not confirmed.
release
Adds the ability to record .scap files (capture feature) for post-capture analysis
Version0.42.0 · Oct 2025
· source
· release history
+Jemalloc memory allocationshippedSwitches the default memory allocator to jemalloc to improve memory performance under high event load.1 release · first seen Jan 2025▸
release
Switches release artifacts to use the jemalloc allocator by default, improving memory performance under high event load.
0.40.0 · Jan 2025
· source
· release history
+Silent dropped syscall handlingshippedsuggestedAllows silently dropping failed syscall exit events from processing to reduce noise.1 release · first seen Jun 2023▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
release
Adds syscall_drop_failed configuration option to silently drop failed syscall exit events from processing.
0.35.0 · Jun 2023
· source
· release history
+Plugin version requirementsshippedSupports specifying alternative plugin version requirements in configuration checks.1 release · first seen Oct 2022▸
release
required_engine_version in falco.yaml checks now supports alternative plugin version requirements
0.33.0 · Oct 2022
· source
· release history
+OKTA plugin supportshippedProvides an out-of-the-box ruleset for the OKTA Falco Plugin.1 release · first seen Jun 2022▸
release
Adds out-of-the-box ruleset for the OKTA Falco Plugin
0.32.0 · Jun 2022
· source
· release history
+Kubernetes PSP rule generationshippedsuggestedIncludes functionality to convert Kubernetes Pod Security Policies (PSPs) into Falco rules.1 release · first seen Oct 2019▸
Suggested capability: Security baseline enforcement. This is our guess, not confirmed.
release
Adds support for converting k8s pod security policies (PSPs) into falco rules to evaluate PSP conditions
0.18.0 · Oct 2019
· source
· release history
+String matching operatorsshippedAdds the endswith operator for suffix matching on strings in rules.1 release · first seen Sep 2018▸
release
Adds endswith operator for suffix matching on strings in Falco rules.
0.12.0 · Sep 2018
· source
· release history
+Graceful filtercheck handlingshippedAdds a skip-if-unknown-filter property to allow rules to skip processing when referenced filterchecks are unavailable.1 release · first seen Jul 2018▸
release
Adds the skip-if-unknown-filter boolean property to rule definitions, allowing rules to gracefully skip when referenced filterchecks are unavailable in the current Falco version.
0.11.0 · Jul 2018
· source
· release history
+Ignored event listingshippedAdds a CLI flag to print all ignored events and syscalls and exit.1 release · first seen Apr 2018▸
release
Adds -i CLI flag to print all ignored events/syscalls and exit
0.10.0 · Apr 2018
· source
· release history
+gVisor runtime supportshippedretiredSupports monitoring syscalls in gVisor runtimes with updated default socket paths.3 releases · first seen Jul 2022▸
Suggested capability: Process telemetry. This is our guess, not confirmed.
release
Adds ability to entirely disable plugin hostinfo support via configuration.
0.40.0 · Jan 2025
· source
· release history
gVisor socket default path changed to /run/falco/gvisor.sock (was /tmp/gvisor.sock)
0.33.0 · Oct 2022
· source
· release history
gVisor runtime is now a supported target for syscall monitoring.
0.32.1 · Jul 2022
· source
· release history
+gRPC drop alert subscriptionshippedretiredEnables gRPC clients to subscribe to real-time drop alerts via the API.1 release · first seen Jan 2021▸
Also counts toward: gRPC API support
release
gRPC clients can now subscribe to drop alerts via gRPC API
0.27.0 · Jan 2021
· source
· release history
Lines in monospace are the tool's own words: help text
parsed from its source, or an endpoint from its API document. Under
release, a line is our summary of a dated release. Under
docs, it is quoted from the tool's own documentation or
website. Each links back to the source it came from.
Command line
View
Source
No command matches.
load a captured run
composed command
No matchesTry a different search, or clear a filter to see more.
option surface across analysed releases
options at that releaseadded, per releaseremoved, per release
option
found in
since
description
No matchesTry a different search, or clear a filter to see more.
option changes per release — drag across the rail to set a range
→
Values are placeholders taken from each option’s declared default.
Nothing is executed here — the output shown is a recording of a run
that already happened.
Score card
Shipping velocityreleases a month, last 12 months
Documentation qualityrelease-notes rubric, 0–100
Breaking-change disciplinehow rarely a release breaks users, and notice given
Maintenance riskquiet time against its own cadence, maintainers
Innovation & surfacenew capabilities, API and MCP surface
Community health
Contributor trenddistinct committers, this year against last
Maintainer concentrationbus factor now against a year ago
Issue backlog trendissues closed per issue opened, 12 months
Responsivenessmedian time to a maintainer’s first reply
Nine scores for Falco, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.
Each score is 0–100 on a published rubric, derived from data this site already shows.
A dimension we cannot measure says so — it is never scored 0 and never enters a rank.
How this is scored
Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
Documentation quality — the release-notes rubric published on the analytics page, unchanged.
Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.
Release-note detail over time
See how much detail Falco puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.
Issue, contributor and maintainer activity in falcosecurity/falco, 2023-10 – 2026-09,
as of 2026-09-25. Twelve-month figures first; the trend lines run
the whole window.
Contributors39±0 vs prior 12 months
Maintainers4+2 joined · −5 left, last 12 months
Bus factor2committers behind half the commits
Community-filed96%of issues opened, last 12 months
Median time to close150 daysfirst maintainer reply 26 days
Open backlog24of 1,446 issues ever filed
Issues opened / month1 · 1communitymaintainers
Open backlog24
Contributors / month6
Commits / month37
Stars9,381
Issue themes, last 12 months
bugs 65%
features 20%
questions 1%
docs 7%
other 7%
Counts from the project's public repository and git history; no individuals
are identified. Maintainers are the committers covering 80% of the last year's
commits. how we measure this
Add the badge to your README
Maintain this project? The badge links readers straight to this page, so they can
follow every release here.