Commit Graph

2372 Commits

Author SHA1 Message Date
Mark Stemm
1f7024189c Disable plugins download for now
We'll reenable once test-infra is updated
2021-10-08 16:44:01 -07:00
Mark Stemm
8a9b7dfcfa Squash w/ prior commit 2021-10-06 15:27:13 -07:00
Mark Stemm
635c413c5f Update default falco config for plugins
The default config defines the cloudtrail/json plugins but does not
give them any actual config for init config/open params.

load_plugins is empty so neither plugin is actually loaded by default.

Signed-off-by: Mark Stemm <mark.stemm@gmail.com>
2021-10-06 09:44:15 -07:00
Mark Stemm
797b861fbc Change config handling for load_plugins
If the value is not specified at all, then all plugins are
loaded. Otherwise, check against the list.

This allows disabling all plugins via:
---
load_plugins: []
---

Signed-off-by: Mark Stemm <mark.stemm@gmail.com>
2021-10-06 09:42:27 -07:00
Mark Stemm
f4182707e9 Add plugins to falco build/package
Add a cmake module "plugins" that does the following:

 - Downloads/installs the plugins repo from a known tag
 - Builds using the make target
 - Copies the resulting cloudtrail/json shared libraries to
   CMAKE_CURRENT_BINARY_DIR/plugins
 - Installs them to FALCO_SHARE_DIR/plugins

The default config will define the plugins but they will be disabled
by default.

Signed-off-by: Mark Stemm <mark.stemm@gmail.com>
2021-10-06 09:37:03 -07:00
Mark Stemm
fce2b925f0 Add initial set of Cloudtrail rules
These rules can be used when combined with the cloudtrail plugin.

Signed-off-by: Mark Stemm <mark.stemm@gmail.com>
2021-10-01 15:49:28 -07:00
Mark Stemm
fc4cfa04b7 Merge branch 'new/plugin-system-api-additions' of https://github.com/leogr/falco into new/plugin-system-api-additions 2021-09-30 15:24:46 -07:00
Mark Stemm
e580d042ac Bump falco engine version (plugins support)
Rules files that work with plugins should include a:

---
- required_engine_version: 10
---

In their rules files.

Signed-off-by: Mark Stemm <mark.stemm@gmail.com>
2021-09-30 15:22:43 -07:00
Mark Stemm
d3be537f7e Update to use latest version of falcosecurity/libs 2021-09-23 14:44:19 -07:00
Mark Stemm
849fb98bc2 Update to latest falcosecurity/libs 2021-08-17 15:25:24 -07:00
Mark Stemm
c1d1fafade Update to latest falcosecurity libs 2021-08-04 16:55:02 -05:00
Mark Stemm
2aaee02d65 Only set inputs for source plugins/one plugin at a time
Only set the input plugin for source plugins, as compared to extractor
plugins.

Only allow a single source plugin to be loaded at a time, for now.
2021-08-04 15:53:11 -05:00
Mark Stemm
8ac6ea732e Add plugin version compat w/ rules files
When loading rules, parse a required_plugin_versions item that looks
like:

- required_plugin_versions:
  - name: cloudtrail
    version: 1.0.1

And save it in the engine.

A new method is_plugin_compatible() takes a plugin and version and
returns whether it's compatible with all required_plugin_versions
blocks in all rules files.

In falco, after loading rules and plugins, iterate over the result of
plugin_infos(), calling is_plugin_compatible(), and exiting if any are
not compatible.
2021-07-27 13:34:03 -05:00
Mark Stemm
5d245f6569 Minimally working rule loading + eval w/ plugins
First minimally working version with plugins + rule loading/rule
evaluation:

 - In the falco engine, hold rulesets for plugins in a map from plugin
   id to falco ruleset.
 - Add new methods "add_plugin_filter" to rules.cpp/falco_engine
   that adds a filter for a given source and compiled filter. This
   isn't strictly necessary, as the plugin filterchecks are added when
   a plugin is registered, but it more cleanly separates filters for
   syscalls and plugins.
 - When loading rules, if the source is not syscall or k8s_audit,
   assume it's a plugin filter and call add_plugin_filter.
 - In process_sinsp_event, if the event type is PLUGINEVENT_E, use the
   plugins rulesets map instead of m_sinsp_rules, looking up the
   appropriate source from the plugin.

