]>
git.ipfire.org Git - thirdparty/suricata.git/log
Victor Julien [Tue, 17 Mar 2015 11:48:14 +0000 (12:48 +0100)]
flow: get flow reference during lookup
Update Flow lookup functions to get a flow reference during lookup.
This reference is set under the FlowBucket lock.
This paves the way to not getting a flow lock during lookups.
Victor Julien [Sat, 16 Apr 2016 19:30:32 +0000 (21:30 +0200)]
detect: split detect entry into flow/noflow
This is a preparation for flow locking updates.
Mats Klepsland [Wed, 18 May 2016 11:49:47 +0000 (13:49 +0200)]
detect: add (mpm) keyword for tls_sni
Match on server name indication (SNI) extension in TLS using tls_sni
keyword, e.g:
alert tls any any -> any any (msg:"SNI test"; tls_sni;
content:"example.com"; sid:12345;)
Jason Ish [Tue, 17 May 2016 19:40:43 +0000 (13:40 -0600)]
typo: SURCATA -> SURICATA
Jason Ish [Tue, 17 May 2016 19:40:01 +0000 (13:40 -0600)]
typos: surictsc -> suricatasc
Reported by Markus Lude on the mailing list.
Victor Julien [Mon, 16 May 2016 12:11:56 +0000 (14:11 +0200)]
ipv6: simplify ext hdr parsing
Victor Julien [Sun, 15 May 2016 18:05:44 +0000 (20:05 +0200)]
defrag: work around packet creation issues
Defrag tests set up packets but don't call Decode on them. Work
around failing IPv6 tests.
Victor Julien [Sun, 15 May 2016 11:35:10 +0000 (13:35 +0200)]
ipv6: simplify ext hdr parsing and storage
This reduces size of the IPV6ExtHdr structure part of every packet
significantly.
Clean up macro's in the ipv6 header.
Victor Julien [Mon, 16 May 2016 10:31:07 +0000 (12:31 +0200)]
detect-ipopts: optimize matching
Victor Julien [Mon, 16 May 2016 10:26:22 +0000 (12:26 +0200)]
detect-ipopts: cleanup
Victor Julien [Mon, 16 May 2016 10:17:38 +0000 (12:17 +0200)]
ipv4: removed unused variables
Victor Julien [Mon, 16 May 2016 10:15:42 +0000 (12:15 +0200)]
ipv4: store ipopts as flags, not bools
Victor Julien [Sun, 15 May 2016 16:29:25 +0000 (18:29 +0200)]
ipv4: shrink per packet ipopts storage
Victor Julien [Fri, 13 May 2016 08:50:51 +0000 (10:50 +0200)]
qa: update drmemory suppressions for hyperscan spm matching
Justin Viiret [Mon, 16 May 2016 04:15:45 +0000 (14:15 +1000)]
spm: add "spm-algo: auto" setting
This will default to Hyperscan when Suricata is built with Hyperscan
support. Otherwise, Boyer-Moore is used by default.
Justin Viiret [Thu, 28 Apr 2016 02:48:38 +0000 (12:48 +1000)]
spm: add Hyperscan implementation
Justin Viiret [Wed, 11 May 2016 04:10:27 +0000 (14:10 +1000)]
spm: add and use new SPM API
This new API allows for different SPM implementations, using a function
pointer table like that used for MPM.
This change also switches over the paths that make use of
DetectContentData (which previously used BoyerMoore directly) to the new
API.
Justin Viiret [Thu, 12 May 2016 03:08:30 +0000 (13:08 +1000)]
suricata.yaml: document spm-algo option
Justin Viiret [Thu, 28 Apr 2016 05:23:05 +0000 (15:23 +1000)]
spm: add SinglePatternMatchDefaultMatcher
Allows selecting SPM algorithm with the 'spm-algo' value in the YAML
config file.
Victor Julien [Sat, 7 May 2016 15:22:22 +0000 (17:22 +0200)]
tcp sack: improve tests
Victor Julien [Sat, 7 May 2016 15:21:04 +0000 (17:21 +0200)]
detect app-layer-event: fix tests
Victor Julien [Sat, 7 May 2016 15:20:12 +0000 (17:20 +0200)]
app-layer: test fixes
Victor Julien [Fri, 13 May 2016 16:35:26 +0000 (18:35 +0200)]
thread storage: fix memset 0 after realloc
Thread storage expansion would not properly memset 0 the new part
of the memory.
Jason Ish [Mon, 16 May 2016 07:21:33 +0000 (01:21 -0600)]
configure.ac: escape $srcdir when used in a variable
$srcdir needs to be escaped for proper expansion when used
as part of a Makefile variable.
Mats Klepsland [Fri, 13 May 2016 06:00:19 +0000 (08:00 +0200)]
tlsstore: fix memleak
Bug #1771.
Direct leak of 1834 byte(s) in 1 object(s) allocated from:
#0 0x4e2e65 in realloc ??:?
#1 0xcec27b in LogTlsLogPem /home/mats/suricata/src/log-tlsstore.c:130
#2 0xcea4f5 in LogTlsStoreLogger /home/mats/suricata/src/log-tlsstore.c:303
#3 0xd8b99c in OutputPacketLog /home/mats/suricata/src/output-packet.c:104
Mats Klepsland [Thu, 12 May 2016 06:14:52 +0000 (08:14 +0200)]
tlsstore: use TxLogger
Mats Klepsland [Thu, 12 May 2016 06:11:53 +0000 (08:11 +0200)]
output: add new tx logger to log at certain condition
Some loggers needs certain conditions to be met before logging.
This enables us to use conditions on the tx logger.
Mats Klepsland [Wed, 27 Apr 2016 08:17:15 +0000 (10:17 +0200)]
tls: change flag checking in SSLParserTest23
Change flag checking in SSLParserTest23 to check each flag individually
to enable adding more flags without the test failing.
Mats Klepsland [Fri, 15 Apr 2016 07:19:36 +0000 (09:19 +0200)]
output: allow more than one TLS logger
Mats Klepsland [Fri, 15 Apr 2016 07:07:09 +0000 (09:07 +0200)]
jsontls: use TxLogger
Mats Klepsland [Thu, 14 Apr 2016 07:51:18 +0000 (09:51 +0200)]
tlslog: use TxLogger
Mats Klepsland [Wed, 13 Apr 2016 06:43:54 +0000 (08:43 +0200)]
output-lua: use LuaTxLogger for TLS
Mats Klepsland [Wed, 27 Apr 2016 12:13:44 +0000 (14:13 +0200)]
output: add new logger to log at specified state
Sometimes we want to log when we reach a specified state instead of
waiting for the session to end. E.g for TLS we want to log as soon
as the handshake is done.
To do this, a new logger is added, where it is possible to specify
a custom "ProgressCompletionStatus".
Mats Klepsland [Wed, 4 May 2016 11:37:04 +0000 (13:37 +0200)]
template: register logger functions
Mats Klepsland [Wed, 4 May 2016 11:25:03 +0000 (13:25 +0200)]
modbus: register logger functions
Mats Klepsland [Wed, 4 May 2016 11:16:03 +0000 (13:16 +0200)]
http: register logger functions
Mats Klepsland [Wed, 4 May 2016 10:53:55 +0000 (12:53 +0200)]
smtp: register logger functions
Mats Klepsland [Wed, 4 May 2016 10:35:06 +0000 (12:35 +0200)]
dns: register logger functions
Mats Klepsland [Wed, 4 May 2016 10:14:13 +0000 (12:14 +0200)]
tls: register logger functions
Mats Klepsland [Wed, 4 May 2016 09:03:57 +0000 (11:03 +0200)]
tx: add functions for logging
Add function AppLayerParserRegisterLoggerFuncs for registering
a callback function for checking if a specific logger has logged
a transaction, and a callback function for specifying that it has.
Also add functions AppLayerParserGetTxLogged and
AppLayerParserSetTxLogged to invoke these callback functions.
Mats Klepsland [Wed, 4 May 2016 08:00:26 +0000 (10:00 +0200)]
tx: do not store ProgressCompletionStatus per ipproto
Change AppLayerParserRegisterGetStateProgressCompletionStatus to
only store one ProgressCompletionStatus callback function for each
alproto, instead of storing one for each ipproto.
This enables us to use AppLayerParserGetStateProgressCompletionStatus
in functions where we do not know the ipproto used.
Mats Klepsland [Wed, 13 Apr 2016 06:28:16 +0000 (08:28 +0200)]
tls: make TX aware
Mats Klepsland [Thu, 12 May 2016 09:54:05 +0000 (11:54 +0200)]
tls-sni: fix alignment issues
Victor Julien [Tue, 10 May 2016 06:50:37 +0000 (08:50 +0200)]
sources: fix netmap compilation and pcap setup
Victor Julien [Wed, 18 Mar 2015 10:24:26 +0000 (11:24 +0100)]
flow queue handler: use int16_t
Use int16_t instead of int to store the autofp queue id. We should
not easily get to 32k threads so 2 bytes per flow is sufficient.
Victor Julien [Mon, 18 Apr 2016 14:26:18 +0000 (16:26 +0200)]
flow: remove unused debug code
Victor Julien [Tue, 19 Apr 2016 09:38:25 +0000 (11:38 +0200)]
flowint: redo tests
Victor Julien [Tue, 19 Apr 2016 10:03:35 +0000 (12:03 +0200)]
detect: add missing sigorder case
DIALLO David [Wed, 4 May 2016 07:58:01 +0000 (09:58 +0200)]
modbus: fix AddressSanitizer error (segmentation fault)
In case of Mask Write register or Write single register request with
no data (malformed packet), app-layer-modbus checks response content
(data) with the none stored request content. That causes the segmentation
fault.
Before accessing to request content, app-layer-modbus checks now if
content has been previously stored. 4 unitests have been adding, 2 of them
to test the management of Mask Write register and Write single register requests,
and the 2 others to check invalid Mask Write register and Write single register
requests.
Victor Julien [Fri, 6 May 2016 13:18:57 +0000 (15:18 +0200)]
ipv6: fix alignment issue in address to string code
Victor Julien [Fri, 6 May 2016 13:13:21 +0000 (15:13 +0200)]
ac-ks: fix integer handling issue
Victor Julien [Fri, 6 May 2016 13:12:29 +0000 (15:12 +0200)]
unittests: don't call memcpy on NULL-ptr
Victor Julien [Fri, 6 May 2016 13:10:42 +0000 (15:10 +0200)]
pcre: initialize var before use
Victor Julien [Fri, 6 May 2016 13:09:52 +0000 (15:09 +0200)]
yaml: minor cleanup
Victor Julien [Fri, 6 May 2016 13:09:36 +0000 (15:09 +0200)]
yaml: initialize var to prevent uninitialized read
Victor Julien [Fri, 6 May 2016 13:04:07 +0000 (15:04 +0200)]
tcp sack: fix alignment issues
Victor Julien [Fri, 6 May 2016 13:00:10 +0000 (15:00 +0200)]
smb: improve integer handling
Victor Julien [Fri, 6 May 2016 12:57:55 +0000 (14:57 +0200)]
dcerpc: improve integer handling
Victor Julien [Fri, 6 May 2016 11:06:15 +0000 (13:06 +0200)]
detect port: fix integer handling in hashing
Victor Julien [Fri, 6 May 2016 10:54:37 +0000 (12:54 +0200)]
decode: don't call memcpy on NULL-ptr on pseudo packets
Victor Julien [Fri, 6 May 2016 10:50:15 +0000 (12:50 +0200)]
ippair: fix alignment issues
Victor Julien [Fri, 6 May 2016 10:50:01 +0000 (12:50 +0200)]
host: fix alignment issues
Victor Julien [Fri, 6 May 2016 10:49:33 +0000 (12:49 +0200)]
flow: fix alignment issues
Victor Julien [Fri, 6 May 2016 10:43:11 +0000 (12:43 +0200)]
tcp: fix alignment issues with tcp timestamps
Victor Julien [Fri, 6 May 2016 09:04:29 +0000 (11:04 +0200)]
decode-mime: don't call memcpy on NULL pointer
Jason Ish [Thu, 5 May 2016 15:41:45 +0000 (09:41 -0600)]
sources: allow interface definitions to be reordered
For af-packet, pf-ring, netmap, and pcap use a generic
lookup function to find the configuration node for an
interface.
The new lookup function does not depend on the ordering
of the items inside the device configuration.
Eric Leblond [Sun, 8 May 2016 22:06:57 +0000 (00:06 +0200)]
config-test: fix memory leak detect by ASAN
NSS library was not deinit at exit resulting in memory leak. As
it is useless for a config test, the patch updates the code so it
is not initialized.
Patch also calls MagicDeinit to free memory used by libmagic.
maxtors [Thu, 5 May 2016 09:12:22 +0000 (11:12 +0200)]
Use ConfValIsTrue for parseing util-logfile append value.
maxtors [Thu, 5 May 2016 09:06:57 +0000 (11:06 +0200)]
Use ConfValIsTrue for parsing TILE PCIE logging append value.
maxtors [Thu, 5 May 2016 08:58:24 +0000 (10:58 +0200)]
Use ConfValIs* for parsing pf-ring.checksum-checks.
maxtors [Thu, 5 May 2016 08:53:41 +0000 (10:53 +0200)]
Use ConfValIs* for parsing pcap.checksum-checks.
maxtors [Thu, 5 May 2016 08:51:57 +0000 (10:51 +0200)]
Use ConfValIs* for parsing netmap.checksum-checks.
maxtors [Thu, 5 May 2016 08:50:21 +0000 (10:50 +0200)]
Use ConfValIs* for parsing af-packet.checksum-checks.
maxtors [Thu, 5 May 2016 08:44:06 +0000 (10:44 +0200)]
Use ConfValIs* for parseing mpipe.checksum-checks.
maxtors [Thu, 5 May 2016 08:41:42 +0000 (10:41 +0200)]
Use ConfValIs* for parsing pcap-file.checksum-checks.
Victor Julien [Tue, 3 May 2016 09:48:56 +0000 (11:48 +0200)]
profiling: suppress inferior version of UtilCpuGetTicks warning
Victor Julien [Tue, 3 May 2016 08:29:05 +0000 (10:29 +0200)]
coverty: fix dead code warning
Jason Ish [Thu, 28 Apr 2016 21:09:18 +0000 (15:09 -0600)]
smb: check that there is enough input data
Conditional was checking the word count, but indexing
much further into the input data.
maxtors [Thu, 28 Apr 2016 13:11:06 +0000 (15:11 +0200)]
Reordering of RRTYPE switch case for performance.
maxtors [Thu, 28 Apr 2016 10:59:23 +0000 (12:59 +0200)]
Added more DNS Resource Record Types.
maxtors [Tue, 26 Apr 2016 11:53:42 +0000 (13:53 +0200)]
Changed "enabled" parsing to use ConfValIs(true|false)
maxtors [Mon, 25 Apr 2016 16:08:28 +0000 (18:08 +0200)]
Update ASN1_MAX_FRAMES to reflect default in suricata.yaml.in
Victor Julien [Mon, 2 May 2016 12:30:35 +0000 (14:30 +0200)]
stats: fix stats.log ignoring null-values for threads
Victor Julien [Mon, 2 May 2016 09:59:47 +0000 (11:59 +0200)]
cppcheck: fix harmless warnings
[src/detect-engine-loader.c:272]: (error) Buffer is accessed out of bounds.
[src/flow-manager.c:742]: (error) Buffer is accessed out of bounds.
[src/flow-manager.c:906]: (error) Buffer is accessed out of bounds.
Zachary Rasmor [Wed, 27 Apr 2016 04:51:54 +0000 (00:51 -0400)]
Remove free operation on thread name field.
Name field is now a pre-allocated array - free is no longer necessary.
Fix issue leading to segfault during interface shortening in Single runmode.
Victor Julien [Tue, 24 Nov 2015 17:57:47 +0000 (18:57 +0100)]
runmodes: constify names
Zachary Rasmor [Sun, 6 Dec 2015 16:36:26 +0000 (11:36 -0500)]
Update unit test to account for 'name' type change.
Zachary Rasmor [Sun, 6 Dec 2015 00:52:20 +0000 (19:52 -0500)]
Update thread creation and threads to use global thread names.
Thread name is now stored as a static string buffer,
string duplication and alloc/de-alloc is no longer required.
Zachary Rasmor [Sun, 6 Dec 2015 00:56:55 +0000 (19:56 -0500)]
Change thread name from pointer to buffer. Remove pointer free.
Zachary Rasmor [Thu, 5 Nov 2015 03:55:13 +0000 (22:55 -0500)]
Update shortening algorithm to account for addition of #.
Zachary Rasmor [Thu, 5 Nov 2015 05:30:31 +0000 (00:30 -0500)]
Add global threadnames.
Update thread naming convention to follow: W#01-eth0.
Add interface name where applicable, add #.
Zachary Rasmor [Thu, 5 Nov 2015 04:43:31 +0000 (23:43 -0500)]
Update pcap-file runmode to adhere to new thread standard.
Zachary Rasmor [Thu, 5 Nov 2015 03:47:04 +0000 (22:47 -0500)]
Update threads to use global thread names.
Update FlowManager/Recycler to use global name.
Also add # into thread number.
Update af-packet to use global threadnames.
Update pcap to use global threadnames.
Update pfring to use global threadnames.
Update erf-dag to use global threadnames.
Update nflog to use global threadnames.
Update netmap to use global threadnames.
Update napatech to use global threadnames.
Zachary Rasmor [Mon, 21 Sep 2015 01:58:46 +0000 (21:58 -0400)]
Update IPS thread names to new name standard.
Zachary Rasmor [Sat, 19 Sep 2015 03:15:54 +0000 (23:15 -0400)]
Update thread naming convention for all IDS modes.
- Change 'Detect' to 'W'
- Enforce 2 digit numbering in thread names with leading zero
- Add 01 after W for single mode: W01
maxtors [Thu, 7 May 2015 12:09:04 +0000 (14:09 +0200)]
Changed naming of flowmanager/recycler.
- Changed FlowManagerThread to FM-
- Changed FlowRecyclerThread to FR-
- Changed use of strcasecmp to strncasecmp. This was used in the
killing and disabling of FM/FR Threads.
maxtors [Thu, 16 Apr 2015 20:22:54 +0000 (22:22 +0200)]
Reworked how shortening should be performed.
The shortening of the interfacenames is now dependent on the
size of the destination buffer, so that this can be easily
changed in the future. The process uses snprintf and strlcat.
Also changed the buffer sizes in the util-runmodes to 12
so that they can hold 11 chars + null terminator.
maxtors [Wed, 15 Apr 2015 14:38:58 +0000 (16:38 +0200)]
Fixed string copy and cat functions and made shortening safer.
Changed out strcpy, strncpy to strlcat and strlcpy. Also added
checks to see if the shortening did work or if it would fail in
advance. Fixed code in util-device and util-runmodes.
maxtors [Wed, 15 Apr 2015 13:21:24 +0000 (15:21 +0200)]
Added shortening of listening interface in util-runmodes
Added function LiveSafeDeviceName in util-device that shortens an
NIC device name if the name is over a given length and turns
it in to Ex: longi...eeth1
Eric Leblond [Fri, 29 Apr 2016 17:49:11 +0000 (19:49 +0200)]
detect-msg: fix option parsing
Code removing the space before the double quote at msg option start
was not working correctly for option starting with a space.