]> git.ipfire.org Git - thirdparty/suricata.git/log
thirdparty/suricata.git
9 years agoflowbits: remove unused debugging code 1872/head
Victor Julien [Wed, 24 Feb 2016 12:39:10 +0000 (13:39 +0100)] 
flowbits: remove unused debugging code

9 years agoflowbits: fix memory leak
Victor Julien [Wed, 24 Feb 2016 11:45:47 +0000 (12:45 +0100)] 
flowbits: fix memory leak

Flowbits removed from a flow by 'toggle' or 'unset' were not actually
freed, leading a small memory leak.

9 years agoflowbits: optimize set and remove
Victor Julien [Wed, 24 Feb 2016 09:50:06 +0000 (10:50 +0100)] 
flowbits: optimize set and remove

9 years agobuild-info: workaround special _FORTIFY_SOURCE defines 1871/head
Andreas Herz [Tue, 23 Feb 2016 22:27:59 +0000 (23:27 +0100)] 
build-info: workaround special _FORTIFY_SOURCE defines

On systems like Gentoo where _FORTIFY_SOURCE is already defined like
FORTIFY_SOURCE=((defined __OPTIMIZE && OPTIMIZE > 0) ? 2 : 0) the use
within the printf function (%d) won't result in the correct value and
we end up with 'defined' undeclared compile error. This workaround makes
sure that just the resolved value is checked and then printed.

9 years agopcre: work around harmless coverity warnings 1869/head
Victor Julien [Tue, 23 Feb 2016 11:12:24 +0000 (12:12 +0100)] 
pcre: work around harmless coverity warnings

9 years agobpf: fix memleak on unusual error (CID 1197757)
Victor Julien [Tue, 23 Feb 2016 10:59:00 +0000 (11:59 +0100)] 
bpf: fix memleak on unusual error (CID 1197757)

9 years agolua: if pkg-config fails, try -llua
Victor Julien [Wed, 17 Feb 2016 13:27:10 +0000 (14:27 +0100)] 
lua: if pkg-config fails, try -llua

9 years agoconfigure: OS X fixes
Victor Julien [Wed, 17 Feb 2016 09:25:02 +0000 (10:25 +0100)] 
configure: OS X fixes

Remove unnecessary -lpthread from tests.

Make linker warnings non-fatal with -Werror.

9 years agohttp: fix NULL deref on certain out of memory conditions
Victor Julien [Thu, 18 Feb 2016 19:58:09 +0000 (20:58 +0100)] 
http: fix NULL deref on certain out of memory conditions

9 years agorunmode: fix memleak on live modes setup (CID 1197760)
Victor Julien [Tue, 23 Feb 2016 09:20:29 +0000 (10:20 +0100)] 
runmode: fix memleak on live modes setup (CID 1197760)

9 years agodetect-engine: free memory in error conditions (CID 1351210)
Victor Julien [Tue, 23 Feb 2016 09:09:24 +0000 (10:09 +0100)] 
detect-engine: free memory in error conditions (CID 1351210)

9 years agomulti-tenants: improve error handling (CID 1312702)
Victor Julien [Tue, 23 Feb 2016 09:05:48 +0000 (10:05 +0100)] 
multi-tenants: improve error handling (CID 1312702)

9 years agoconf: explicitly ignore retval (CID 1353490)
Victor Julien [Tue, 23 Feb 2016 08:52:09 +0000 (09:52 +0100)] 
conf: explicitly ignore retval (CID 1353490)

9 years agounix-manager: fix memleak in error case (CID 1353491)
Victor Julien [Tue, 23 Feb 2016 08:50:40 +0000 (09:50 +0100)] 
unix-manager: fix memleak in error case (CID 1353491)