This doesn't handle extractor plugins yet and I only tested the very
minimal happy path but I did get rules loaded and working.
2021-07-09 11:30:21 -07:00
Mark Stemm
b1d88c509f Update to reflect new plugin api/config in proposal 2021-07-02 17:17:41 -07:00
Leonardo Grasso
c7f18edd5a new(userspace/falco): input plugin support via configuration
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 12:44:59 +02:00
Leonardo Grasso
6adf79ea25 update(userspace/engine): bump Falco engine version
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 12:44:59 +02:00
Leonardo Grasso
8b10a35a40 build(cmake/modules): upgrade libs and drivers version to 13ec67ebd23417273275296813066e07cb85bc91
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 12:44:58 +02:00
Leonardo Grasso
da7279da1d build(cmake/modules): upgrade libs and drivers version to 13ec67ebd23417273275296813066e07cb85bc91
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
05f5aa2af3 chore(cmake/modules): do not build libscap examples
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
53a1be66b0 chore(docker/builder): remove never used MINIMAL_BUILD option
The option was added but could not work since MINIMAL_BUILD is not declared in this scope (also not currently needed).
Furthermore, it never took effect since the builder image was never built and pushed. For the same reason, we have not noticed it until now.

Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
f7b572bea5 build(docker/builder): upgrade cmake version
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
ed59f33f3f build(userspace/falco): add GRPC_LIBRARIES when gRPC is bundled
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
b41acdff1c build(cmake/modules): always use bundled jsoncpp
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
4acc089b1f build(userspace/falco): add_depenedency for gRPC when bundled
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
591d4e500e build: always use bundled b64
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
79bdcb030b build: correct yamlcpp dependency for falco
Co-authored-by: Lorenzo Fontana <lo@linux.com>
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
f4dba52ee2 build(cmake/modules): ncurses dependency is not required anymore
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
bfc0021cdd build: update build system to support libs cmake modules
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
e616f79bac build: switch to falcosecurity-libs external project
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
Leonardo Grasso
4006452b1f chore(cmake/modules): rename sysdig to falcosecurity-libs
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-05-21 10:24:08 +02:00
maxgio92
59831b077e docs(release.md): update github release template mentioning the release manager
Signed-off-by: maxgio92 <massimiliano.giovagnoli.1992@gmail.com>
2021-05-18 15:34:07 +02:00
maxgio92
0d95beb1e3 docs(release.md): update post-release tasks order
Signed-off-by: maxgio92 <massimiliano.giovagnoli.1992@gmail.com>
2021-05-18 15:34:07 +02:00
maxgio92
2e27d5dded docs(release.md): add blog announcement to post-release tasks
Signed-off-by: maxgio92 <massimiliano.giovagnoli.1992@gmail.com>
2021-05-18 15:34:07 +02:00
Leonardo Di Donato
24f64cab33 docs(proposals): fix libs contribution name
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
2021-05-17 16:24:53 +02:00
Yu Kitazume
0f36ff030e add Yahoo!Japan as an adopter
Signed-off-by: Yu Kitazume <u.kitazume@gmail.com>
2021-05-12 11:37:34 +02:00
diamonwiggins
601ec5cf85 add Replicated to adopters
Signed-off-by: diamonwiggins <diamonw757@gmail.com>
2021-05-11 11:59:54 +02:00
Carlos Panato
f237f277e7 changelog: add notes for 0.28.1 release
Signed-off-by: Carlos Panato <ctadeu@gmail.com>
0.28.1
2021-05-07 14:55:02 +02:00
ismail yenigul
2226a1508c exception to privileged container for EKS images
Signed-off-by: ismail yenigul <ismailyenigul@gmail.com>
2021-05-06 02:36:48 +02:00
Carlos Panato
6f64c21ad9 urelease/docs: fix link and small refactor in the text
Signed-off-by: Carlos Panato <ctadeu@gmail.com>
2021-04-30 14:27:26 +02:00
maxgio92
fd6a1d0d05 clean(rules/falco_rules.yaml): remove deprecated oci image repositories
Signed-off-by: maxgio92 <massimiliano.giovagnoli.1992@gmail.com>
2021-04-29 11:51:35 +02:00
David Windsor
87438ec723 Add Secureworks to adopters
Signed-off-by: David Windsor <dwindsor@secureworks.com>
2021-04-26 10:34:00 +02:00
Leonardo Grasso
d0be6d96d0 build: enable ASLR for statically linked build
Co-authored-by: Lorenzo Fontana <lo@linux.com>
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-04-22 18:12:05 +02:00
Leonardo Grasso
aefd67eb8a build: hardening flags
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-04-22 18:12:05 +02:00
Leonardo Di Donato
6e94c37399 new(test): regression test for FAL-01-003
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
2021-04-21 15:11:17 +02:00
Leonardo Di Donato
d3c22d3d0c new(test/trace_files): test fixture for FAL-01-003
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>
2021-04-21 15:11:17 +02:00
natchaphon-r
366975bc3b Adding MathWorks to Falco's adopter list
Signed-off-by: natchaphon-r <natchaphon.r@gmail.com>
2021-04-20 09:30:11 +02:00
natchaphon-r
f9692fcb82 Adding MathWorks to Falco's adopter list
Signed-off-by: natchaphon-r <natchaphon.r@gmail.com>
2021-04-20 09:30:11 +02:00
Leonardo Grasso
e95ab26f33 update(rules): stricter detection of man-db postinst exception
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-04-19 17:01:10 +02:00
Leonardo Grasso
23a611b343 chore(rules): remove too week macro python_running_sdchecks
Signed-off-by: Leonardo Grasso <me@leonardograsso.com>
2021-04-19 17:01:10 +02:00