]> git.ipfire.org Git - thirdparty/suricata.git/log
thirdparty/suricata.git
10 years agoeve alert: fix stream payload printing 1607/head
Victor Julien [Wed, 22 Jul 2015 14:33:56 +0000 (16:33 +0200)] 
eve alert: fix stream payload printing

10 years agodetect: fix pass transaction handling
Victor Julien [Fri, 17 Jul 2015 19:05:14 +0000 (21:05 +0200)] 
detect: fix pass transaction handling

If a flow was 'pass'd, it means that no packet of it will flow be handled
by the detection engine. A side effect of this was that the per flow
inspect_id would never be moved forward. This in turn lead to a situation
where transactions wouldn't be freed.

This patch addresses this case by incrementing the inspect_id anyway for
the pass case.

10 years agodetect: set flow noinspect on pass in applayer/stream
Victor Julien [Fri, 17 Jul 2015 15:49:01 +0000 (17:49 +0200)] 
detect: set flow noinspect on pass in applayer/stream

If a pass rule matches in the reassembled stream and/or in the
app-layer state, it means the rest of the flow should not be
inspected.

10 years agohttp: destroy htp_tx_t even if incomplete
Victor Julien [Fri, 17 Jul 2015 13:31:56 +0000 (15:31 +0200)] 
http: destroy htp_tx_t even if incomplete

10 years agodetect: make http prefilter use disrupt flags
Victor Julien [Fri, 17 Jul 2015 11:38:36 +0000 (13:38 +0200)] 
detect: make http prefilter use disrupt flags

10 years agodetect: optimize http prefilter handing
Victor Julien [Fri, 17 Jul 2015 11:37:46 +0000 (13:37 +0200)] 
detect: optimize http prefilter handing

10 years agodetect: pass flags to inspect_id update logic
Victor Julien [Fri, 17 Jul 2015 11:32:31 +0000 (13:32 +0200)] 
detect: pass flags to inspect_id update logic

10 years agooutput-tx: use disrupt flags
Victor Julien [Fri, 17 Jul 2015 11:10:15 +0000 (13:10 +0200)] 
output-tx: use disrupt flags

10 years agoapp-layer: pass full flags around in tx handling
Victor Julien [Fri, 17 Jul 2015 11:09:37 +0000 (13:09 +0200)] 
app-layer: pass full flags around in tx handling

10 years agoapp-layer: disruption flags
Victor Julien [Thu, 16 Jul 2015 14:43:19 +0000 (16:43 +0200)] 
app-layer: disruption flags

Stream GAPs and stream reassembly depth are tracked per direction. In
many cases they will happen in one direction, but not in the other.

Example:
HTTP requests a generally smaller than responses. So on the response
side we may hit the depth limit, but not on the request side.

The asynchronious 'disruption' has a side effect in the transaction
engine. The 'progress' tracking would never mark such transactions
as complete, and thus some inspection and logging wouldn't happen
until the very last moment: when EOF's are passed around.

Especially in proxy environments with _very_ many transactions in a
single TCP connection, this could lead to serious resource issues. The
EOF handling would suddenly have to handle thousands or more
transactions. These transactions would have been stored for a long time.

This patch introduces the concept of disruption flags. Flags passed to
the tx progress logic that are and indication of disruptions in the
traffic or the traffic handling. The idea is that the progress is
marked as complete on disruption, even if a tx is not complete. This
allows the detection and logging engines to process the tx after which
it can be cleaned up.

10 years agodetect: clean up flag usage
Victor Julien [Thu, 16 Jul 2015 13:35:19 +0000 (15:35 +0200)] 
detect: clean up flag usage

10 years agodetect: constify some DetectMpmPrefilter args
Victor Julien [Thu, 16 Jul 2015 13:35:01 +0000 (15:35 +0200)] 
detect: constify some DetectMpmPrefilter args

10 years agodns: fix state progress handling
Victor Julien [Wed, 15 Jul 2015 11:58:12 +0000 (13:58 +0200)] 
dns: fix state progress handling

10 years agoapp-layer: fix args to state progress calls
Victor Julien [Wed, 15 Jul 2015 11:08:22 +0000 (13:08 +0200)] 
app-layer: fix args to state progress calls