9 years agopcre: blacklist 8.35 for JIT use (issue #1693)
Victor Julien [Tue, 23 Feb 2016 08:26:56 +0000 (09:26 +0100)] 
pcre: blacklist 8.35 for JIT use (issue #1693)

9 years agojansson: cleanup JSON_ESCAPE_SLASH use 1868/head
Victor Julien [Thu, 18 Feb 2016 11:42:31 +0000 (12:42 +0100)] 
jansson: cleanup JSON_ESCAPE_SLASH use

9 years agounix-socket: optimize response sends
Victor Julien [Thu, 18 Feb 2016 09:44:14 +0000 (10:44 +0100)] 
unix-socket: optimize response sends

Instead of sending responses to clients in small chunks, send it in
one big chunk. For this the JSON message is first serialized into
a MemBuffer before sending.

9 years agojson: make membuffer helper public
Victor Julien [Thu, 18 Feb 2016 09:36:20 +0000 (10:36 +0100)] 
json: make membuffer helper public

Make json_t to MemBuffer helper public so it can reused.

9 years agostats: fix dump-counters when no loggers are active
Victor Julien [Wed, 17 Feb 2016 21:33:54 +0000 (22:33 +0100)] 
stats: fix dump-counters when no loggers are active

9 years agounix-socket: restore dump-counters functionality
Victor Julien [Wed, 17 Feb 2016 19:45:09 +0000 (20:45 +0100)] 
unix-socket: restore dump-counters functionality

Create a eve.stats like output for dump-counters.

9 years agostats: export StatsToJSON
Victor Julien [Wed, 17 Feb 2016 19:25:47 +0000 (20:25 +0100)] 
stats: export StatsToJSON

9 years agojson-stats: split out json generation
Victor Julien [Wed, 17 Feb 2016 19:19:20 +0000 (20:19 +0100)] 
json-stats: split out json generation

Split out JSON generation logic so the code becomes reusable.

9 years agojansson: include in suricata-common.h
Victor Julien [Thu, 18 Feb 2016 10:58:07 +0000 (11:58 +0100)] 
jansson: include in suricata-common.h

9 years agoconfigure: warn if libpcre 8.35 is used
Andreas Herz [Sun, 21 Feb 2016 20:54:32 +0000 (21:54 +0100)] 
configure: warn if libpcre 8.35 is used

9 years agoyaml: disable rules by default
Travis Green [Wed, 10 Feb 2016 17:18:29 +0000 (10:18 -0700)] 
yaml: disable rules by default

Change to "disable by default" rulefiles

9 years agooutput-json-dns: add logging of NS answer record content.
Tom DeCanio [Thu, 18 Feb 2016 22:24:26 +0000 (14:24 -0800)] 
output-json-dns: add logging of NS answer record content.

9 years agodetect-tls-version: fix small resource leak
Andreas Herz [Tue, 16 Feb 2016 21:55:28 +0000 (22:55 +0100)] 
detect-tls-version: fix small resource leak

9 years agojson: use top-level sensor-name if provided. 1860/head
Jason Ish [Thu, 11 Feb 2016 20:45:23 +0000 (14:45 -0600)] 
json: use top-level sensor-name if provided.

Currently the default configuration file contains a "sensor-name"
at the root of the configuration file, however, eve-log will only
use it if its specified under eve-log.

Now we will look for it at the eve-log, if present we'll use it
but log a deprecation warning, if its not present we'll look
for sensor-name at the root of the configuration.

9 years agossh: fix string handling in unittest 1856/head
Victor Julien [Tue, 16 Feb 2016 21:23:16 +0000 (22:23 +0100)] 
ssh: fix string handling in unittest

9 years agotravis: set CFLAGS to error on cc warnings
Victor Julien [Tue, 16 Feb 2016 16:42:38 +0000 (17:42 +0100)] 
travis: set CFLAGS to error on cc warnings

9 years agoeve: fix mishandling of big messages
Victor Julien [Tue, 16 Feb 2016 15:50:48 +0000 (16:50 +0100)] 
eve: fix mishandling of big messages

When the string representation of a JSON message grew bigger than
64k, the JSON record would just be truncated. This lead to errors
in the parser(s) of the JSON stream.

This patch changes the buffer logic to grow the buffer on demand.

9 years agocounters: fix thread stats delta logging
Victor Julien [Tue, 16 Feb 2016 15:45:01 +0000 (16:45 +0100)] 
counters: fix thread stats delta logging

Just like with the global stats, store prev values. Fixes delta logging.

9 years agoqa: add leak sanitzer suppression 1851/head
Victor Julien [Fri, 12 Feb 2016 08:48:05 +0000 (09:48 +0100)] 
qa: add leak sanitzer suppression

9 years agowirefuzz: exit with error code on more issues
Victor Julien [Thu, 11 Feb 2016 17:51:15 +0000 (18:51 +0100)] 
wirefuzz: exit with error code on more issues

9 years agowirefuzz: logdir handling improvement
Victor Julien [Thu, 11 Feb 2016 08:46:44 +0000 (09:46 +0100)] 
wirefuzz: logdir handling improvement

9 years agowirefuzz: remove obsolete stream mem check
Victor Julien [Thu, 26 Nov 2015 17:59:34 +0000 (18:59 +0100)] 
wirefuzz: remove obsolete stream mem check

9 years agowirefuzz: add -N option to count complete passes
Victor Julien [Thu, 26 Nov 2015 16:32:25 +0000 (17:32 +0100)] 
wirefuzz: add -N option to count complete passes

9 years agowirefuzz: improve logfile cleanup
Victor Julien [Thu, 26 Nov 2015 13:37:10 +0000 (14:37 +0100)] 
wirefuzz: improve logfile cleanup

9 years agowirefuzz: enforce -n option per run
Victor Julien [Thu, 26 Nov 2015 12:42:43 +0000 (13:42 +0100)] 
wirefuzz: enforce -n option per run

9 years agowirefuzz: add -S option for exclusive rule load
Victor Julien [Thu, 26 Nov 2015 12:29:05 +0000 (13:29 +0100)] 
wirefuzz: add -S option for exclusive rule load

9 years agohttp: fix multipart body tracking slowdown
Victor Julien [Fri, 12 Feb 2016 15:31:57 +0000 (16:31 +0100)] 
http: fix multipart body tracking slowdown

Optimize HTTP multipart body parsing. Big records that were not files
could slow down Suricata. The reason was that the body tracker was not
moved forward. This lead to growing body buffers, which were expensive
wrt memory and inspection.

This patch add logic to move the tracker forward in this case.

9 years agoasan: fix reputation code include
Victor Julien [Thu, 11 Feb 2016 17:19:34 +0000 (18:19 +0100)] 
asan: fix reputation code include

9 years agotls-sni: fix uninitialized memory use
Victor Julien [Fri, 12 Feb 2016 09:54:02 +0000 (10:54 +0100)] 
tls-sni: fix uninitialized memory use

On bad traffic the parser could allocated memory that was not
intialized. This was later used in the JSON output logging as
a valid null terminated string.

9 years agopool: fix memory leak
Victor Julien [Fri, 12 Feb 2016 09:48:26 +0000 (10:48 +0100)] 
pool: fix memory leak

Due to pointer size mishandling, the pool code could consider a
block of memory inside the 'preallocated' block. It would then not
free the block.

9 years agostream: improve StreamTcpSegmentForEach for IPS 1846/head
Victor Julien [Wed, 3 Feb 2016 08:51:33 +0000 (09:51 +0100)] 
stream: improve StreamTcpSegmentForEach for IPS

StreamTcpSegmentForEach would only return ACK'd segments. This lead
to missing stream data in alerts when running in IPS mode.

This patch changes the behavior for IPS. All segments are iterated
now, also the non-ACK'd ones. For IDS mode the behavior is unchanged.

9 years agoqa: add --simulate-ips option
Victor Julien [Sun, 31 Jan 2016 18:27:35 +0000 (19:27 +0100)] 
qa: add --simulate-ips option

This option forces the engine in 'IPS' mode. This is useful for testing
some IPS code paths based on pcaps.

9 years agoeve: fix stream payload logging wrong direction
Victor Julien [Sun, 31 Jan 2016 12:40:07 +0000 (13:40 +0100)] 
eve: fix stream payload logging wrong direction

In the EVE stream payload logging the IPS path logged the wrong dir.
Both IDS and IPS can take the same path as the detection engine
inspects in the same direction in both cases, so the alert is also
generated in the same direction.

Bug #1684

9 years agoAdded checking of negated "totals" and "threads" config values for stats. 1845/head
Maxtors [Mon, 1 Feb 2016 13:54:29 +0000 (14:54 +0100)] 
Added checking of negated "totals" and "threads" config values for stats.

9 years agolua: expose TLS certificate chain to lua
Mats Klepsland [Mon, 2 Nov 2015 12:21:37 +0000 (13:21 +0100)] 
lua: expose TLS certificate chain to lua

Expose TLS certificate chain to lua through TlsGetCertChain().

9 years agofile-store: add force-filestore configuration option to enable writing all
Tom DeCanio [Mon, 5 Oct 2015 22:34:55 +0000 (15:34 -0700)] 
file-store: add force-filestore configuration option to enable writing all
            extracted files to filesystem.

9 years agolua: set thread vars in DetectLuaMatch
Nicolas Thill [Fri, 5 Feb 2016 10:11:13 +0000 (11:11 +0100)] 
lua: set thread vars in DetectLuaMatch

Fix internal error when calling SCThreadInfo from Lua detection modules.

Signed-off-by: Nicolas Thill <ntl@p1sec.com>
9 years agofilestore-call: forcing a call to FileStore instead of manually updating
Maurizio Abba [Mon, 16 Nov 2015 12:21:27 +0000 (12:21 +0000)] 
filestore-call: forcing a call to FileStore instead of manually updating
the relative flag in order to have a single point where we actually
touch the File structure

9 years agofix nfq_get_timestamp
notnyt [Sat, 6 Feb 2016 00:11:03 +0000 (19:11 -0500)] 
fix nfq_get_timestamp

Handle case when nfq_get_timestamp returns 0 for success, but timestamp is empty.

9 years agoFix typo of trailing ] in configure --help
bladeswords [Wed, 3 Feb 2016 11:09:34 +0000 (22:09 +1100)] 
Fix typo of trailing ] in configure --help

