Anoop Saldanha
d4d18e3136
Transaction engine redesigned.
...
Improved accuracy, improved performance. Performance improvement
noticeable with http heavy traffic and ruleset.
A lot of other cosmetic changes carried out as well. Wrappers introduced
for a lot of app layer functions.
Failing dce unittests disabled. Will be reintroduced in the updated dce
engine.
Cross transaction matching taken care of. FPs emanating from these
matches have now disappeared. Double inspection of transactions taken
care of as well.
12 years ago
Victor Julien
3156407746
http: fix client and server body sometimes being inspected in wrong order
13 years ago
Anoop Saldanha
2ab62920aa
fix segv in hcbd and hsbd buffering.
...
Increase bufffers_list_len, only we open up a space for a new tx.
13 years ago
Anoop Saldanha
b359bc03a9
unittest to reveal a bug/segv in our hsbd buffering code.
13 years ago
Victor Julien
2763a61213
http: allow configuration of request and response body inspection limits. Issue #560 .
13 years ago
Anoop Saldanha
b99f9fe890
New app inspection engine introduced. Moved existing inspecting engines to use it.
13 years ago
Anoop Saldanha
7b4eac3e8d
Change all inspect callbacks to accept TV and a tx_id param.
13 years ago
Anoop Saldanha
10a6e6a3eb
Engine cleanup. Remove all old engine inspection and mpm functions.
13 years ago
Anoop Saldanha
b0e20a486c
update client/server/http_header to use a different form of
...
buffering/buffer_retrieval.
Now it happens per tx, based on tx id. Also notice a perf improvement with
this.
13 years ago
Anoop Saldanha
4e3b206f7b
fix http server/client body handling. Update body status based on tx state.
13 years ago
Victor Julien
43c7fd7585
file inspection: improve logging when stream.depth limit is reached. #493 .
13 years ago
Victor Julien
59ec493f7c
http body inspection: force body inspection on stream eof.
13 years ago
Victor Julien
108da566bc
http: make client and server body inspection more robust in cases where realloc fails
13 years ago
Victor Julien
d378b76c04
http: body inspection improvement
...
Improve http_client_body and file_data performance when request and
response body limits are set to high values.
13 years ago
Victor Julien
19a7e7f395
flow: create a flow lock macro API, implement it for mutex and rwlocks. Mutex remains the default.
14 years ago
Anoop Saldanha
603d4a719a
remove det_ctx->payload_offset and use det_ctx->buffer_offset. Update hscd and hsmd to use the new generic content inspection engine
14 years ago
Anoop Saldanha
d1d5507679
remove all old content inspection engines and references to them. We have cleaned the entire content inspection phase and improved alert accuracy
14 years ago
Anoop Saldanha
35f1f7e8d9
unify payload detection engines + fix other bugs in pcre init
14 years ago
Anoop Saldanha
419cdc8558
support splitting mpm ctxs based on direction v2
14 years ago
Anoop Saldanha
420befb180
Changed my email address to anoopsaldanha at gmail dot com from my current one
14 years ago
Victor Julien
3009429e3c
HTTP transaction handling improvement
...
In some cases AppLayerTransactionGetInspectId can return -1, which is
now handled by all it's callers.
Improve logic of selecting which transactions are inspected by the various
HTTP keywords.
14 years ago
Victor Julien
b402d97179
File carving -- enable reponse file extraction
...
- Enable response body tracking
- Enable file extraction for responses
- File store meta file includes magic, close reason.
- Option to force magic lookup for all stored files.
- Fix libmagic calls thead safety.
14 years ago
Victor Julien
66a3cd96a8
Prepare HTTP response body tracking.
14 years ago
Anoop Saldanha
9a6aef459e
modify all relevant app layer API calls to accomodate passing parser local storage argument
14 years ago
Victor Julien
262a7300d7
flow: shrink Flow datatype
...
Introduce a separate FlowAddress structure for holding the ipv4 or ipv6 address
that doesn't have the family in it like the Address structure. Instead, the
family is stored in the flow as a flag: FLOW_IPV4 and FLOW_IPV6.
Add macro's to check the family, copy the address, etc.
Update many unittests to reflect these changes. Introduce unittest helper
functions for creating and initializing a flow and freeing it again.
On 64 bit this shrinks the flow with 8 bytes.
14 years ago
Victor Julien
06904c9024
App Layer cleanup
...
Removal of per flow 'aldata' array. It contained a ptr for each ALPROTO. Instead now we have 2 ptrs in the flow: alparser and alstate.
Various cleanups and dead code removal from the app layer API.
Should safe 100+ bytes memory per flow on 64 bit.
Updated lots of unittests to reflect these changes.
14 years ago
Eric Leblond
60a99915c1
doc: create http support group
...
This patch create an httplayer group and adds related files to
it. It also fixes some typo in documentation string and format.
14 years ago
Eric Leblond
fdfa85de37
Add comment to describe file content.
...
The name of the file is not really explicit. This patch adds doxygen
to have an easy to use description in the generated documentation.
14 years ago
Anoop Saldanha
ed3b44b3b5
fix parsing content keywords. We are more strict now. All content keywords need to be enclosed in double quotes. Better validation for sid, priority and rev keywords
14 years ago
Victor Julien
e16a566a96
Account for distance when checking within. Bug #285 .
14 years ago
Anoop Saldanha
d245f15f14
disable mpm pattern's retest skipping in detection engine for uri, hcbd, hmd, hrhd, hhd, hmd, hcd
14 years ago
Victor Julien
987ce57a02
Wrap a number of BUG_ON's in the detection engine in DEBUG ifdefs as the conditions they check for are not serious enough to abort the engine.
15 years ago
Victor Julien
a622ad5047
Fix new unittests introduced by rebase with next branch.
15 years ago
Anoop Saldanha
9c9f3ec963
fix mem leak in http_ engines
15 years ago
Victor Julien
6ebe7b7cd3
Change the way the request body limit is enforced.
15 years ago
Anoop Saldanha
2b781f00d7
support relative pcre for client body. All pcre processing for client body moved to hcbd engine
15 years ago
Victor Julien
0a58f0728a
Remove redundant checks in http header and http client body code.
15 years ago
Victor Julien
2422c7471a
Reduce number of locks required for http_header and http_client_body inspection.
15 years ago
Victor Julien
55ca988222
Change locking of http_header, http_raw_header and http_client_body so that flow isn't accessed without lock anywhere.
15 years ago
Anoop Saldanha
e50503e820
cleanup/remove dead code
15 years ago
Anoop Saldanha
ea3fd38291
fix lock issue with mpms inspecting http state for body, header
15 years ago
Anoop Saldanha
b140ed1c9c
modify detection engine to run hhd mpm before building the match array
15 years ago
Anoop Saldanha
4e273f2c8b
modify detection engine to carry out hcbd mpm run before build match array if alproto is http and if sgh has atleast one sig with hcbd mpm set
15 years ago
Victor Julien
6a5d2cb40d
Fix potential locking issue in out of memory conditions in the http_header, http_raw_header code. Fix other potential small issues in http_ code.
15 years ago
Anoop Saldanha
7ec0382774
support fast pattern for http raw header. Also support relative modifiers for http raw header
15 years ago
Anoop Saldanha
c61c68fd36
mpm and fast pattern support for http_header. Also support relative modifiers for http_header
15 years ago
Anoop Saldanha
778ec0939c
make client body buffer limit configurable. Also some minor changes
15 years ago
Anoop Saldanha
0aa5cffb12
fast pattern support for http_client_body keyword added. Also mpm support for http_client_body added
15 years ago
Anoop Saldanha
5c6a65dc58
support relative modifiers for http_client_body. Introduce body processing engine in detect-engine-hcbd.[ch]
15 years ago