10 years agoSync alversion/appversion types
Victor Julien [Wed, 15 Jul 2015 07:53:39 +0000 (09:53 +0200)] 
Sync alversion/appversion types

The app layer state 'version' field is incremented with each update
to the state. It is used by the detection engine to see if the current
version of the state has already been inspected. Since app layer and
detect always run closely together there is no need for a big number
here. The detect code really only checks for equal/not-equal, so wrap
arounds are not an issue.

10 years agohttp: harden tx inspection code
Victor Julien [Tue, 14 Jul 2015 18:09:36 +0000 (20:09 +0200)] 
http: harden tx inspection code

10 years agoflow/stream: xfer noinspect flags to pseudo pkts
Victor Julien [Thu, 16 Jul 2015 10:49:38 +0000 (12:49 +0200)] 
flow/stream: xfer noinspect flags to pseudo pkts

Set noinspection flags for payloads and packets on flow and stream
pseudo packets. Without these, the pseudo packets could trigger
inspection even though this was disabled for a flow.

10 years agodetect: optimize Signature layout
Victor Julien [Thu, 16 Jul 2015 09:22:04 +0000 (11:22 +0200)] 
detect: optimize Signature layout

10 years agodetect: default to u32 for SigIntId
Victor Julien [Thu, 16 Jul 2015 09:21:44 +0000 (11:21 +0200)] 
detect: default to u32 for SigIntId

10 years agofile-json: add file_id to message
Eric Leblond [Wed, 27 May 2015 12:01:36 +0000 (14:01 +0200)] 
file-json: add file_id to message

This will allow to get the filename and by consequence the file
after a parsing of the EVEV log file.

10 years agoaf-packet: implement rollover option
Eric Leblond [Fri, 19 Jun 2015 10:13:31 +0000 (12:13 +0200)] 
af-packet: implement rollover option

This patch implements the rollover option in af_packet capture.
This should heavily minimize the packet drops as well as the
maximum bandwidth treated for a single flow.

The option has been deactivated by default but it is activated in
the af_packet default section. This ensure there is no change for
old users using an existing YAML. And new users will benefit from
the change.

This option is available since Linux 3.10. An analysis of af_packet
kernel code shows that setting the flag in all cases should not
cause any trouble for older kernel.

10 years agoaf-packet: implement new load balancing modes
Eric Leblond [Fri, 19 Jun 2015 10:08:53 +0000 (12:08 +0200)] 
af-packet: implement new load balancing modes

This patch implements the fanout load balancing modes available
in kernel 4.0. The more interesting is cluster_qm that does the
load balancing based on the RSS queues. So if the network card
is doing a flow based load balancing then a given socket will
receive all packets of a flow indepently of the CPU affinity.

10 years agoaf-packet: sync header with latest features
Eric Leblond [Fri, 19 Jun 2015 10:05:05 +0000 (12:05 +0200)] 
af-packet: sync header with latest features

Sync the replacement define with the latest Linux code.
This patch also updates the detection part in configure.ac
to do a declaration of all fields if the newest features are
not present.

10 years agonetmap: support SW rings
Aleksey Katargin [Thu, 16 Jul 2015 16:17:49 +0000 (21:17 +0500)] 
netmap: support SW rings
Netmap uses SW rings to send and receive packets from OS.

10 years agonetmap: strict check for zero copy mode
Aleksey Katargin [Thu, 16 Jul 2015 13:51:03 +0000 (18:51 +0500)] 
netmap: strict check for zero copy mode
Netmap does not guarantees that mmap'ed regions for different interfaces would be the same.

10 years agonetmap: fixed autofp mode.
Aleksey Katargin [Thu, 16 Jul 2015 13:35:23 +0000 (18:35 +0500)] 
netmap: fixed autofp mode.
Previous implementation does not work with this mode.

10 years agonetmap: support non-equal count of Rx and Tx rings on interface.
Aleksey Katargin [Thu, 16 Jul 2015 12:43:28 +0000 (17:43 +0500)] 
netmap: support non-equal count of Rx and Tx rings on interface.
Netmap does not guarantees that NIC will have equal number of transmit and receive rings.