It is the small things that count.  This is an example of the fix

Before
--disable-threading-tls Disable TLS (thread local storage)]

After
--disable-threading-tls Disable TLS (thread local storage)

9 years agoFix the comment and explanation for random-chunk-size
Andreas Herz [Tue, 17 Nov 2015 11:25:29 +0000 (12:25 +0100)] 
Fix the comment and explanation for random-chunk-size

9 years agojson: fix missing includes in disable unix socket case 1842/head
Andreas Herz [Sun, 7 Feb 2016 22:02:14 +0000 (23:02 +0100)] 
json: fix missing includes in disable unix socket case

9 years agodrmemory: suppress magic leak
Victor Julien [Mon, 8 Feb 2016 10:50:20 +0000 (11:50 +0100)] 
drmemory: suppress magic leak

9 years agofile-magic: improve libmagic handling on *nix systems
Andreas Herz [Fri, 29 Jan 2016 21:02:22 +0000 (22:02 +0100)] 
file-magic: improve libmagic handling on *nix systems

9 years agoIn configuration test mode, check signatures if 'delayed-detect' is enabled
Alexander Gozman [Thu, 4 Feb 2016 12:33:23 +0000 (15:33 +0300)] 
In configuration test mode, check signatures if 'delayed-detect' is enabled

