Felipe Zimmerle
a8d34873c8
actions: Compute the rule association during rules load
2020-11-26 11:06:29 -03:00
Felipe Zimmerle
2bc522431f
Adds method getVariableNames to variables
2020-11-26 10:47:07 -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
Felipe Zimmerle
7a48245aed
Creates RuleUnconditional
...
Makes RuleScript child of RuleWithActions instead of Operator
2020-03-31 14:44:19 -03:00
Felipe Zimmerle
59d4268882
Refactoring: renames Rule to RuleWithOperator
2020-03-31 10:00:08 -03:00
Felipe Zimmerle
7495675d54
Refactoring: Renames Rules to RulesSet
...
RulesSet does not only contain rules but alse properties
2020-02-11 14:26:47 -03:00
martinhsv
1b1fdc055b
Fix rule-update-target exclusions for plain (non-regex) variables
2020-02-11 09:42:37 -03:00
Felipe Zimmerle
357c140003
Changens copyright year
2020-01-31 10:32:37 -03:00
Felipe Zimmerle
fe98ce4c7d
Cosmetics: address cppcheck warnings
2020-01-30 18:19:34 -03:00
Felipe Zimmerle
68ef2dece3
Cosmetics: address cppcheck warnings on src/variables
2020-01-27 09:08:31 -03:00
Felipe Zimmerle
4f13fecbaf
cppcheck: make static analysis more pedantic
2020-01-22 09:16:10 -03:00
Felipe Zimmerle
86a5f471a9
Cosmetics: fixed static analysis issues.
2020-01-15 20:35:59 -03:00
Felipe Zimmerle
47dd9c5df4
Refactoring on the VariableValue class
2019-06-14 10:13:54 -03:00
Felipe Zimmerle
5472362313
Fix SecRuleUpdateTargetByTag with regular expressions
2019-05-31 01:42:47 -03:00
Felipe Zimmerle
4e76c6adf0
Renames namespace Variables to variables
2019-03-06 15:53:20 -03:00
Felipe Zimmerle
3e8e28da48
Refactoring on the RULE variable
2018-10-23 16:26:11 -03:00
Felipe Zimmerle
554251bade
Refactoring on the Rule class
2018-10-23 16:26:10 -03:00
Felipe Zimmerle
98b9ae659d
Having a better organization for Variables::
2018-09-24 16:39:48 -03:00
Felipe Zimmerle
ee50fea266
Handling key exceptions on the variable itself
...
This is the first step towords to solve #1697
2018-09-24 16:16:30 -03:00
Felipe Zimmerle
eeec7efb68
Renames collection::Variable to VariableValue
2018-02-20 13:40:01 -03:00
Felipe Zimmerle
de7c5c89bb
Using shared var for variables names
2018-02-20 13:40:01 -03:00
Felipe Zimmerle
6f7fdd9493
Using direct variable access instead m_collections
2018-02-20 13:40:01 -03:00
Felipe Zimmerle
2d892a3176
Adds support for multipart vars on the parser
2018-02-20 13:40:00 -03:00
Felipe Zimmerle
3fb71f32d8
Coding style fixes
2017-11-13 22:32:11 -03:00
Felipe Zimmerle
082a3e3287
Adds support to SecWebAppID
2017-11-08 09:33:14 -03:00
Felipe Zimmerle
a676f313c3
Initial support for Lua script engine
2017-11-05 23:30:50 -03:00
Felipe Zimmerle
7ac6bf7241
Fix memory issues while resolving variables
2017-08-27 22:06:20 -03:00
Felipe Zimmerle
003a8e8e5f
Uses shared_ptr on variable names
2017-08-27 22:06:20 -03:00
Felipe Zimmerle
e1d3abc8e7
Removes memory leak on the counter variable modificator
2017-05-28 22:10:30 -03:00
Felipe Zimmerle
e95efa05cc
Fix assorted memory and static analysis errors
2017-03-06 15:02:00 -03:00
Felipe Zimmerle
f2d149fc5f
Extends the direct access model to other collections
2017-03-06 15:02:00 -03:00
Felipe Zimmerle
557c29fd46
Changes variables destructor to virtual
...
Avoid memory leak while destroying the Variable objects.
2017-03-06 15:01:51 -03:00
Felipe Zimmerle
a9e6716c6a
Variables are now receiving the rule instance as parameter
2016-05-17 15:47:50 -03:00
Felipe Zimmerle
5643d2fa28
Warming up to the remote collections support
...
Huge refactoring to have the code in shape to later support the
remote collections with different backends.
2016-05-03 17:39:49 -03:00
Felipe Zimmerle
a51e707517
Renames class Assay to Transaction
2016-01-13 15:57:00 -03:00
Felipe Zimmerle
42ce0475b2
Coding style: changes the namespace in the comments
2015-12-10 13:20:32 -03:00
Felipe Zimmerle
b5a43871e6
Changes library namespace from ModSecurity to modsecurity
2015-12-01 10:55:59 -03:00
Felipe Zimmerle
de79848285
Code cosmetics
2015-11-18 12:59:08 -03:00
Felipe Zimmerle
5bef19aa4d
Variables resolution results now stored into a std::vector instead of std::list
2015-11-04 15:51:22 -03:00
Felipe Zimmerle
2ee5d4ca8f
Testing performance enhancements by enabling transformations cache
...
Also reduce the utilization of dynamic cast.
2015-11-04 00:28:04 -03:00
Felipe Zimmerle
e641c3cc17
Huge improve in the variables resolution time
2015-11-03 22:44:59 -03:00
Felipe Zimmerle
776502e021
Refactoring: changes ModSecurityStringVar to transaction::Variable
...
Having the variables and collection in place before start to implement
persistent storage.
2015-10-28 13:53:07 -03:00
Felipe Zimmerle
076a02951c
Huge performance improvement: passing variables as pointers avoiding copies
2015-09-18 20:21:12 -03:00
Felipe Zimmerle
dc0b13ad74
Cosmetic: fix copyright header
2015-07-22 23:03:09 -03:00
Felipe Zimmerle
16bb253d0e
Adds all variables to the 'Variables' name space
2015-07-22 22:36:30 -03:00