10 years agoUse unlikely for error treatment in alert-prelude.c 1601/head
Schnaffon [Tue, 28 Apr 2015 10:23:12 +0000 (12:23 +0200)] 
Use unlikely for error treatment in alert-prelude.c

When handling error cases on creation of a new idmef field, we are in an unlikely case. This patch adds the unlikely() expression to indicate this to gcc.

10 years agointroduce fatal error macro's 1600/head
Victor Julien [Fri, 10 Jul 2015 10:19:57 +0000 (12:19 +0200)] 
introduce fatal error macro's

Add 'FatalError' and 'FatalErrorConditonal' that will take the same
args as SCLogError.

FatalError logs the error using SCLogError and then exits with return
code EXIT_FAILURE.

FatalErrorOnInit does the same only during init and with
--init-errors-fatal enabled, otherwise it just calls SCLogWarning. So
then the macro returns to the caller.

Implement this for output setup.

10 years agolua: dns support
Victor Julien [Wed, 10 Jun 2015 10:15:10 +0000 (12:15 +0200)] 
lua: dns support

10 years agodns: generic inspect engines for DNS
Victor Julien [Wed, 10 Jun 2015 09:57:59 +0000 (11:57 +0200)] 
dns: generic inspect engines for DNS

10 years agodetect: add AppLayerTxMatch call
Victor Julien [Wed, 10 Jun 2015 09:50:51 +0000 (11:50 +0200)] 
detect: add AppLayerTxMatch call

10 years agodns: generic request/response detect lists
Victor Julien [Tue, 9 Jun 2015 13:31:32 +0000 (15:31 +0200)] 
dns: generic request/response detect lists

10 years agodns: rename type so it's purpose is more clear
Victor Julien [Tue, 9 Jun 2015 12:49:22 +0000 (14:49 +0200)] 
dns: rename type so it's purpose is more clear

10 years agolua: dns extensions
Victor Julien [Fri, 5 Jun 2015 06:53:47 +0000 (08:53 +0200)] 
lua: dns extensions

Add DNS lua calls for getting queries, answers, authorities. Also
rcode and recusion desired flags.

10 years agolua: initial DNS logging support
Victor Julien [Thu, 4 Jun 2015 08:46:26 +0000 (10:46 +0200)] 
lua: initial DNS logging support

10 years agotls-store: avoid log flooding
Eric Leblond [Wed, 15 Jul 2015 20:21:07 +0000 (22:21 +0200)] 
tls-store: avoid log flooding

In case we can't write in the certs directory, this is possible
we flood the log for each TLS session or even worse each TLS
packet.  So this patch puts a limit in the number of logged
messages related to file creation.

10 years agofilestore: use SCFree instead of free
Eric Leblond [Wed, 15 Jul 2015 11:50:22 +0000 (13:50 +0200)] 
filestore: use SCFree instead of free

10 years agotls-store: backward compatibility
Eric Leblond [Tue, 14 Jul 2015 20:35:32 +0000 (22:35 +0200)] 
tls-store: backward compatibility

This patch implements backward compatibility in suricata.yaml
file. In case the new 'tls-store' output is not present in the
YAML we have to use the value defined in 'tls-log'.

10 years agotls-store: now a separate module
Eric Leblond [Tue, 14 Jul 2015 19:22:31 +0000 (21:22 +0200)] 
tls-store: now a separate module

An design error was made when doing the TLS storage module which
has been made dependant of the TLS logging. At the time there was
only one TLS logging module but there is now two different ones.

By putting the TLS store module in a separate module, we can now
use EVE output and TLS store at the same time.

10 years agoSupport for reconnecting unix domain socket log files
Jeff Barber [Thu, 16 Jul 2015 13:39:15 +0000 (09:39 -0400)] 
Support for reconnecting unix domain socket log files
Issue #1423

10 years agologging: integrate rotation into SCConfLogOpenGeneric.
Jason Ish [Wed, 8 Jul 2015 15:49:41 +0000 (09:49 -0600)] 
logging: integrate rotation into SCConfLogOpenGeneric.