When 'detection-engine.delayed-detect' option was set to 'yes',
suricata didn't check signatures validity in configuration test mode.

9 years agoremove unnecessary braces
Andreas Herz [Sun, 31 Jan 2016 21:34:56 +0000 (22:34 +0100)] 
remove unnecessary braces

9 years agoconfigure: add --disable-python option
Andreas Herz [Sun, 31 Jan 2016 22:15:20 +0000 (23:15 +0100)] 
configure: add --disable-python option

9 years agoasn1: fix memory leak
Jason Ish [Wed, 3 Feb 2016 20:28:50 +0000 (14:28 -0600)] 
asn1: fix memory leak

As reported in issue #1395, fix 2 memory leaks when destroying
asn.1 decode contexts.

9 years agoFix two more potential issues like bug 1550
Victor Julien [Tue, 22 Sep 2015 13:20:25 +0000 (15:20 +0200)] 
Fix two more potential issues like bug 1550

9 years agoSegfault fix
Alessandro Guido [Wed, 16 Sep 2015 13:14:11 +0000 (15:14 +0200)] 
Segfault fix

9 years agococcinelle: fix typo for strchrnul 1821/head
Andreas Herz [Tue, 19 Jan 2016 20:38:37 +0000 (21:38 +0100)] 
coccinelle: fix typo for strchrnul

