Suricata is a network Intrusion Detection System, Intrusion Prevention System and Network Security Monitoring engine developed by the OISF and the Suricata community.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Victor Julien 1bd189a076 protocol detection: handle very unbalanced case
Some traffic is very unbalanced. For example a 4 bytes request
followed by 12mb of response data. If the 4 bytes don't lead to
the protocol being detected, then app layer processing won't
start, but it will not give up either. It will just wait for more
data. This leads to piling up data on the opposite side.

Observed:

TS: 4 bytes. PP failed (bit set), PM has not given up (bit not set).
    This makes sense as max_depth is not yet reached.

TC: 12mb. PP and PM failed (bits set).

As ts-PM never gives up, we never consider proto detect complete,
so all segments in either direction are still kept in the session.

This patch adds a cutoff for this case:
- IF for TS we have PP bit set, PM not set, AND
- we have TC both bits set, AND
- proto is unknown, AND
- TC data is 100k already, THEN
- give up on protocol detection.

The same for the opposite direction.
12 years ago
benches Initial add of the files. 16 years ago
contrib Add option on Tile-Gx for logging for fast.log alerts over PCIe 12 years ago
doc Update docs from wiki 13 years ago
m4 Prelude plugin: add detection in configure script 16 years ago
qa drmemory: remove bug 978 suppression 12 years ago
rules TLS: add detection for malicious heartbeats (AKA heartbleed) 12 years ago
scripts suricatasc: fix make distcheck. 13 years ago
src protocol detection: handle very unbalanced case 12 years ago
.gitignore unittest: make check use a qa/log dir for logging 12 years ago
COPYING Initial add of the files. 16 years ago
ChangeLog Update Changelog for 2.0 release 12 years ago
LICENSE import of gplv2 LICENSE 16 years ago
Makefile.am make install-full: get correct version of ET 12 years ago
Makefile.cvs Initial add of the files. 16 years ago
acsite.m4 Added C99 defs/macros to acsite.m4 for CentOS 16 years ago
autogen.sh OpenBSD 5.2 build fixes, Unit test fix. 13 years ago
classification.config Import of classification.config 16 years ago
config.rpath Add file needed for some autotools version. 12 years ago
configure.ac Change configure to allow statically linking libpcre. 12 years ago
doxygen.cfg doxygen: document all code 12 years ago
reference.config Add md5 to reference.config. 14 years ago
suricata.yaml.in app-layer: proto detection update 12 years ago
threshold.config threshold: improve comments of shipped threshold.config, add links to wiki. 13 years ago