diff --git a/config/services/systemd/common/crowdsec/bouncers/whitelists.yaml.j2 b/config/services/systemd/common/crowdsec/bouncers/whitelists.yaml.j2 index fed75d1..76f64ab 100644 --- a/config/services/systemd/common/crowdsec/bouncers/whitelists.yaml.j2 +++ b/config/services/systemd/common/crowdsec/bouncers/whitelists.yaml.j2 @@ -18,4 +18,6 @@ whitelist: - "evt.Meta.target_fqdn == '{{ services['immich']['domain']['public'] }}.{{ domain['public'] }}' && evt.Meta.http_path contains '/api/assets/' && evt.Meta.http_path contains '/thumbnail'" # opencloud chunk request false positive - "evt.Meta.target_fqdn == '{{ services['opencloud']['domain']['public'] }}.{{ domain['public'] }}' && evt.Meta.http_path contains '/js/chunks/'" + # nextcloud thumbnail/preview request error false positive + - "evt.Meta.target_fqdn == '{{ services['nextcloud']['domain']['public'] }}.{{ domain['public'] }}' && evt.Meta.http_status == '404' && evt.Meta.http_verb == 'GET' && evt.Meta.http_path startsWith '/index.php/core/preview?'" {% endif %} diff --git a/docs/issues/crowdsec/260502_nextcloud.md b/docs/issues/crowdsec/260502_nextcloud.md index 2c610c9..05e0947 100644 --- a/docs/issues/crowdsec/260502_nextcloud.md +++ b/docs/issues/crowdsec/260502_nextcloud.md @@ -21,9 +21,13 @@ - 2026-05-02: Find the false positive case, and add whitelist - 2026-05-03: Install crowdsecurity/nextcloud-whitelist parser - 2026-05-03: Make previous expressions annotation +- 2026-05-07: Find the false positive case, which is not on `crowdsecurity/nextcloud-whitelist` +- 2026-05-07: Set whitelist expression ## Solution - Install crowdsecurity/nextcloud-whitelist on auth node +- Add expression on whitelist + - evt.Meta.target_fqdn == '{{ services['nextcloud']['domain']['public'] }}.{{ domain['public'] }}' && evt.Meta.http_status == '404' && evt.Meta.http_verb == 'GET' && evt.Meta.http_path startsWith '/index.php/core/preview?' ### Deprecated solution - Access to fw