9 years agoconf: null guard in ConfNodeLookupChild
Jason Ish [Thu, 21 Jan 2016 04:41:22 +0000 (22:41 -0600)] 
conf: null guard in ConfNodeLookupChild

Add NULL guarding to the lookup so callers can process nodes
in a loop with less error checking.

Addresses issue #1660.

9 years agounix manager: log client's version with debug level
Alexander Gozman [Wed, 23 Dec 2015 08:49:11 +0000 (11:49 +0300)] 
unix manager: log client's version with debug level

As (dis)connects are already logged as a debug events, this one
should do the same.

9 years agounix-manager: fix ressource leak when init fail
Eric Leblond [Mon, 21 Dec 2015 14:13:09 +0000 (15:13 +0100)] 
unix-manager: fix ressource leak when init fail

9 years agoUpdate Changelog for 3.0 suricata-3.0
Victor Julien [Fri, 22 Jan 2016 15:56:48 +0000 (16:56 +0100)] 
Update Changelog for 3.0

9 years agosmtp: harden mime parsing 1812/head
Victor Julien [Mon, 11 Jan 2016 21:46:35 +0000 (16:46 -0500)] 
smtp: harden mime parsing

9 years agoUpdate changelog for 3.0RC3 suricata-3.0RC3
Victor Julien [Mon, 21 Dec 2015 13:11:44 +0000 (14:11 +0100)] 
Update changelog for 3.0RC3

9 years agoredis: fix compiler warning 1799/head
Victor Julien [Sat, 19 Dec 2015 15:27:35 +0000 (16:27 +0100)] 
redis: fix compiler warning

9 years agoprelude: clean up memory on setup failure
Victor Julien [Fri, 18 Dec 2015 10:07:36 +0000 (11:07 +0100)] 
prelude: clean up memory on setup failure

9 years agopcap: fix setup failure memleak on libpcap < 1.0
Victor Julien [Fri, 18 Dec 2015 10:03:40 +0000 (11:03 +0100)] 
pcap: fix setup failure memleak on libpcap < 1.0

9 years agoprelude: style fixup
Victor Julien [Thu, 17 Dec 2015 15:41:05 +0000 (16:41 +0100)] 
prelude: style fixup

9 years agoprelude: fix thread safeness
Eric Leblond [Mon, 7 Dec 2015 11:08:16 +0000 (12:08 +0100)] 
prelude: fix thread safeness

Prelude analyzer is not thread safe so we need to have one
analyzer per thread.

9 years agosuricata: can't use -l and unix socket runmode
Eric Leblond [Mon, 14 Dec 2015 14:18:07 +0000 (15:18 +0100)] 
suricata: can't use -l and unix socket runmode

It is not possible to use simultaneously -l and unix socket
runmode because setting the log directory make it final so
not modifable by other call.

It is a implementation limitation but it does not make sense
to set logging directory to have it overwritten by the first
directory specified 'by pcap-file'. So it seems correct to
only trigger an error if this both options are used at the same
time.

9 years agounix-manager: display errors like errors
Eric Leblond [Mon, 14 Dec 2015 14:04:47 +0000 (15:04 +0100)] 
unix-manager: display errors like errors

Not being able to setup the output directory or file is an error so
it should be printed as such.

9 years agounix-manager: fix race condition
Eric Leblond [Mon, 14 Dec 2015 13:02:20 +0000 (14:02 +0100)] 
unix-manager: fix race condition

Under high load it is possible that the thread is not yet started
and that we register a command at the same time. As a consequence,
the commands list is not yet initialized and we have a segfault.

This patch moves the initialization in the ThreadInit function to
be sure the commands list is available when needed.

9 years agoicmpv4: remove unused header fields
Victor Julien [Wed, 16 Dec 2015 10:02:15 +0000 (11:02 +0100)] 
icmpv4: remove unused header fields

9 years agoicmpv4: remove unused declarations
Victor Julien [Wed, 16 Dec 2015 09:49:50 +0000 (10:49 +0100)] 
icmpv4: remove unused declarations

9 years agoicmpv4: harden embedded packet handling
Victor Julien [Wed, 16 Dec 2015 09:50:50 +0000 (10:50 +0100)] 
icmpv4: harden embedded packet handling

9 years agoicmpv4: improve dest unreachable logic
Victor Julien [Wed, 16 Dec 2015 09:45:05 +0000 (10:45 +0100)] 
icmpv4: improve dest unreachable logic

