]>
git.ipfire.org Git - thirdparty/suricata.git/log
Jeff Lucovsky [Mon, 3 Feb 2020 14:44:08 +0000 (09:44 -0500)]
ftp: Restrict file name lengths
Restrict file name lengths to PATH_MAX - 1 to avoid over subscribing
memory to FTP file name tracking.
Shivani Bhardwaj [Tue, 21 Jul 2020 08:16:18 +0000 (13:46 +0530)]
bytetest: use ByteExtractString instead of StringParse
Shivani Bhardwaj [Tue, 21 Jul 2020 07:58:06 +0000 (13:28 +0530)]
util: fix trailing char check with ByteExtractString
Philippe Antoine [Mon, 13 Jul 2020 12:29:27 +0000 (14:29 +0200)]
ssh: fixing incomplete kex parsing
We use the record length from the ssh record header,
and not the size of the parsed data, as is done in other places.
Victor Julien [Mon, 20 Jul 2020 12:49:59 +0000 (14:49 +0200)]
nfs: fix 'dangling' files in lossy sessions
In case of lossy connections the NFS state would properly clean up
transactions, including file transactions. However for files the
state was never set to 'truncated', leading to files to stay 'active'.
This would lead these files staying in the NFS's state. In long running
sessions with lots of files this would lead to performance and memory
use issues.
This patch cleans truncates the file that was being transmitted when
a file transaction is being closed.
Based on
65e9a7c31cc68bdb1fb3e1412b0a56260265c608
Victor Julien [Mon, 20 Jul 2020 12:30:39 +0000 (14:30 +0200)]
nfs: check post-gap timeouts once a second at most
Based on
25f2efe97749611760e6e26d388b420091423732
Victor Julien [Mon, 20 Jul 2020 12:18:52 +0000 (14:18 +0200)]
nfs: update ts only if it changed
Based on
8aa380600da15b95e74a6649e6003a1c484c4ce0
Zach Kelly [Sat, 18 Jul 2020 01:00:54 +0000 (21:00 -0400)]
rdp: remove parser buffering code
Zach Kelly [Sat, 18 Jul 2020 00:58:48 +0000 (20:58 -0400)]
rdp/eve: convert to jsonbuilder
Zach Kelly [Sat, 18 Jul 2020 00:57:08 +0000 (20:57 -0400)]
rdp: rustfmt (update)
Joshua Lumb [Fri, 17 Jul 2020 13:29:20 +0000 (09:29 -0400)]
threads/runmode: Changes to thread config behaviour
Shivani Bhardwaj [Wed, 20 May 2020 19:57:46 +0000 (01:27 +0530)]
gh-checks: Add enable-debug-validation to test
Shivani Bhardwaj [Tue, 19 May 2020 18:07:36 +0000 (23:37 +0530)]
travis: add test for enable-debug-validation
Shivani Bhardwaj [Wed, 15 Jul 2020 11:58:14 +0000 (17:28 +0530)]
jsonbuilder: run test if not debug-validate
Shivani Bhardwaj [Wed, 15 Jul 2020 17:07:58 +0000 (22:37 +0530)]
sip: remove extra jsonbuilder close
Shivani Bhardwaj [Fri, 5 Jun 2020 14:35:21 +0000 (20:05 +0530)]
dcerpc: fix tests to have a valid header
Shivani Bhardwaj [Tue, 21 Apr 2020 09:08:09 +0000 (14:38 +0530)]
logging: Add DCERPC logger
Shivani Bhardwaj [Fri, 5 Jun 2020 13:48:05 +0000 (19:18 +0530)]
dcerpc: Add multi transaction support
DCERPC parser so far provided support for single transactions only.
Extend that to support multiple transactions.
In order for multiple transactions to work, there is always a
transaction identifier for any protocol in its header that lets a
response match the request. In DCERPC, for TCP, that param is call_id in
the header which is a 32 bit field. For UDP, however since it uses
different version of RPC (4.x), this is defined by serial number field
defined in the header. This field however is not contiguous and needs to
be assembled by the provided serial_low and serial_hi fields.
Victor Julien [Wed, 15 Jul 2020 07:22:12 +0000 (09:22 +0200)]
detect/mpm: fix hs check
Tristan Fletcher [Tue, 14 Apr 2020 20:57:13 +0000 (15:57 -0500)]
doc: fix spelling in flowbits image
Roland Fischer [Thu, 28 May 2020 05:58:00 +0000 (01:58 -0400)]
pcap: 32bit counters can wrap-around
Fixes issue 2845.
pcap_stats is based on 32bit counters and given a big enough throughput
will overflow them. This was reported by people using Myricom cards which
should only be a happenstance. The problem exists for all pcap-based
interfaces.
Let's use internal 64bit counters that drag along the pcap_stats and
handle pcap_stats wrap-around as we update the 64bit stats "often enough"
before the pcap_stats can wrap around twice.
Shivani Bhardwaj [Fri, 10 Jul 2020 19:32:10 +0000 (01:02 +0530)]
krb: convert to jsonbuilder
Closes redmine ticket 3754.
Shivani Bhardwaj [Fri, 10 Jul 2020 18:55:10 +0000 (00:25 +0530)]
snmp: convert to jsonbuilder
Closes redmine ticket 3756.
Jason Ish [Mon, 6 Jul 2020 19:21:20 +0000 (13:21 -0600)]
github-ci: build rust doc on stable and 1.34.2
Nothing is done with the rustdoc, its just build to make
sure it builds with our supported versions of Rust
Jason Ish [Mon, 6 Jul 2020 19:17:26 +0000 (13:17 -0600)]
rust: add doc target to build rust docs
Uses "cargo doc --no-deps" to build the documentation just for
our Suricata package. Without --no-deps, documentation will be
build for all our dependencies as well.
The generated documentation will end up in target/doc as HTML.
Jason Ish [Tue, 14 Jul 2020 06:02:59 +0000 (00:02 -0600)]
applayer template (rust): better gap handling example
In the request parser, show checking if a gap was received
and what one example of trying to continue might look like.
Jason Ish [Mon, 13 Jul 2020 18:29:01 +0000 (12:29 -0600)]
applayer template (rust): incomplete support
Show how to use the incomplete AppLayerResult type within the
limits of what the template protocol parser can provide.
Redmine issue:
https://redmine.openinfosecfoundation.org/issues/3541
Jason Ish [Mon, 13 Jul 2020 16:53:24 +0000 (10:53 -0600)]
rust app-layer template: add stubs for gap handling
Jason Ish [Mon, 13 Jul 2020 16:32:51 +0000 (10:32 -0600)]
rust/dns: use new flags field to set parser option flags
Jason Ish [Mon, 13 Jul 2020 16:24:24 +0000 (10:24 -0600)]
applayer: add flags to parser registration struct
This will allow Rust parsers to register for gap handing from
Rust (some Rust parsers do handle gaps, but they set the flag
from C).
Jason Ish [Fri, 31 Aug 2018 04:59:56 +0000 (22:59 -0600)]
template: add gap handling
Victor Julien [Tue, 14 Jul 2020 10:05:21 +0000 (12:05 +0200)]
doc/userguide: fix outdated mpm info
Victor Julien [Tue, 14 Jul 2020 09:42:55 +0000 (11:42 +0200)]
detect/mpm: 'mpm-algo' parsing cleanups
Victor Julien [Tue, 14 Jul 2020 08:48:57 +0000 (10:48 +0200)]
flow: fix unlikely issue with int handling
Thanks for reporting this magenbluten PR 4575.
Victor Julien [Tue, 14 Jul 2020 08:42:43 +0000 (10:42 +0200)]
doc/suricata-update: fix typo and do minor cleanups
Thanks to showipintbri PR 4465.
Zackeus Bengtsson [Thu, 5 Mar 2020 16:06:42 +0000 (17:06 +0100)]
buildbot-pcaps: remove redundant sudo
jason taylor [Mon, 24 Feb 2020 13:15:53 +0000 (08:15 -0500)]
suricatasc: updates copyright date and FSF address
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Mon, 24 Feb 2020 13:14:47 +0000 (08:14 -0500)]
suricatasc: update copyright date and FSF address
Signed-off-by: jason taylor <jtfas90@gmail.com>
jason taylor [Mon, 24 Feb 2020 13:14:01 +0000 (08:14 -0500)]
prscript: update copyright dates and FSF address
Signed-off-by: jason taylor <jtfas90@gmail.com>
Victor Julien [Sat, 11 Jul 2020 14:28:17 +0000 (16:28 +0200)]
detect/stream_size: minor code cleanups
Jason Ish [Sun, 7 Jun 2020 12:07:26 +0000 (14:07 +0200)]
dns: conditional logging
Apply config to newly created response TX.
Victor Julien [Sat, 6 Jun 2020 17:02:28 +0000 (19:02 +0200)]
detect/config: set config for special cases
Allow app-layer to declare the txs are uni-directional and special
care is needed for applying config.
Victor Julien [Fri, 6 Mar 2020 11:34:34 +0000 (12:34 +0100)]
detect/config: initial version
Victor Julien [Sun, 7 Jun 2020 20:41:11 +0000 (22:41 +0200)]
app-layer: handle AppLayerTxData being NULL
Http parser can have 'NULL' user data in case of memcap limit getting
reached.
Victor Julien [Sun, 7 Jun 2020 19:29:43 +0000 (21:29 +0200)]
app-layer: remove unused detect flags API
Victor Julien [Sun, 7 Jun 2020 19:21:05 +0000 (21:21 +0200)]
app-layer/rust: don't use option for GetTxDataFn anymore
Victor Julien [Sun, 7 Jun 2020 19:13:32 +0000 (21:13 +0200)]
app-layer: GetTxData callback is mandatory
Victor Julien [Sun, 7 Jun 2020 14:45:40 +0000 (16:45 +0200)]
app-layer: remove DetectFlags API. Replaced by AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 19:13:02 +0000 (21:13 +0200)]
rdp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 18:57:19 +0000 (20:57 +0200)]
app-layer: remove logged API calls
Victor Julien [Sun, 7 Jun 2020 18:56:16 +0000 (20:56 +0200)]
template: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 18:38:44 +0000 (20:38 +0200)]
tftp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 18:19:59 +0000 (20:19 +0200)]
sip: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 18:12:46 +0000 (20:12 +0200)]
ntp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 18:04:49 +0000 (20:04 +0200)]
ikev2: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 17:55:35 +0000 (19:55 +0200)]
applayer/template: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 17:48:47 +0000 (19:48 +0200)]
dhcp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 15:28:58 +0000 (17:28 +0200)]
snmp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 15:24:21 +0000 (17:24 +0200)]
rfb: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 15:16:38 +0000 (17:16 +0200)]
krb5: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 15:06:46 +0000 (17:06 +0200)]
ssh: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:36:58 +0000 (16:36 +0200)]
dcerpc/udp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:30:58 +0000 (16:30 +0200)]
dcerpc: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:23:43 +0000 (16:23 +0200)]
modbus: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:20:35 +0000 (16:20 +0200)]
enip: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:16:57 +0000 (16:16 +0200)]
ssl/tls: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:13:46 +0000 (16:13 +0200)]
smtp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 14:06:01 +0000 (16:06 +0200)]
ftp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 13:49:04 +0000 (15:49 +0200)]
dnp3: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 13:42:18 +0000 (15:42 +0200)]
smb: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 12:26:56 +0000 (14:26 +0200)]
nfs: support AppLayerTxData
Victor Julien [Tue, 26 May 2020 13:12:15 +0000 (15:12 +0200)]
dns: remove detect_flags and logged now that we use AppLayerTxData
Victor Julien [Wed, 18 Mar 2020 17:06:17 +0000 (18:06 +0100)]
htp: support AppLayerTxData
Victor Julien [Sun, 7 Jun 2020 11:42:09 +0000 (13:42 +0200)]
app-layer: add ApplyTxConfig API
Optional callback a parser can register for applying configuration
to the 'transaction'. Most parsers have a bidirectional tx. For those
parsers that have different types of transaction handling, this new
callback can be used to properly apply the config.
Victor Julien [Wed, 18 Mar 2020 14:27:34 +0000 (15:27 +0100)]
output/tx: implement filtering
Victor Julien [Tue, 26 May 2020 12:34:57 +0000 (14:34 +0200)]
detect: store detect flags in AppLayerTxData
Victor Julien [Tue, 26 May 2020 10:39:44 +0000 (12:39 +0200)]
app-layer: add logger flags to AppLayerTxData
Victor Julien [Wed, 18 Mar 2020 13:08:37 +0000 (14:08 +0100)]
app-layer: define AppLayerTxData and AppLayerTxConfig
AppLayerTxData is a structure each tx should include that will contain
the common fields the engine needs for tracking logging, detection and
possibly other things.
AppLayerTxConfig will be used by the detection engine to configure
the transaction.
Victor Julien [Sun, 7 Jun 2020 20:22:05 +0000 (22:22 +0200)]
htp: alloc user data at tx start
This way the AppLayerTxData is set up from the start. Any type of
processing (logging, detection) will lead to setting up the user
data later on anyway.
Remove other places where it was added.
Victor Julien [Wed, 18 Mar 2020 19:50:47 +0000 (20:50 +0100)]
config: common definitions
Victor Julien [Wed, 18 Mar 2020 20:01:54 +0000 (21:01 +0100)]
rules: add config action
Jason Ish [Fri, 10 Jul 2020 21:43:33 +0000 (15:43 -0600)]
dnp3/eve: update for regenerated dnp3 object logging code
Migration from Jansson to JsonBuilder.
Jason Ish [Fri, 10 Jul 2020 21:43:19 +0000 (15:43 -0600)]
dnp3/eve: regenerator object logging code
Jason Ish [Fri, 10 Jul 2020 21:42:41 +0000 (15:42 -0600)]
scripts/dnp3-gen: update to generate JsonBuilder code
Jason Ish [Fri, 10 Jul 2020 19:46:41 +0000 (13:46 -0600)]
jsonbuilder: set_float, append_float methods
New methods for setting and appending float values.
Jason Ish [Fri, 10 Jul 2020 19:22:09 +0000 (13:22 -0600)]
dnp3/eve: convert to jsonbuilder (non generated code)
First step of converting DNP3 to JsonBuilder by first converting
the non-generated code.
Jason Ish [Fri, 10 Jul 2020 19:19:35 +0000 (13:19 -0600)]
script/dnp3-gen: update generator to reflect in tree changes
Some changes were made to the generated files instead of the
generator script. Update the script to generate what is
in the current state of the in-tree generated files.
Shivani Bhardwaj [Thu, 9 Jul 2020 09:01:01 +0000 (14:31 +0530)]
src: use FatalError whenever possible
Replaces all patterns of SCLogError() followed by exit() with
FatalError(). Cocci script to do this:
@@
constant C;
constant char[] msg;
@@
- SCLogError(C,
+ FatalError(SC_ERR_FATAL,
msg);
- exit(EXIT_FAILURE);
Closes redmine ticket 3188.
Jeff Lucovsky [Sun, 3 May 2020 14:36:17 +0000 (10:36 -0400)]
doc: Add byte_math documentation
Jeff Lucovsky [Mon, 27 Jan 2020 00:39:15 +0000 (19:39 -0500)]
general: Correct typos
Jeff Lucovsky [Sun, 3 May 2020 13:00:04 +0000 (09:00 -0400)]
detect: byte_math support
Jeff Lucovsky [Sun, 3 May 2020 12:55:37 +0000 (08:55 -0400)]
detect: Use byte-math to byte var handling func
Jeff Lucovsky [Mon, 27 Jan 2020 00:27:22 +0000 (19:27 -0500)]
detect: Add byte_math detector
Jeff Lucovsky [Sun, 3 May 2020 12:55:04 +0000 (08:55 -0400)]
detect: Add utility module for byte var handling
Victor Julien [Fri, 10 Jul 2020 13:31:24 +0000 (15:31 +0200)]
eve/alert: minor cleanups
Victor Julien [Fri, 10 Jul 2020 13:26:53 +0000 (15:26 +0200)]
eve/alert: move files logging into util func
Victor Julien [Fri, 10 Jul 2020 13:21:59 +0000 (15:21 +0200)]
eve/alert: move app-layer logic into a util func
Shivani Bhardwaj [Wed, 1 Jul 2020 11:59:01 +0000 (17:29 +0530)]
hyperscan: better error message if not compiled
Philippe Antoine [Fri, 10 Jul 2020 07:40:49 +0000 (09:40 +0200)]
ssh: fix incomplete return for ssh kex
In the case where we already parsed some records
Philippe Antoine [Fri, 10 Jul 2020 08:50:36 +0000 (10:50 +0200)]
dcerpc: detect right parsing of empty op version