]>
git.ipfire.org Git - thirdparty/suricata.git/log
Victor Julien [Wed, 23 Nov 2022 13:29:39 +0000 (14:29 +0100)]
files: always initialize inspect_window and min_inspect_depth
This is to make sure the files buffers are properly managed even
when there are no rules or when there are no file.data rules.
Bug: #5703.
Victor Julien [Wed, 23 Nov 2022 10:56:33 +0000 (11:56 +0100)]
rust/files: open file without trackid as pointer
Victor Julien [Wed, 23 Nov 2022 10:55:42 +0000 (11:55 +0100)]
rust/filecontainer: remove unused declaration
Victor Julien [Thu, 24 Nov 2022 11:01:13 +0000 (12:01 +0100)]
streaming/buffer: set hard limit on buffer size
Don't allow the buffer to grow beyond 1GiB. Add a once per thread
warning if it does reach it.
Bug: #5703.
Jason Ish [Fri, 18 Nov 2022 20:52:43 +0000 (14:52 -0600)]
github-ci/centos:7: cache yum RPMs
Jason Ish [Fri, 18 Nov 2022 20:46:15 +0000 (14:46 -0600)]
github-ci/windows: cache cargo artifacts
Jason Ish [Fri, 18 Nov 2022 20:45:29 +0000 (14:45 -0600)]
github-ci/macos: don't force cbindgen
We want to use binary from the cache if available.
Jason Ish [Fri, 18 Nov 2022 17:18:38 +0000 (11:18 -0600)]
github-ci: cache RPMs on dnf distros
Jason Ish [Fri, 18 Nov 2022 16:47:45 +0000 (10:47 -0600)]
github-ci: better .cargo caching
Philippe Antoine [Mon, 21 Nov 2022 16:06:44 +0000 (17:06 +0100)]
http2: fix decompression buffering
It was not enough to set Cursor position to 0,
also its inner Vec should be cleared.
This way, a new input gets written at the beginning of the
Cursor and its inner Vec...
Ticket: #5691
Philippe Antoine [Mon, 21 Nov 2022 15:21:19 +0000 (16:21 +0100)]
http2: support padded data frames
Ticket: #5691
Victor Julien [Tue, 22 Nov 2022 13:14:17 +0000 (14:14 +0100)]
src: unify how warnings specify ticket id's
Jason Ish [Wed, 19 Oct 2022 19:07:56 +0000 (13:07 -0600)]
afpacket/netmap: warn about mixed ips, ids/tap deprecation
Suricata already logs if AF_PACKET or Netmap are running in a mixed IPS
and IDS/TAP mode. As the behavior is undefined when these modes are
mixed, it is best to deprecate and to not allow this behavior. For now
warn that it will be unsupported and fail in Suricata 8.
Ticket: 5587
Philippe Antoine [Fri, 17 Jun 2022 13:00:31 +0000 (15:00 +0200)]
ci: remove unnecessary write permission to github workflow
Philippe Antoine [Tue, 1 Nov 2022 14:23:10 +0000 (15:23 +0100)]
ci: build with -Werror for -Wimplicit-int-conversion
So that CI gets red
Philippe Antoine [Fri, 4 Nov 2022 14:24:02 +0000 (15:24 +0100)]
detect: fix memory leak when parsing signature
Ticket: #5529
Victor Julien [Thu, 17 Nov 2022 20:59:55 +0000 (21:59 +0100)]
profiling: fix includes
Todd Mortimer [Mon, 31 Oct 2022 17:39:51 +0000 (17:39 +0000)]
swf-decompression: Disable by default.
Add an entry to the upgrade guide noting the change.
Ticket: #5632
Victor Julien [Thu, 17 Nov 2022 19:11:07 +0000 (20:11 +0100)]
ipfw: fix missing include
Victor Julien [Thu, 17 Nov 2022 19:10:57 +0000 (20:10 +0100)]
netmap: fix missing include
Jason Ish [Wed, 16 Nov 2022 16:48:55 +0000 (10:48 -0600)]
classification: continue processing on parse error
Instead of returning on the first line that fails to parse, log the
error and continue instead of returning.
The fail fast makes sense in test mode, but not in a normal run mode
where you don't want one bad line to abort processing the whole file.
This will still fail out in test mode.
Related issue: 4554
Philippe Antoine [Mon, 26 Sep 2022 15:06:38 +0000 (17:06 +0200)]
src: remove double includes
Keep the unconditional include to be sure it works
git grep '#include "' src/*.c | sort | uniq -c | awk '$1 > 1'
Philippe Antoine [Fri, 16 Sep 2022 12:46:42 +0000 (14:46 +0200)]
src: fix some include orders
So as to be able to get include removal right
Philippe Antoine [Tue, 2 Aug 2022 09:42:38 +0000 (11:42 +0200)]
src: remove obsolete comment
Should have been removed along by commit
82dba07579fcd188bc537b57c52eea4974f2d9e1
Philippe Antoine [Thu, 3 Nov 2022 09:09:11 +0000 (10:09 +0100)]
src: fix remaining cppclean warnings
Philippe Antoine [Tue, 1 Nov 2022 20:39:50 +0000 (21:39 +0100)]
unittest: fix unneeded includes as per cppclean
Especially because there is conditional inclusion from a header
Philippe Antoine [Fri, 23 Sep 2022 08:17:06 +0000 (10:17 +0200)]
util: fix includes for util-memcmp
u8_tolower is now in suricata-common.h
Fixes commit
19e94e93fab84c009c0aefd49809c91665a8fa33
Philippe Antoine [Tue, 2 Aug 2022 08:22:54 +0000 (10:22 +0200)]
ci: adds one build with hyperscan
Philippe Antoine [Mon, 1 Aug 2022 20:04:46 +0000 (22:04 +0200)]
ci: adds build with luajit
Philippe Antoine [Tue, 1 Nov 2022 14:23:43 +0000 (15:23 +0100)]
src: fix integer warnings
and adds defrag debug validations
Philippe Antoine [Fri, 11 Nov 2022 10:52:27 +0000 (11:52 +0100)]
tls: fix off by one in supported versions extension
Ticket: #5663
Jeff Lucovsky [Sun, 16 Oct 2022 14:13:19 +0000 (10:13 -0400)]
detect/bsize: Validate bsize values after parsing
Issue: 2982
This commit moves bsize validation with respect to content matches to
the post-parse validation stage. This allows bsize to consider all
content-related values, including those that follow the bsize keyword.
Jeff Lucovsky [Sun, 16 Oct 2022 14:12:13 +0000 (10:12 -0400)]
bsize/general: Remove unnecessary includes
This commit removes unused/commented out #include lines.
Jeff Lucovsky [Sun, 16 Oct 2022 14:08:26 +0000 (10:08 -0400)]
add to general: Typo fixup
Jeff Lucovsky [Tue, 9 Aug 2022 12:52:34 +0000 (08:52 -0400)]
netmap: Fix include file issues
Jeff Lucovsky [Mon, 18 May 2020 13:30:02 +0000 (09:30 -0400)]
doc: Update bsize documentation
This commit updates the bsize documentation
1. Describe what happens when "content" immediately precedes "bsize"
2. Include the operators and
3. Include examples using the operators.
Jeff Lucovsky [Thu, 27 Jan 2022 15:23:55 +0000 (10:23 -0500)]
detect/bsize: Semantic validation of bsize values
This commit adds validation of the bsize value(s) with the available
buffer size. Signatures are flagged if the bsize and buffer size are
incompatible.
Issue: 3682
Jeff Lucovsky [Mon, 18 May 2020 13:33:58 +0000 (09:33 -0400)]
tests/bsize: Test cases with preceding content
This commit adds test cases that validate behavior when "content"
immediately precedes "bsize".
Jeff Lucovsky [Fri, 21 Jan 2022 14:46:51 +0000 (09:46 -0500)]
general: Typo fixup
Jeff Lucovsky [Fri, 21 Jan 2022 14:45:56 +0000 (09:45 -0500)]
detect/content: Use SCCalloc instead of malloc/memset
This commit replaces a SCMalloc/memset with SCCalloc
Jeff Lucovsky [Sat, 13 Feb 2021 15:41:09 +0000 (10:41 -0500)]
detect/content: Consider distance in validation
Ticket: 2982
This commit validates that the content usage in a rule will not exceed
the dsize value.
Values of distance that cause the right edge to be exceeded are
considered an error and the signature will be rejected.
Shivani Bhardwaj [Mon, 31 Oct 2022 13:23:06 +0000 (18:53 +0530)]
util/base64: use padding var for calculations
jason taylor [Wed, 2 Nov 2022 19:51:33 +0000 (19:51 +0000)]
userguide: update tos keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Wed, 2 Nov 2022 19:41:29 +0000 (19:41 +0000)]
userguide: update fragoffset keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Fri, 28 Oct 2022 19:48:18 +0000 (19:48 +0000)]
userguide: update fragbits information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Thu, 20 Oct 2022 21:05:29 +0000 (21:05 +0000)]
userguide: update geoip information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Tue, 11 Oct 2022 22:00:21 +0000 (22:00 +0000)]
userguide: update id keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Fri, 7 Oct 2022 20:44:14 +0000 (20:44 +0000)]
userguide: update ipv6.hdr keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Fri, 7 Oct 2022 20:18:01 +0000 (20:18 +0000)]
userguide: update ipv4.hdr keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Thu, 6 Oct 2022 22:05:23 +0000 (22:05 +0000)]
userguide: update ip_proto keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Wed, 28 Sep 2022 23:58:03 +0000 (23:58 +0000)]
userguide: update sameip keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Wed, 28 Sep 2022 23:00:48 +0000 (23:00 +0000)]
userguide: update ipopts keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Wed, 21 Sep 2022 23:22:44 +0000 (23:22 +0000)]
userguide: update ttl keyword information
Signed-off-by: jason taylor <jtfas90@gmail.com>
Philippe Antoine [Thu, 10 Nov 2022 12:17:49 +0000 (13:17 +0100)]
doc: update doc for HTTP file.data to server
Ticket: #4144
Completes
e587f6792afdb863cbe57e972bd395443f23d9d9
Philippe Antoine [Fri, 4 Nov 2022 14:35:30 +0000 (15:35 +0100)]
quic: use VecDeque
Ticket: #5637
Victor Julien [Wed, 9 Nov 2022 14:44:26 +0000 (16:44 +0200)]
security: disable setrlimit with asan
Various parts of ASAN will require creation of threads. At least
LSAN reporting and ASAN stack traces require this. Detect if we
run with ASAN and bypass the noproc setting with a warning.
Bug: #5661.
Philippe Antoine [Thu, 3 Nov 2022 10:02:07 +0000 (11:02 +0100)]
pcre: configurable paths for PCRE2 for include/lib
Ticket: #5572
Victor Julien [Tue, 1 Nov 2022 15:48:13 +0000 (16:48 +0100)]
ssl: add debug validation checks for recent changes
Make sure the assumptions are correct.
Philippe Antoine [Wed, 5 Oct 2022 19:21:41 +0000 (21:21 +0200)]
tls: fix buffer overread
Recently introduced by commit
4bab6e24e5e2cef29c9a5a6bee3263e4a3d47e76
Ticket: #5564
Philippe Antoine [Thu, 3 Nov 2022 15:13:21 +0000 (16:13 +0100)]
detect: avoids memory leak on ja3 signature parsing
If a later keyword enforces a protocol incompatible with ja3
Philippe Antoine [Thu, 3 Nov 2022 12:42:57 +0000 (13:42 +0100)]
clean: use SC_MD5_HEX_LEN instead of magic number 32
Philippe Antoine [Thu, 3 Nov 2022 12:27:10 +0000 (13:27 +0100)]
clean: replace MD5_STRING_LENGTH with more used SC_MD5_HEX_LEN
Philippe Antoine [Thu, 3 Nov 2022 12:26:07 +0000 (13:26 +0100)]
clean: remove useless * sizeof(char)
Philippe Antoine [Thu, 3 Nov 2022 12:20:25 +0000 (13:20 +0100)]
quic: ja3 code deduplication
As quic transactions are unidirectional, the same function is
used to get ja3 from client or from server.
Philippe Antoine [Fri, 28 Oct 2022 19:57:11 +0000 (21:57 +0200)]
quic: allow ja3.hash keyword
Ticket: #5624
Philippe Antoine [Fri, 4 Nov 2022 10:13:07 +0000 (11:13 +0100)]
rust: fix cargo clippy --all-features
Philippe Antoine [Fri, 4 Nov 2022 08:38:51 +0000 (09:38 +0100)]
rust: cargo clippy --all-features --fix --allow-no-vcs
Philippe Antoine [Thu, 3 Nov 2022 20:34:37 +0000 (21:34 +0100)]
ci: cargo clippy run option
As clippy does not recognize git which is above
Philippe Antoine [Thu, 3 Nov 2022 14:35:22 +0000 (15:35 +0100)]
rust: fix warnings on rustc 1.67.0-nightly
warning: for loop over an `Option`. This is more readably written
as an `if let` statement
Daniel Young [Mon, 23 May 2022 19:41:48 +0000 (15:41 -0400)]
detect/parse-port: fix whitespaces bug
Updated by Victor Julien to:
- accept but strip leading whitespaces
- update tests
- cleanup tests
Eric Leblond [Wed, 27 Jul 2022 07:21:51 +0000 (09:21 +0200)]
detect/filename: fix buffer description
Shivani Bhardwaj [Mon, 26 Sep 2022 04:44:51 +0000 (10:14 +0530)]
src: remove unneeded header and refs
Haleema Khan [Fri, 28 Oct 2022 22:34:05 +0000 (03:34 +0500)]
detect-l3proto: Convert unittests to new FAIL/PASS API
Ticket: #4050
Alice Akaki [Fri, 28 Oct 2022 19:16:58 +0000 (15:16 -0400)]
detect-icmp-seq: clean-up unittests
Task: #5597
Eric Leblond [Sun, 30 Oct 2022 12:08:06 +0000 (13:08 +0100)]
flow: fix FlowSwapFileFlags function
Ticket: #5625
Haleema Khan [Fri, 21 Oct 2022 02:45:49 +0000 (07:45 +0500)]
detect-filesize: Convert unittests to new FAIL/PASS API
Ticket: 4039
Haleema Khan [Sun, 23 Oct 2022 21:32:56 +0000 (02:32 +0500)]
detect-distance: Convert unittests to new FAIL/PASS API
Ticket : #4020
Juliana Fajardini [Mon, 24 Oct 2022 00:58:42 +0000 (21:58 -0300)]
pgsql: add test for parameter status parser
Since we've done some changes to how the parameters are parsed, add one
more test case to check that.
Bug #5579
Juliana Fajardini [Wed, 7 Sep 2022 19:41:48 +0000 (16:41 -0300)]
pgsql: move database into opt parameters list
For StartupMessages, the database parameter is optional. This moves the
parameter into the optional_parameters list.
Bug #5579
Juliana Fajardini [Wed, 7 Sep 2022 18:52:42 +0000 (15:52 -0300)]
eve/schema: pgsql - allow flexible parameters list
Pgsql's parameters - for message types like StartupMessage and
ParameterStatus, for instance, don't have a finite, definitive set, as
per their documentation. Our json schema was allow expecting a fixed set
of parameters, though, resulting in SV tests failing if different, valid
parameters appeared.
Bug #5579
Philippe Antoine [Fri, 26 Aug 2022 12:02:16 +0000 (14:02 +0200)]
pgsql: support empty parameter values
Bug #5579
Philippe Antoine [Fri, 26 Aug 2022 12:00:40 +0000 (14:00 +0200)]
pgsql: support out of order parameters for startup message
As user can be not the first parameter
Bug #5579
Alice Akaki [Sat, 22 Oct 2022 17:07:04 +0000 (13:07 -0400)]
detect-icmp-id: convert unittests to FAIL/PASS APIs
Task: #4042
Haleema Khan [Fri, 21 Oct 2022 02:16:45 +0000 (07:16 +0500)]
detect-itype: Convert unittests to new FAIL/PASS API
Bug: #5589
dependabot[bot] [Thu, 13 Oct 2022 19:33:12 +0000 (19:33 +0000)]
github-actions: bump actions/cache from 3.0.10 to 3.0.11
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.10 to 3.0.11.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.10...
9b0c1fce7a93df8e3bb8926b0d6e9d89e92f20a7 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Simeon Miteff [Wed, 28 Sep 2022 23:38:07 +0000 (09:38 +1000)]
profiling: Make rule_perf.log JSON output newline-delimited
Adding a newline makes the output valid JSON when multiple sortings of
the rules profile object are written to the log.
Jeff Lucovsky [Sat, 22 Oct 2022 16:59:22 +0000 (12:59 -0400)]
doc/netmap: Describe Netmap IPS usage
Issue: 5512
This commit summarizes Netmap usage with Suricata's IPS mode.
Jason Ish [Tue, 13 Sep 2022 15:36:01 +0000 (09:36 -0600)]
doc/userguide: update bittorrent-dht eve examples
Update the bittorrent-dht examples using real log records with peers
and nodes broken down into objects.
Jason Ish [Thu, 8 Sep 2022 18:08:26 +0000 (12:08 -0600)]
eve/schema: bittorrent-dht updates
Some values that were previously strings are now parsed down into
objects.
Jason Ish [Thu, 8 Sep 2022 17:15:38 +0000 (11:15 -0600)]
bittorrent-dht: parse and log node6 lists
Node6 lists are just like node lists, but for IPv6 addresses.
Jason Ish [Thu, 8 Sep 2022 18:39:31 +0000 (12:39 -0600)]
bittorrent-dht: remove tests that are no longer valid
Jason Ish [Thu, 8 Sep 2022 16:42:15 +0000 (10:42 -0600)]
bittorrent-dht: fix values decoding, as a list of peers
The "values" field is not a string, but instead peer information in
compact format. Decode this properly and then properly format in the
log.
Jason Ish [Thu, 8 Sep 2022 16:41:10 +0000 (10:41 -0600)]
jsonbuilder: add append_hex - add hex to array
New method, append_hex to add a byte array to a JSON array in hex
encoding.
Jason Ish [Thu, 8 Sep 2022 14:59:11 +0000 (08:59 -0600)]
bittorrent-dht: parse token and target as byte values
Jason Ish [Wed, 7 Sep 2022 22:46:20 +0000 (16:46 -0600)]
bittorrent-dht: only attempt to parse dht messages
The bittorrent flow is shared with transport messages as well as dht
messages. Only attempt to parse dht message as dht, ignore the rest.
Jason Ish [Wed, 7 Sep 2022 14:51:28 +0000 (08:51 -0600)]
bittorrent-dht: decode node data structures
Instead of decoding the nodes field into a blog of bytes, decode it into
an array of node info objects, each with a node id, IP address and port.
Jason Ish [Wed, 17 Aug 2022 23:20:00 +0000 (17:20 -0600)]
bittorrent-dht: convert some fields to byte arrays
Some fields that were previously strings are not always value UTF-8
data, instead the protocol specification refers to them as strings of
bytes, so in other words byte arrays.
Currently fields converted are:
- client_version
- info_hash
- response.id
- request.id
- nodes
- token
Jason Ish [Fri, 12 Aug 2022 16:30:00 +0000 (10:30 -0600)]
doc: rename bittorrent-dht to bittorrent_dht in eve output
Jason Ish [Fri, 12 Aug 2022 16:27:45 +0000 (10:27 -0600)]
bittorrent-dht/eve: log as bittorrent_dht
Jason Ish [Fri, 12 Aug 2022 16:03:58 +0000 (10:03 -0600)]
eve-schema: add bittorrent-dht