Addresses issue 1492, and will make it harder to omit
rotation on new outputs.

10 years agorule vars: strip leading white space before looking up var. 1599/head
Jason Ish [Fri, 17 Jul 2015 22:22:59 +0000 (16:22 -0600)] 
rule vars: strip leading white space before looking up var.

10 years agoconfig: update yaml to show json logging option 1580/head
Victor Julien [Wed, 8 Jul 2015 14:12:29 +0000 (16:12 +0200)] 
config: update yaml to show json logging option

10 years agoFix compile bad dereferences
sfd [Fri, 3 Jul 2015 04:43:02 +0000 (16:43 +1200)] 
Fix compile bad dereferences

The src/source-erf-dag.c code was not compiling. It looks like some stats counters were added but not tested as the dereferences are incorrect.

10 years agoIn non interactive mode, print errors to stderr
Alexander Gozman [Thu, 18 Jun 2015 17:44:26 +0000 (20:44 +0300)] 
In non interactive mode, print errors to stderr

10 years agosuricatasc: remove "u" prefix when printing JSON output.
Alexander Gozman [Tue, 16 Jun 2015 15:12:01 +0000 (18:12 +0300)] 
suricatasc: remove "u" prefix when printing JSON output.
If we want to parse suricatasc's output, python's unicode prefix
should be removed to make JSON parsers happy.

