All notable changes to FEVER will be documented in this file.
- Add support for sending aggregations from all flows, not just TCP bidirectional ones.
- Properly handle
null
fields in DNS v2 data (#104)
- Log heartbeat creation with Info level (#100)
- Update Go dependency versions (#99)
- Support for Stenosis (#98)
- Fixed handling of JSON
null
values (#97)
- End-to-end test support
- Add heartbeat alerts to forwarded events (#94)
- Add flow report testdata submission (#93)
- Add passive DNS testdata submission (#92)
- Add option to remove
null
JSON fields when usingfever alertify
(#91)
- Ensure that alertified events also contain added fields (#90)
- gRPC based infrastructure for remote runtime communication with FEVER process.
- Runtime control tool for Bloom filter matcher
fever bloom
(#86, #85)
- CI now uses GitHub Actions (#87, #81)
- Support for multiple output sockets with event type filtering and buffers (#84)
- Speed up addition of fields to forwarded EVE-JSON (#83)
- Support for input buffering (#82)
- Support Bloom filter matching for TLS fingerprints (#76, #38)
- Reduce log noise by moving AMQP messages to debug log level (#78)
- Added
version
subcommand (#73)
- Prevent deadlock on main event stream during reconnect (#75)
- change timestamp handling when alertifying (#72)
- Remove potentially blocking calls/locks (#71)
- Use Go modules.
- Make sure timestamps created by alertifier match regular Suricata timestamps.
- Ensure FEVER starts up with unreachable AMQP endpoint (#69)
- Add heartbeat injector (#67)
- Add flow profiling metrics gathering (#66)
- Add interface filtering for Stenosis connector (#60)
- Add alertify tool (#62)
- Various bugfixes (#63, #64)
- CHANGELOG.md now available.
- Add option to inject arbitrary fields into EVE-JSON (#49)
- Various code simplifications and robustness improvements.
- Only extend incoming EVE-JSON instead of marshaling into predefined schema. This enables future-proof consistent output of EVE-JSON as there are no assuptions about what fields are present or allowed in the JSON schema (#54)
- Some bugfixes (such as race conditions).
- Support for interacting with an external persistence tool (Stenosis).
Various cleanups as well as test and code simplifications.
- Optional collection of metadata bundles (context) for each alert, to be submitted over a separate AMQP connection (#46)
- Flow IDs are now forwarded as strings to work around potential issues with syslog-ng (#48)
- Bloom filter alerts might not be properly forwarded (cf. rhaist/surevego@b1cf215)
- Support for active rDNS queries (#36)
- Bloom filter IoC blocking (#44)
- Do not use explicit types in InfluxDB submissions (#34)
- Distinguish DNS query and answer in Bloom filter alerting (#40)
- Allow AMQP channel multiplexing (#43)
- Fix bug causing 100% CPU on AMQP reconnect (#43)
- Support for more flexible URL Bloom filter matching (#33)
- Improved stability of tests w.r.t. run time, see (#32 and #31)
- Forwarding can be disabled by setting -o to empty string (#22)
- TLS metadata is included in TLS SNI Bloom filter alert (#26)
- Tests no longer fail intermittently (#27)
- All events are sent to the database, not just those unhandled by any additional processors (#29)
- Support for IP alerting via EVE metadata (#18)
- Improves robustness of Bloom filter matching by more relaxed handling of corrupted filter input files (#19)
- Configurable Bloom filter prefixes (#16)
makeman
subcommand
- Do not fail when no config file can be read.
- Do not use DCSO-specific alert prefixes by default for Bloom filter alerts.
First proper open-source release.