When a ICMPv4 destination unreachable packet contains an embedded packet
this packet is parsed. When it's found to be invalid, the whole ICMP
packet is tagged as invalid.

In some cases the unreachable packet would still be used.

This patch fixes this by checking the packet is invalid flag as well
in the ICMPV4_DEST_UNREACH_IS_VALID macro.

9 years agoDER decoder: don't use strlcpy on non-strings
Victor Julien [Thu, 17 Dec 2015 12:25:02 +0000 (13:25 +0100)] 
DER decoder: don't use strlcpy on non-strings

9 years agohttp: more sane body inspection/tracking defaults 1790/head
Victor Julien [Fri, 11 Dec 2015 15:05:42 +0000 (16:05 +0100)] 
http: more sane body inspection/tracking defaults

9 years agohttp: improve body pruning
Victor Julien [Thu, 10 Dec 2015 15:12:05 +0000 (16:12 +0100)] 
http: improve body pruning

In case the body wasn't inspected the body_inspected variable wouldn't
get updated leading to the body not getting pruned at all.

This patch adds support for this case.

9 years agoips/drop-log: fix crash on logging drops
Victor Julien [Thu, 10 Dec 2015 08:58:52 +0000 (09:58 +0100)] 
ips/drop-log: fix crash on logging drops

When logging drops for fragmented UDP packets, triggered by detection
in the reassembled packet, a missing check could lead to access of the
packets UDP header pointer when it was NULL.

9 years agohttp file: fix txid type 1788/head
Victor Julien [Fri, 13 Nov 2015 09:45:18 +0000 (10:45 +0100)] 
http file: fix txid type

9 years agofile: sync file and tx id types
Victor Julien [Fri, 13 Nov 2015 09:38:21 +0000 (10:38 +0100)] 
file: sync file and tx id types

9 years agosmtp: reset inspection buffers
Victor Julien [Tue, 1 Dec 2015 14:20:19 +0000 (15:20 +0100)] 
smtp: reset inspection buffers

9 years agohttp: fix body prune check
Victor Julien [Fri, 13 Nov 2015 13:06:32 +0000 (14:06 +0100)] 
http: fix body prune check

9 years agoUpdate Changelog for 3.0RC2 suricata-3.0RC2
Victor Julien [Tue, 8 Dec 2015 13:08:18 +0000 (14:08 +0100)] 
Update Changelog for 3.0RC2

9 years agodns: reject bad response data
Victor Julien [Wed, 2 Dec 2015 10:37:57 +0000 (11:37 +0100)] 
dns: reject bad response data

9 years agosmtp: improve handling of bad traffic
Victor Julien [Mon, 30 Nov 2015 14:46:15 +0000 (15:46 +0100)] 
smtp: improve handling of bad traffic

No longer fail tracking the SMTP stream when a unexpected reply is
encountered.

Do not store the unexpected reply.

9 years agostream-tcp: bail early on segments before base_seq
Victor Julien [Fri, 27 Nov 2015 16:12:52 +0000 (17:12 +0100)] 
stream-tcp: bail early on segments before base_seq

In cases where base_seq has moved beyond last_ack, bail early.

9 years agotls: suppress warnings on alloc failure 1786/head
Victor Julien [Mon, 7 Dec 2015 16:10:40 +0000 (17:10 +0100)] 
tls: suppress warnings on alloc failure

9 years agounified2: disable by default 1784/head
Victor Julien [Sun, 6 Dec 2015 09:53:42 +0000 (10:53 +0100)] 
unified2: disable by default

9 years agostats log: suppress 0 counters by default
Victor Julien [Sun, 8 Nov 2015 08:55:00 +0000 (09:55 +0100)] 
stats log: suppress 0 counters by default

9 years agoafpacket: suppress output
Victor Julien [Sun, 8 Nov 2015 08:18:17 +0000 (09:18 +0100)] 
afpacket: suppress output

9 years agoafpacket: move zero copy setup to config parsing
Victor Julien [Sun, 8 Nov 2015 08:06:03 +0000 (09:06 +0100)] 
afpacket: move zero copy setup to config parsing

This way it's run and logged per device, instead of per thread.