10 years agostream_size operator comparison (fix issue #1488)
Zopieux [Thu, 18 Jun 2015 09:26:53 +0000 (11:26 +0200)] 
stream_size operator comparison (fix issue #1488)

`DetectStreamSizeParse` was first checking if mode[0] is '<', which is true for both '<' and '<=', thus '<=' (and resp. '>=') is never matched. This patch does the `strcmp` to '<=' (resp. '>=') within the if block of '<' (resp. '>') to fix #1488.

10 years agologging: json output 1578/head
Victor Julien [Thu, 21 May 2015 15:33:53 +0000 (17:33 +0200)] 
logging: json output

Make JSON output optional.

Cleanups.

10 years agologging: fix per output log formats
Victor Julien [Tue, 30 Jun 2015 09:21:39 +0000 (11:21 +0200)] 
logging: fix per output log formats

10 years agologging: optional colors output
Victor Julien [Fri, 26 Jun 2015 09:32:50 +0000 (11:32 +0200)] 
logging: optional colors output

Construct message per output method.

10 years agologging: change newline handling
Victor Julien [Tue, 30 Jun 2015 07:09:17 +0000 (09:09 +0200)] 
logging: change newline handling

10 years agooutput: cleanup
Victor Julien [Mon, 29 Jun 2015 16:38:23 +0000 (18:38 +0200)] 
output: cleanup

10 years agologging: cleanup output API
Victor Julien [Fri, 26 Jun 2015 14:10:16 +0000 (16:10 +0200)] 
logging: cleanup output API

Make SCLogMessage master of the logging. Reduces complexity
of the SCLog macro's.

10 years agolog: reorganize SCLogOPIfaceCtx to make it more efficient
Victor Julien [Thu, 25 Jun 2015 15:32:16 +0000 (17:32 +0200)] 
log: reorganize SCLogOPIfaceCtx to make it more efficient

10 years agodetect: fix settings override for reloads 1577/head
Victor Julien [Mon, 6 Jul 2015 11:33:36 +0000 (13:33 +0200)] 
detect: fix settings override for reloads

10 years agoDisable pcap-config use during cross compilation
Helmut Schaa [Mon, 29 Jun 2015 14:04:14 +0000 (16:04 +0200)] 
Disable pcap-config use during cross compilation

This allows cross compilation where the host system has pcap-config
installed and would create an invalid entry in the cross-CFLAGS.

10 years agoIssue 1491: fix capabilities for pf_ring mode when running under non-root account
Alexander Gozman [Fri, 26 Jun 2015 08:38:59 +0000 (11:38 +0300)] 
Issue 1491: fix capabilities for pf_ring mode when running under non-root account

10 years agoFix issues #1493 and #1494
Alexander Gozman [Mon, 29 Jun 2015 17:46:15 +0000 (20:46 +0300)] 
Fix issues #1493 and #1494

10 years agofile_data: check for signature alproto and flow 1574/head
Giuseppe Longo [Fri, 15 May 2015 09:05:29 +0000 (11:05 +0200)] 
file_data: check for signature alproto and flow

Currently the following rule can't be loaded:
alert tcp any any -> any 25 (msg:"SMTP file_data test"; flow:to_server,established; file_data; content:"abc";sid:1;)
and produces the error output:
"Can't use file_data with flow:to_server or from_client with http or smtp."

This checks if the alproto is not http in a signature,
so permits to use flow keyword also.

Issue reported by rmkml.

10 years agoMinor unittest cleanups
Victor Julien [Fri, 19 Jun 2015 12:39:44 +0000 (14:39 +0200)] 
Minor unittest cleanups

10 years agoapp-layer: fix coverity warnings
Victor Julien [Fri, 19 Jun 2015 11:39:30 +0000 (13:39 +0200)] 
app-layer: fix coverity warnings

10 years agoerspan: respect vlan.use-for-tracking setting
Victor Julien [Fri, 19 Jun 2015 11:09:36 +0000 (13:09 +0200)] 
erspan: respect vlan.use-for-tracking setting

10 years agohtp: hide BUG_ON's behind DEBUG_VALIDATION
Victor Julien [Fri, 19 Jun 2015 11:05:49 +0000 (13:05 +0200)] 
htp: hide BUG_ON's behind DEBUG_VALIDATION

10 years agosmtp json: fix potential crash on malloc failure
Victor Julien [Fri, 19 Jun 2015 11:02:29 +0000 (13:02 +0200)] 
smtp json: fix potential crash on malloc failure

** CID 1298888:    (FORWARD_NULL)
/src/output-json-email-common.c: 117 in JsonEmailLogJson()
/src/output-json-email-common.c: 140 in JsonEmailLogJson()

10 years agodetect analizer: fix minor coverity warning
Victor Julien [Fri, 19 Jun 2015 10:50:05 +0000 (12:50 +0200)] 
detect analizer: fix minor coverity warning

** CID 1298889:  Integer handling issues  (NEGATIVE_RETURNS)
/src/detect-engine-analyzer.c: 102 in EngineAnalysisFP()

10 years agofile_data smtp: fix minor coverity warning
Victor Julien [Fri, 19 Jun 2015 10:42:57 +0000 (12:42 +0200)] 
file_data smtp: fix minor coverity warning

CID 1298891:  Null pointer dereferences  (REVERSE_INULL)
Null-checking "curr_file" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.

10 years agosmb: fix coverity warning
Victor Julien [Fri, 19 Jun 2015 10:38:37 +0000 (12:38 +0200)] 
smb: fix coverity warning

** CID 1298892:  Incorrect expression  (UNUSED_VALUE)
/src/app-layer-smb.c: 1486 in SMBProbingParser()

10 years agopfring runmode: remove set that is never read 1562/head
Victor Julien [Thu, 18 Jun 2015 14:07:21 +0000 (16:07 +0200)] 
pfring runmode: remove set that is never read

10 years agocounters: reduce global usage
Victor Julien [Thu, 18 Jun 2015 13:47:02 +0000 (15:47 +0200)] 
counters: reduce global usage

10 years agodce_opnum: improve memory handling on parsing error
Victor Julien [Thu, 18 Jun 2015 13:46:28 +0000 (15:46 +0200)] 
dce_opnum: improve memory handling on parsing error

10 years agohtp: fix test
Victor Julien [Thu, 18 Jun 2015 13:34:46 +0000 (15:34 +0200)] 
htp: fix test

10 years agofast log: clean up tests
Victor Julien [Thu, 18 Jun 2015 13:27:04 +0000 (15:27 +0200)] 
fast log: clean up tests

10 years agodetect hsbd: simplify resize logic
Victor Julien [Thu, 18 Jun 2015 10:04:44 +0000 (12:04 +0200)] 
detect hsbd: simplify resize logic

10 years agoapp-layer: update all protocols to accept NULL+EOF
Victor Julien [Thu, 11 Jun 2015 14:54:52 +0000 (16:54 +0200)] 
app-layer: update all protocols to accept NULL+EOF

Update all non-HTTP protocol parsers to accept a NULL+EOF input.

10 years agoapp-layer: improve EOF handling
Victor Julien [Thu, 11 Jun 2015 10:39:53 +0000 (12:39 +0200)] 
app-layer: improve EOF handling

On receiving TCP end of stream packets (e.g. RST, but also sometimes FIN
packets), in some cases the AppLayer parser would not be notified. This
could happen in IDS mode, but would especially be an issue in IPS mode.

This patch changes the logic of the AppLayer API to handle this. When no
new data is available, and the stream ends, the AppLayer API now gets
called with a NULL/0 input, but with the EOF flag set.

This allows the AppLayer parser to call it's final routines still in the
context of a real packet.

10 years agoprint: make PrintRawDataFp take a const arg
Victor Julien [Fri, 5 Jun 2015 10:47:28 +0000 (12:47 +0200)] 
print: make PrintRawDataFp take a const arg

10 years agostream: update StreamMsg to don't have fixed size
Victor Julien [Fri, 5 Jun 2015 10:30:05 +0000 (12:30 +0200)] 
stream: update StreamMsg to don't have fixed size

StreamMsg would have a fixed size buffer. This patch replaces the buffer
by a dynamically allocated buffer.

Preparation of allowing bigger and customizable buffer sizes.

10 years agostream: remove STREAMTCP_STREAM_FLAG_CLOSE_INITIATED logic
Victor Julien [Fri, 5 Jun 2015 07:54:44 +0000 (09:54 +0200)] 
stream: remove STREAMTCP_STREAM_FLAG_CLOSE_INITIATED logic

10 years agohttp: rework UT 1559/head
Giuseppe Longo [Mon, 8 Jun 2015 12:06:24 +0000 (14:06 +0200)] 
http: rework UT

This reworks UT based on
commit 320355570863dfa6376c9d2af875495ccc8a199f

10 years agohttp: memcap HTTP server inspect body code
Victor Julien [Wed, 3 Jun 2015 16:16:33 +0000 (18:16 +0200)] 
http: memcap HTTP server inspect body code

10 years agosmtp file_data: fix wrong free
Victor Julien [Wed, 3 Jun 2015 16:15:55 +0000 (18:15 +0200)] 
smtp file_data: fix wrong free

10 years agoflow timeout: prevent dead locks
Victor Julien [Wed, 3 Jun 2015 10:11:22 +0000 (12:11 +0200)] 
flow timeout: prevent dead locks

The flow timeout mechanism called both from the flow manager at run time
and at shutdown creates pseudo packets. For this it has it's own packet
pool, which can be depleted if the timeout logic is faster than the packet
processing threads. In this case the flow timeout would enter a wait loop.
The problem however, is that this wait loop would happen while keeping a
flow locked. This could lead to a race condition when the packet thread(s)
are waiting for the lock that the flow manager has.

This patch introduces a new packet pool call 'PacketPoolWaitForN', meant
to make sure that the thread's packet pool has at least N available
packets. The flow timeout paths use this to make sure enough packets are
available *before* grabbing the flow lock. If there aren't enough packets
available yet, the wait happens before the lock as well.

This still means the wait can happen while the flow hash row is locked, so
we do make sure some more packets are available when entering that. But
perhaps in the future we need a more precise logic there as well.

10 years agohttp: improve inline body tracking
Victor Julien [Sun, 31 May 2015 08:53:42 +0000 (10:53 +0200)] 
http: improve inline body tracking

Rewrite the sliding window handling for IPS mode for the server body.

The buffer used will have the following properties:
    left edge: inspected data - window_size
    right edge: the most recent data

Due to handling of compressed bodies, the data can be much bigger than
the configured window size.

10 years agohttp: body pruning update
Victor Julien [Tue, 2 Jun 2015 11:31:47 +0000 (13:31 +0200)] 
http: body pruning update

Take inspect limits into account. Consider per direction inspect settings.

10 years agohsbd: inspect buffer depending on the engine mode
Giuseppe Longo [Mon, 11 May 2015 17:48:32 +0000 (19:48 +0200)] 
hsbd: inspect buffer depending on the engine mode

Currently, data is buffered up to response-body-minimal size
and response-body-inspect-window before being inspected.
With this, in IPS mode, inspect data as it comes in up.

The sliding window concept is used here,
some data chunks are copied into the window (buffer)
then it's inspected.

10 years agoapp-layer-htp: add http_body_inline setting
Giuseppe Longo [Thu, 28 May 2015 11:42:28 +0000 (13:42 +0200)] 
app-layer-htp: add http_body_inline setting

10 years agoips: move counters in common struct and funcs 1558/head
Victor Julien [Thu, 28 May 2015 18:44:36 +0000 (20:44 +0200)] 
ips: move counters in common struct and funcs

10 years agonfq: add ips stats
Victor Julien [Wed, 27 May 2015 15:53:23 +0000 (17:53 +0200)] 
nfq: add ips stats

10 years agodecode: create util function for basic counter updates
Victor Julien [Wed, 27 May 2015 15:17:50 +0000 (17:17 +0200)] 
decode: create util function for basic counter updates

10 years agojson-stats: log deltas
Jason Ish [Wed, 10 Jun 2015 22:09:58 +0000 (16:09 -0600)] 
json-stats: log deltas

If "deltas" is yes, log delta values as the name of the value
suffixed with _delta.

10 years agodetect-state: remove/hide BUG_ON statements
Victor Julien [Wed, 17 Jun 2015 12:36:54 +0000 (14:36 +0200)] 
detect-state: remove/hide BUG_ON statements

10 years agofile extract: add app_proto to logging 1556/head
Victor Julien [Wed, 17 Jun 2015 10:34:58 +0000 (12:34 +0200)] 
file extract: add app_proto to logging

10 years agoalproto: improve AppProtoToString 1549/head
Victor Julien [Mon, 15 Jun 2015 09:44:24 +0000 (11:44 +0200)] 
alproto: improve AppProtoToString

Make AppProtoToString compilation fail on missing 'case's.

10 years agoapp-layer: add modbus to AppProtoToString
Eric Leblond [Tue, 9 Jun 2015 13:50:31 +0000 (15:50 +0200)] 
app-layer: add modbus to AppProtoToString

It was missing causing protocol identified as modbus not to be
displayed in netflow events.

10 years agosuppress: add track by_either mode
Victor Julien [Wed, 10 Jun 2015 13:22:12 +0000 (15:22 +0200)] 
suppress: add track by_either mode

So far suppress rules would apply to src or dst addresses of a packet.
This meant that if a ip would need to suppressed both as src and as dst,
2 suppress rules would be needed.

This patch introduces track by_either, which means that the ip(s) in the
suppress rule are tested against both the packets source and dest ip's.
If either of them is on the suppress list, the alert is suppressed.

10 years agosuppress: support ip-lists
Victor Julien [Wed, 10 Jun 2015 12:20:21 +0000 (14:20 +0200)] 
suppress: support ip-lists

Ticket: 1137

Support supplying a list of IP's to the suppress keyword. Variables from
the address-groups and negation is supported. The same logic (and code) is
used that is also used in parting the IP portions of regular detection
rules.

10 years agohostbits: ignore leading and trailing white space
Jason Ish [Thu, 11 Jun 2015 22:45:34 +0000 (16:45 -0600)] 
hostbits: ignore leading and trailing white space

Ignore leading and trailing space around the name and
direction tokens.

10 years agojson-stats: reorg threads and totals 1544/head
Jason Ish [Wed, 10 Jun 2015 21:15:19 +0000 (15:15 -0600)] 
json-stats: reorg threads and totals

Totals are now placed at the top level instead of under a "Total"
object.

Threads are placed under a "threads" object.

10 years agojson-stats: log uptime in seconds, instead of a string
Jason Ish [Wed, 10 Jun 2015 20:39:38 +0000 (14:39 -0600)] 
json-stats: log uptime in seconds, instead of a string