1011 Commits

Author SHA1 Message Date
Felipe Zimmerle
3efc14bc08
Removes method isDisruptive from Action class 2020-11-26 11:22:33 -03:00
Felipe Zimmerle
9f264d6f54
Action: make sure that null constructor is not used 2020-11-26 11:18:25 -03:00
Felipe Zimmerle
e0cd76355f
Computes auditlog during rules load time 2020-11-26 11:14:30 -03:00
Felipe Zimmerle
3832042531
actions: Removes Rule parameter from runtime execute
Generals organization on the Action class
2020-11-26 11:10:25 -03:00
Felipe Zimmerle
a8d34873c8
actions: Compute the rule association during rules load 2020-11-26 11:06:29 -03:00
Felipe Zimmerle
1dc684a28b
Replaces lower case implementation 2020-11-26 11:00:46 -03:00
Felipe Zimmerle
193c794fb7
Makes operator to use string_view 2020-11-26 10:57:02 -03:00
Felipe Zimmerle
5a736492b4
Improves rules dump for better testing 2020-11-26 10:53:22 -03:00
Felipe Zimmerle
43b1c4f459
Better error handling when loading configurations 2020-11-26 10:50:23 -03:00
Felipe Zimmerle
2bc522431f
Adds method getVariableNames to variables 2020-11-26 10:47:07 -03:00
Felipe Zimmerle
7ac2fd5fb0
Cosmetics: Defining a type for RuleId 2020-11-26 10:44:37 -03:00
Felipe Zimmerle
f7307ef2a4
Moves rule* headers to src/ 2020-11-26 10:44:35 -03:00
Felipe Zimmerle
8d0017919f
Cleanup on Action class 2020-11-26 10:41:17 -03:00
Felipe Zimmerle
df51dd06ef
Removes RuleMessage from action execute signature 2020-11-25 10:47:19 -03:00
Felipe Zimmerle
5cb58b412c
Refactoring: Makes transformations to work with new execute signature 2020-11-25 10:47:16 -03:00
Felipe Zimmerle
8bb1a90c4f
Cosmetics: fix some cppcheck complains 2020-11-25 10:26:02 -03:00
Felipe Zimmerle
1f7d202985
Refactoring: rename evaluate to execute on actions 2020-11-25 10:26:00 -03:00
Felipe Zimmerle
6cdbad05ad
Refactoring in the Rule class to make it more elegant 2020-11-25 10:15:04 -03:00
Felipe Zimmerle
5c40997028
Rule: isMarker is no longer necessary 2020-11-25 10:12:13 -03:00
Felipe Zimmerle
766b373c3b
Adds new method for rule merge
IMPORTANT: SecDefaultAction specified on a child configuration will
overwrite the ones specified on the parent; Previously it was
concatenating.
2020-11-25 10:12:10 -03:00
Felipe Zimmerle
cb0d298ded
Moves default actions to be part of the rules 2020-11-25 09:17:17 -03:00
martinhsv
1e954f5d54
Fix: FILES variable does not use multipart part name for key 2020-11-25 09:17:15 -03:00
marshal09
452faa55ce
Add new transformation call phpArgsNames 2020-11-25 09:16:30 -03:00
Felipe Zimmerle
910a1877a9
Makes regular expression selection on collections key case insensitive
This issue was initially reported by @michaelgranzow-avi on #2296.

@airween made an initial attempt to provide a fixed at #2107; As a
consequence of the pull request review - provided by @victorhora,
@zimmerle, and @michaelgranzow-avi - @airween made a second attempt
at #2297. After reviewing by @martinhsv, @zimmerle, I have absorbed
the essential pieces from @airween patch into this one.

This patch differs from @airween's because @airween's patches were
partially working: Key exclusions with regex weren't covered, same
for anchored variables (e.g. ARGS). During the review, I have
highlighted the importance of having elementary test cases. A simple
test case on ARGS could spot the issue. Since that is an important
fix, I don't want to hold this for one more review cycle; therefore,
I am committing the fix myself.

Thank you all involved in the solution of this very own issue.
2020-11-25 09:11:05 -03:00
martinhsv
d72be1c470
Fix: Only delete Multipart tmp files after rules have run 2020-11-04 13:50:07 -03:00
Michael Granzow
1b7aa42c77
Issue-2423: Meta-actions like 'msg' should be applied at end of chain 2020-10-29 10:33:02 -03:00
martinhsv
2672db103e
Add support for new operator rxGlobal 2020-10-26 08:55:07 -03:00
Felipe Zimmerle
4b425850cf
Cosmetics: fix cppcheck warnings 2020-10-23 08:29:07 -03:00
martinhsv
8436c78993
Fix IP address logging in Section A 2020-10-16 13:14:42 -07:00
Felipe Zimmerle
995f22b3ce
Having Bison 3.7.2 2020-10-14 13:58:37 -03:00
Felipe Zimmerle
377fb723ca
Makes lua 5.1 workable again
Issue #2389
2020-09-21 10:04:40 -03:00
Felipe Zimmerle
8c85b78361
Adds support to lua 5.4 2020-08-17 11:08:03 -03:00
Felipe Zimmerle
ae3ad5eaa7
cosmetics: Address some cppcheck complains 2020-08-06 19:02:00 -03:00
Andrei Belov
fe12385148 GeoIP: switch to GEOIP_MEMORY_CACHE from GEOIP_INDEX_CACHE
Using GEOIP_INDEX_CACHE on some older versions of libGeoIP (e.g. 1.5.0
which is the default version on CentOS 7) leads to "Error reading file"
error while opening completely valid GeoIP.dat:

    # cat test.c
    #include <stdio.h>
    #include "GeoIP.h"

    int main(void) {
      GeoIP *g;

      g = GeoIP_open("/tmp/GeoIP.dat", GEOIP_INDEX_CACHE);

      if (g == NULL) {
        printf("error!\n");
      }

      GeoIP_delete(g);

      exit(0);
    }
    # cc -lGeoIP -o test test.c
    # ./test
    Error reading file /tmp/GeoIP.dat
    error!
    # sed -i -e 's,GEOIP_INDEX_CACHE,GEOIP_MEMORY_CACHE,' test.c
    # cc -lGeoIP -o test test.c
    # ./test
    # geoiplookup -f /tmp/GeoIP.dat -v 8.8.8.8
    GeoIP Country Edition: GEO-106FREE 20180327 Build 1 Copyright (c) 2018 MaxMind Inc All Rights Reserved

Also tested with recent GeoLite databases converted from new format
into legacy format, distributed here:

    https://mailfud.org/geoip-legacy/
2020-07-30 13:48:40 -03:00
martinhsv
b9620c26a0
rx:exit after full match; fix TX population after unused group 2020-06-29 06:13:45 -07:00
Felipe Zimmerle
7e0bc26917
Using performLogging function 2020-03-31 15:20:15 -03:00
Felipe Zimmerle
7a48245aed
Creates RuleUnconditional
Makes RuleScript child of RuleWithActions instead of Operator
2020-03-31 14:44:19 -03:00
Felipe Zimmerle
f63bd1a45d
Moves Rule[WithActions|WithOperator] to their own files 2020-03-31 13:33:38 -03:00
Felipe Zimmerle
8274be066a
Refactoring: Having RuleMarker in a separated file 2020-03-31 12:45:46 -03:00
Felipe Zimmerle
bdedfd2463
Refactoring: Renames RuleBase to Rule 2020-03-31 12:26:13 -03:00
Felipe Zimmerle
59d4268882
Refactoring: renames Rule to RuleWithOperator 2020-03-31 10:00:08 -03:00
Felipe Zimmerle
8eb7b8fe6c
Refactoring: Splits Rule into Rule and RuleWithActions 2020-03-30 20:22:37 -03:00
Felipe Zimmerle
43f8aee6b6
Splits Rule class into: Rule, RuleBase, RuleMarker 2020-03-30 20:21:36 -03:00
Felipe Zimmerle
fda03c0016
Yet another refactoring in Rule 2020-03-30 15:38:51 -03:00
Felipe Zimmerle
b66224853b
Refactoring in Rule: Meaningful structures name 2020-03-27 17:43:43 -03:00
Felipe Zimmerle
96849c07de
Makes action name a shared pointer 2020-03-27 16:13:15 -03:00
Felipe Zimmerle
9c526b3647
Avoids copy on the transformation operation 2020-03-27 16:12:55 -03:00
Felipe Zimmerle
8cfb289cea
Lets reserve some memory for rule message 2020-03-27 15:49:02 -03:00
Felipe Zimmerle
a609249d64
Makes m_id a shared pointer 2020-03-27 15:48:11 -03:00
Felipe Zimmerle
343b86c2a7
Makes m_fileName a shared pointer 2020-03-27 15:00:22 -03:00