@abtnode/router-provider 1.16.45 → 1.16.46-beta-20250703-050038-4ba2582f

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/lib/nginx/includes/security/crs4/rules/REQUEST-901-INITIALIZATION.conf +42 -40
  2. package/lib/nginx/includes/security/crs4/rules/REQUEST-905-COMMON-EXCEPTIONS.conf +4 -4
  3. package/lib/nginx/includes/security/crs4/rules/REQUEST-911-METHOD-ENFORCEMENT.conf +12 -11
  4. package/lib/nginx/includes/security/crs4/rules/REQUEST-913-SCANNER-DETECTION.conf +12 -11
  5. package/lib/nginx/includes/security/crs4/rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf +127 -148
  6. package/lib/nginx/includes/security/crs4/rules/REQUEST-921-PROTOCOL-ATTACK.conf +80 -35
  7. package/lib/nginx/includes/security/crs4/rules/REQUEST-922-MULTIPART-ATTACK.conf +12 -6
  8. package/lib/nginx/includes/security/crs4/rules/REQUEST-930-APPLICATION-ATTACK-LFI.conf +22 -17
  9. package/lib/nginx/includes/security/crs4/rules/REQUEST-931-APPLICATION-ATTACK-RFI.conf +20 -15
  10. package/lib/nginx/includes/security/crs4/rules/REQUEST-932-APPLICATION-ATTACK-RCE.conf +254 -86
  11. package/lib/nginx/includes/security/crs4/rules/REQUEST-933-APPLICATION-ATTACK-PHP.conf +172 -65
  12. package/lib/nginx/includes/security/crs4/rules/REQUEST-934-APPLICATION-ATTACK-GENERIC.conf +65 -29
  13. package/lib/nginx/includes/security/crs4/rules/REQUEST-941-APPLICATION-ATTACK-XSS.conf +114 -78
  14. package/lib/nginx/includes/security/crs4/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf +182 -120
  15. package/lib/nginx/includes/security/crs4/rules/REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION.conf +19 -16
  16. package/lib/nginx/includes/security/crs4/rules/REQUEST-944-APPLICATION-ATTACK-JAVA.conf +48 -34
  17. package/lib/nginx/includes/security/crs4/rules/REQUEST-949-BLOCKING-EVALUATION.conf +30 -30
  18. package/lib/nginx/includes/security/crs4/rules/RESPONSE-950-DATA-LEAKAGES.conf +20 -15
  19. package/lib/nginx/includes/security/crs4/rules/RESPONSE-951-DATA-LEAKAGES-SQL.conf +47 -29
  20. package/lib/nginx/includes/security/crs4/rules/RESPONSE-952-DATA-LEAKAGES-JAVA.conf +15 -36
  21. package/lib/nginx/includes/security/crs4/rules/RESPONSE-953-DATA-LEAKAGES-PHP.conf +20 -15
  22. package/lib/nginx/includes/security/crs4/rules/RESPONSE-954-DATA-LEAKAGES-IIS.conf +22 -17
  23. package/lib/nginx/includes/security/crs4/rules/RESPONSE-955-WEB-SHELLS.conf +92 -43
  24. package/lib/nginx/includes/security/crs4/rules/RESPONSE-959-BLOCKING-EVALUATION.conf +30 -30
  25. package/lib/nginx/includes/security/crs4/rules/RESPONSE-980-CORRELATION.conf +23 -23
  26. package/lib/nginx/includes/security/crs4/rules/java-classes.data +11 -0
  27. package/lib/nginx/includes/security/crs4/rules/lfi-os-files.data +227 -15
  28. package/lib/nginx/includes/security/crs4/rules/php-function-names-933150.data +0 -7
  29. package/lib/nginx/includes/security/crs4/rules/restricted-files.data +250 -29
  30. package/lib/nginx/includes/security/crs4/rules/restricted-upload.data +200 -26
  31. package/lib/nginx/includes/security/crs4/rules/unix-shell-builtins.data +20 -0
  32. package/lib/nginx/includes/security/crs4/rules/unix-shell.data +39 -18
  33. package/lib/nginx/includes/security/crs4/rules/web-shells-asp.data +23 -0
  34. package/package.json +7 -7
@@ -1,7 +1,7 @@
1
1
  # ------------------------------------------------------------------------
2
- # OWASP CRS ver.4.9.0
2
+ # OWASP CRS ver.4.16.0
3
3
  # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved.
4
- # Copyright (c) 2021-2024 CRS project. All rights reserved.
4
+ # Copyright (c) 2021-2025 CRS project. All rights reserved.
5
5
  #
6
6
  # The OWASP CRS is distributed under
7
7
  # Apache Software License (ASL) version 2
@@ -26,7 +26,7 @@
26
26
  #
27
27
  # Ref: https://github.com/owasp-modsecurity/ModSecurity/wiki/Reference-Manual-(v2.x)#seccomponentsignature
28
28
  #
29
- SecComponentSignature "OWASP_CRS/4.9.0"
29
+ SecComponentSignature "OWASP_CRS/4.16.0"
30
30
 
31
31
  #
32
32
  # -=[ Default setup values ]=-
@@ -60,7 +60,7 @@ SecRule &TX:crs_setup_version "@eq 0" \
60
60
  auditlog,\
61
61
  msg:'CRS is deployed without configuration! Please copy the crs-setup.conf.example template to crs-setup.conf, and include the crs-setup.conf file in your webserver configuration before including the CRS rules. See the INSTALL file in the CRS directory for detailed instructions',\
62
62
  tag:'OWASP_CRS',\
63
- ver:'OWASP_CRS/4.9.0',\
63
+ ver:'OWASP_CRS/4.16.0',\
64
64
  severity:'CRITICAL'"
65
65
 
66
66
 
@@ -79,7 +79,7 @@ SecRule &TX:inbound_anomaly_score_threshold "@eq 0" \
79
79
  pass,\
80
80
  nolog,\
81
81
  tag:'OWASP_CRS',\
82
- ver:'OWASP_CRS/4.9.0',\
82
+ ver:'OWASP_CRS/4.16.0',\
83
83
  setvar:'tx.inbound_anomaly_score_threshold=5'"
84
84
 
85
85
  # Default Outbound Anomaly Threshold Level (rule 900110 in crs-setup.conf)
@@ -89,7 +89,7 @@ SecRule &TX:outbound_anomaly_score_threshold "@eq 0" \
89
89
  pass,\
90
90
  nolog,\
91
91
  tag:'OWASP_CRS',\
92
- ver:'OWASP_CRS/4.9.0',\
92
+ ver:'OWASP_CRS/4.16.0',\
93
93
  setvar:'tx.outbound_anomaly_score_threshold=4'"
94
94
 
95
95
  # Default Reporting Level (rule 900115 in crs-setup.conf)
@@ -99,7 +99,7 @@ SecRule &TX:reporting_level "@eq 0" \
99
99
  pass,\
100
100
  nolog,\
101
101
  tag:'OWASP_CRS',\
102
- ver:'OWASP_CRS/4.9.0',\
102
+ ver:'OWASP_CRS/4.16.0',\
103
103
  setvar:'tx.reporting_level=4'"
104
104
 
105
105
  # Default Early Blocking (rule 900120 in crs-setup.conf)
@@ -109,7 +109,7 @@ SecRule &TX:early_blocking "@eq 0" \
109
109
  pass,\
110
110
  nolog,\
111
111
  tag:'OWASP_CRS',\
112
- ver:'OWASP_CRS/4.9.0',\
112
+ ver:'OWASP_CRS/4.16.0',\
113
113
  setvar:'tx.early_blocking=0'"
114
114
 
115
115
  # Default Blocking Paranoia Level (rule 900000 in crs-setup.conf)
@@ -119,7 +119,7 @@ SecRule &TX:blocking_paranoia_level "@eq 0" \
119
119
  pass,\
120
120
  nolog,\
121
121
  tag:'OWASP_CRS',\
122
- ver:'OWASP_CRS/4.9.0',\
122
+ ver:'OWASP_CRS/4.16.0',\
123
123
  setvar:'tx.blocking_paranoia_level=1'"
124
124
 
125
125
  # Default Detection Paranoia Level (rule 900001 in crs-setup.conf)
@@ -129,7 +129,7 @@ SecRule &TX:detection_paranoia_level "@eq 0" \
129
129
  pass,\
130
130
  nolog,\
131
131
  tag:'OWASP_CRS',\
132
- ver:'OWASP_CRS/4.9.0',\
132
+ ver:'OWASP_CRS/4.16.0',\
133
133
  setvar:'tx.detection_paranoia_level=%{TX.blocking_paranoia_level}'"
134
134
 
135
135
  # Default Sampling Percentage (rule 900400 in crs-setup.conf)
@@ -139,7 +139,7 @@ SecRule &TX:sampling_percentage "@eq 0" \
139
139
  pass,\
140
140
  nolog,\
141
141
  tag:'OWASP_CRS',\
142
- ver:'OWASP_CRS/4.9.0',\
142
+ ver:'OWASP_CRS/4.16.0',\
143
143
  setvar:'tx.sampling_percentage=100'"
144
144
 
145
145
  # Default Anomaly Scores (rule 900100 in crs-setup.conf)
@@ -149,7 +149,7 @@ SecRule &TX:critical_anomaly_score "@eq 0" \
149
149
  pass,\
150
150
  nolog,\
151
151
  tag:'OWASP_CRS',\
152
- ver:'OWASP_CRS/4.9.0',\
152
+ ver:'OWASP_CRS/4.16.0',\
153
153
  setvar:'tx.critical_anomaly_score=5'"
154
154
 
155
155
  SecRule &TX:error_anomaly_score "@eq 0" \
@@ -158,7 +158,7 @@ SecRule &TX:error_anomaly_score "@eq 0" \
158
158
  pass,\
159
159
  nolog,\
160
160
  tag:'OWASP_CRS',\
161
- ver:'OWASP_CRS/4.9.0',\
161
+ ver:'OWASP_CRS/4.16.0',\
162
162
  setvar:'tx.error_anomaly_score=4'"
163
163
 
164
164
  SecRule &TX:warning_anomaly_score "@eq 0" \
@@ -167,7 +167,7 @@ SecRule &TX:warning_anomaly_score "@eq 0" \
167
167
  pass,\
168
168
  nolog,\
169
169
  tag:'OWASP_CRS',\
170
- ver:'OWASP_CRS/4.9.0',\
170
+ ver:'OWASP_CRS/4.16.0',\
171
171
  setvar:'tx.warning_anomaly_score=3'"
172
172
 
173
173
  SecRule &TX:notice_anomaly_score "@eq 0" \
@@ -176,7 +176,7 @@ SecRule &TX:notice_anomaly_score "@eq 0" \
176
176
  pass,\
177
177
  nolog,\
178
178
  tag:'OWASP_CRS',\
179
- ver:'OWASP_CRS/4.9.0',\
179
+ ver:'OWASP_CRS/4.16.0',\
180
180
  setvar:'tx.notice_anomaly_score=2'"
181
181
 
182
182
  # Default HTTP policy: allowed_methods (rule 900200 in crs-setup.conf)
@@ -186,7 +186,7 @@ SecRule &TX:allowed_methods "@eq 0" \
186
186
  pass,\
187
187
  nolog,\
188
188
  tag:'OWASP_CRS',\
189
- ver:'OWASP_CRS/4.9.0',\
189
+ ver:'OWASP_CRS/4.16.0',\
190
190
  setvar:'tx.allowed_methods=GET HEAD POST OPTIONS'"
191
191
 
192
192
  # Default HTTP policy: allowed_request_content_type (rule 900220 in crs-setup.conf)
@@ -196,7 +196,7 @@ SecRule &TX:allowed_request_content_type "@eq 0" \
196
196
  pass,\
197
197
  nolog,\
198
198
  tag:'OWASP_CRS',\
199
- ver:'OWASP_CRS/4.9.0',\
199
+ ver:'OWASP_CRS/4.16.0',\
200
200
  setvar:'tx.allowed_request_content_type=|application/x-www-form-urlencoded| |multipart/form-data| |text/xml| |application/xml| |application/soap+xml| |application/json|'"
201
201
 
202
202
  # Default HTTP policy: allowed_request_content_type_charset (rule 900280 in crs-setup.conf)
@@ -206,7 +206,7 @@ SecRule &TX:allowed_request_content_type_charset "@eq 0" \
206
206
  pass,\
207
207
  nolog,\
208
208
  tag:'OWASP_CRS',\
209
- ver:'OWASP_CRS/4.9.0',\
209
+ ver:'OWASP_CRS/4.16.0',\
210
210
  setvar:'tx.allowed_request_content_type_charset=|utf-8| |iso-8859-1| |iso-8859-15| |windows-1252|'"
211
211
 
212
212
  # Default HTTP policy: allowed_http_versions (rule 900230 in crs-setup.conf)
@@ -216,7 +216,7 @@ SecRule &TX:allowed_http_versions "@eq 0" \
216
216
  pass,\
217
217
  nolog,\
218
218
  tag:'OWASP_CRS',\
219
- ver:'OWASP_CRS/4.9.0',\
219
+ ver:'OWASP_CRS/4.16.0',\
220
220
  setvar:'tx.allowed_http_versions=HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/2.0 HTTP/3 HTTP/3.0'"
221
221
 
222
222
  # Default HTTP policy: restricted_extensions (rule 900240 in crs-setup.conf)
@@ -226,8 +226,8 @@ SecRule &TX:restricted_extensions "@eq 0" \
226
226
  pass,\
227
227
  nolog,\
228
228
  tag:'OWASP_CRS',\
229
- ver:'OWASP_CRS/4.9.0',\
230
- setvar:'tx.restricted_extensions=.asa/ .asax/ .ascx/ .backup/ .bak/ .bat/ .cdx/ .cer/ .cfg/ .cmd/ .com/ .config/ .conf/ .cs/ .csproj/ .csr/ .dat/ .db/ .dbf/ .dll/ .dos/ .htr/ .htw/ .ida/ .idc/ .idq/ .inc/ .ini/ .key/ .licx/ .lnk/ .log/ .mdb/ .old/ .pass/ .pdb/ .pem/ .pol/ .printer/ .pwd/ .rdb/ .resources/ .resx/ .sql/ .swp/ .sys/ .vb/ .vbs/ .vbproj/ .vsdisco/ .webinfo/ .xsd/ .xsx/'"
229
+ ver:'OWASP_CRS/4.16.0',\
230
+ setvar:'tx.restricted_extensions=.ani/ .asa/ .asax/ .ascx/ .backup/ .bak/ .bat/ .cdx/ .cer/ .cfg/ .cmd/ .com/ .compositefont/ .config/ .conf/ .crt/ .cs/ .csproj/ .csr/ .dat/ .db/ .dbf/ .dist/ .dll/ .dos/ .dpkg-dist/ .drv/ .gadget/ .hta/ .htr/ .htw/ .ida/ .idc/ .idq/ .inc/ .inf/ .ini/ .jse/ .key/ .licx/ .lnk/ .log/ .mdb/ .msc/ .ocx/ .old/ .pass/ .pdb/ .pfx/ .pif/ .pem/ .pol/ .prf/ .printer/ .pwd/ .rdb/ .rdp/ .reg/ .resources/ .resx/ .scr/ .sct/ .shs/ .sql/ .swp/ .sys/ .tlb/ .tmp/ .url/ .vb/ .vbe/ .vbs/ .vbproj/ .vsdisco/ .vxd/ .webinfo/ .ws/ .wsc/ .wsf/ .wsh/ .xsd/ .xsx/'"
231
231
 
232
232
  # Default HTTP policy: restricted_headers_basic (rule 900250 in crs-setup.conf)
233
233
  SecRule &TX:restricted_headers_basic "@eq 0" \
@@ -236,8 +236,8 @@ SecRule &TX:restricted_headers_basic "@eq 0" \
236
236
  pass,\
237
237
  nolog,\
238
238
  tag:'OWASP_CRS',\
239
- ver:'OWASP_CRS/4.9.0',\
240
- setvar:'tx.restricted_headers_basic=/content-encoding/ /proxy/ /lock-token/ /content-range/ /if/ /x-http-method-override/ /x-http-method/ /x-method-override/'"
239
+ ver:'OWASP_CRS/4.16.0',\
240
+ setvar:'tx.restricted_headers_basic=/content-encoding/ /proxy/ /lock-token/ /content-range/ /if/ /x-http-method-override/ /x-http-method/ /x-method-override/ /x-middleware-subrequest/'"
241
241
 
242
242
  # Default HTTP policy: restricted_headers_extended (rule 900255 in crs-setup.conf)
243
243
  SecRule &TX:restricted_headers_extended "@eq 0" \
@@ -246,7 +246,7 @@ SecRule &TX:restricted_headers_extended "@eq 0" \
246
246
  pass,\
247
247
  nolog,\
248
248
  tag:'OWASP_CRS',\
249
- ver:'OWASP_CRS/4.9.0',\
249
+ ver:'OWASP_CRS/4.16.0',\
250
250
  setvar:'tx.restricted_headers_extended=/accept-charset/'"
251
251
 
252
252
  # Default enforcing of body processor URLENCODED (rule 900010 in crs-setup.conf)
@@ -256,7 +256,7 @@ SecRule &TX:enforce_bodyproc_urlencoded "@eq 0" \
256
256
  pass,\
257
257
  nolog,\
258
258
  tag:'OWASP_CRS',\
259
- ver:'OWASP_CRS/4.9.0',\
259
+ ver:'OWASP_CRS/4.16.0',\
260
260
  setvar:'tx.enforce_bodyproc_urlencoded=0'"
261
261
 
262
262
  # Default check for UTF8 encoding validation (rule 900950 in crs-setup.conf)
@@ -266,7 +266,7 @@ SecRule &TX:crs_validate_utf8_encoding "@eq 0" \
266
266
  pass,\
267
267
  nolog,\
268
268
  tag:'OWASP_CRS',\
269
- ver:'OWASP_CRS/4.9.0',\
269
+ ver:'OWASP_CRS/4.16.0',\
270
270
  setvar:'tx.crs_validate_utf8_encoding=0'"
271
271
 
272
272
  # Default check for skipping response analysis (rule 900500 in crs-setup.conf)
@@ -276,7 +276,7 @@ SecRule &TX:crs_skip_response_analysis "@eq 0" \
276
276
  pass,\
277
277
  nolog,\
278
278
  tag:'OWASP_CRS',\
279
- ver:'OWASP_CRS/4.9.0',\
279
+ ver:'OWASP_CRS/4.16.0',\
280
280
  setvar:'tx.crs_skip_response_analysis=0'"
281
281
 
282
282
  #
@@ -294,7 +294,7 @@ SecAction \
294
294
  t:none,\
295
295
  nolog,\
296
296
  tag:'OWASP_CRS',\
297
- ver:'OWASP_CRS/4.9.0',\
297
+ ver:'OWASP_CRS/4.16.0',\
298
298
  setvar:'tx.blocking_inbound_anomaly_score=0',\
299
299
  setvar:'tx.detection_inbound_anomaly_score=0',\
300
300
  setvar:'tx.inbound_anomaly_score_pl1=0',\
@@ -330,19 +330,21 @@ SecAction \
330
330
  # The creation of the IP and the GLOBAL collection is not being tested as
331
331
  # of this writing due to limits in ftw and our testing setup.
332
332
  # Proper testing would involve the checking of a variable in the said collections.
333
- SecRule TX:ENABLE_DEFAULT_COLLECTIONS "@eq 1" \
333
+ SecRule &TX:ENABLE_DEFAULT_COLLECTIONS "@eq 1" \
334
334
  "id:901320,\
335
335
  phase:1,\
336
336
  pass,\
337
337
  nolog,\
338
338
  tag:'OWASP_CRS',\
339
- ver:'OWASP_CRS/4.9.0',\
339
+ ver:'OWASP_CRS/4.16.0',\
340
340
  setvar:'tx.ua_hash=%{REQUEST_HEADERS.User-Agent}',\
341
341
  chain"
342
- SecRule TX:ua_hash "@unconditionalMatch" \
343
- "t:none,t:sha1,t:hexEncode,\
344
- initcol:global=global,\
345
- initcol:ip=%{remote_addr}_%{MATCHED_VAR}"
342
+ SecRule TX:ENABLE_DEFAULT_COLLECTIONS "@eq 1" \
343
+ "chain"
344
+ SecRule TX:ua_hash "@unconditionalMatch" \
345
+ "t:none,t:sha1,t:hexEncode,\
346
+ initcol:global=global,\
347
+ initcol:ip=%{remote_addr}_%{MATCHED_VAR}"
346
348
 
347
349
  #
348
350
  # -=[ Initialize Correct Body Processing ]=-
@@ -360,7 +362,7 @@ SecRule REQBODY_PROCESSOR "!@rx (?:URLENCODED|MULTIPART|XML|JSON)" \
360
362
  msg:'Enabling body inspection',\
361
363
  tag:'OWASP_CRS',\
362
364
  ctl:forceRequestBodyVariable=On,\
363
- ver:'OWASP_CRS/4.9.0'"
365
+ ver:'OWASP_CRS/4.16.0'"
364
366
 
365
367
  # Force body processor URLENCODED
366
368
  SecRule TX:enforce_bodyproc_urlencoded "@eq 1" \
@@ -372,7 +374,7 @@ SecRule TX:enforce_bodyproc_urlencoded "@eq 1" \
372
374
  noauditlog,\
373
375
  msg:'Enabling forced body inspection for ASCII content',\
374
376
  tag:'OWASP_CRS',\
375
- ver:'OWASP_CRS/4.9.0',\
377
+ ver:'OWASP_CRS/4.16.0',\
376
378
  chain"
377
379
  SecRule REQBODY_PROCESSOR "!@rx (?:URLENCODED|MULTIPART|XML|JSON)" \
378
380
  "ctl:requestBodyProcessor=URLENCODED"
@@ -412,7 +414,7 @@ SecRule TX:sampling_percentage "@eq 100" \
412
414
  pass,\
413
415
  nolog,\
414
416
  tag:'OWASP_CRS',\
415
- ver:'OWASP_CRS/4.9.0',\
417
+ ver:'OWASP_CRS/4.16.0',\
416
418
  skipAfter:END-SAMPLING"
417
419
 
418
420
  SecRule UNIQUE_ID "@rx ^[a-f]*([0-9])[a-f]*([0-9])" \
@@ -423,7 +425,7 @@ SecRule UNIQUE_ID "@rx ^[a-f]*([0-9])[a-f]*([0-9])" \
423
425
  t:sha1,t:hexEncode,\
424
426
  nolog,\
425
427
  tag:'OWASP_CRS',\
426
- ver:'OWASP_CRS/4.9.0',\
428
+ ver:'OWASP_CRS/4.16.0',\
427
429
  setvar:'TX.sampling_rnd100=%{TX.1}%{TX.2}'"
428
430
 
429
431
  #
@@ -448,7 +450,7 @@ SecRule TX:sampling_rnd100 "!@lt %{tx.sampling_percentage}" \
448
450
  msg:'Sampling: Disable the rule engine based on sampling_percentage %{TX.sampling_percentage} and random number %{TX.sampling_rnd100}',\
449
451
  tag:'OWASP_CRS',\
450
452
  ctl:ruleRemoveByTag=OWASP_CRS,\
451
- ver:'OWASP_CRS/4.9.0'"
453
+ ver:'OWASP_CRS/4.16.0'"
452
454
 
453
455
  SecMarker "END-SAMPLING"
454
456
 
@@ -467,4 +469,4 @@ SecRule TX:detection_paranoia_level "@lt %{tx.blocking_paranoia_level}" \
467
469
  log,\
468
470
  msg:'Detection paranoia level configured is lower than the paranoia level itself. This is illegal. Blocking request. Aborting',\
469
471
  tag:'OWASP_CRS',\
470
- ver:'OWASP_CRS/4.9.0'"
472
+ ver:'OWASP_CRS/4.16.0'"
@@ -1,7 +1,7 @@
1
1
  # ------------------------------------------------------------------------
2
- # OWASP CRS ver.4.9.0
2
+ # OWASP CRS ver.4.16.0
3
3
  # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved.
4
- # Copyright (c) 2021-2024 CRS project. All rights reserved.
4
+ # Copyright (c) 2021-2025 CRS project. All rights reserved.
5
5
  #
6
6
  # The OWASP CRS is distributed under
7
7
  # Apache Software License (ASL) version 2
@@ -25,7 +25,7 @@ SecRule REQUEST_LINE "@streq GET /" \
25
25
  tag:'platform-apache',\
26
26
  tag:'attack-generic',\
27
27
  tag:'OWASP_CRS',\
28
- ver:'OWASP_CRS/4.9.0',\
28
+ ver:'OWASP_CRS/4.16.0',\
29
29
  chain"
30
30
  SecRule REMOTE_ADDR "@ipMatch 127.0.0.1,::1" \
31
31
  "t:none,\
@@ -46,7 +46,7 @@ SecRule REMOTE_ADDR "@ipMatch 127.0.0.1,::1" \
46
46
  tag:'platform-apache',\
47
47
  tag:'attack-generic',\
48
48
  tag:'OWASP_CRS',\
49
- ver:'OWASP_CRS/4.9.0',\
49
+ ver:'OWASP_CRS/4.16.0',\
50
50
  chain"
51
51
  SecRule REQUEST_HEADERS:User-Agent "@endsWith (internal dummy connection)" \
52
52
  "t:none,\
@@ -1,7 +1,7 @@
1
1
  # ------------------------------------------------------------------------
2
- # OWASP CRS ver.4.9.0
2
+ # OWASP CRS ver.4.16.0
3
3
  # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved.
4
- # Copyright (c) 2021-2024 CRS project. All rights reserved.
4
+ # Copyright (c) 2021-2025 CRS project. All rights reserved.
5
5
  #
6
6
  # The OWASP CRS is distributed under
7
7
  # Apache Software License (ASL) version 2
@@ -14,8 +14,8 @@
14
14
 
15
15
 
16
16
 
17
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:911011,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
18
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:911012,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
17
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:911011,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
18
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:911012,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
19
19
  #
20
20
  # -= Paranoia Level 1 (default) =- (apply only when tx.detection_paranoia_level is sufficiently high: 1 or higher)
21
21
  #
@@ -37,33 +37,34 @@ SecRule REQUEST_METHOD "!@within %{tx.allowed_methods}" \
37
37
  tag:'attack-generic',\
38
38
  tag:'paranoia-level/1',\
39
39
  tag:'OWASP_CRS',\
40
+ tag:'OWASP_CRS/METHOD-ENFORCEMENT',\
40
41
  tag:'capec/1000/210/272/220/274',\
41
42
  tag:'PCI/12.1',\
42
- ver:'OWASP_CRS/4.9.0',\
43
+ ver:'OWASP_CRS/4.16.0',\
43
44
  severity:'CRITICAL',\
44
45
  setvar:'tx.inbound_anomaly_score_pl1=+%{tx.critical_anomaly_score}'"
45
46
 
46
47
 
47
48
 
48
49
 
49
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:911013,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
50
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:911014,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
50
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:911013,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
51
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:911014,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
51
52
  #
52
53
  # -= Paranoia Level 2 =- (apply only when tx.detection_paranoia_level is sufficiently high: 2 or higher)
53
54
  #
54
55
 
55
56
 
56
57
 
57
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:911015,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
58
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:911016,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
58
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:911015,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
59
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:911016,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
59
60
  #
60
61
  # -= Paranoia Level 3 =- (apply only when tx.detection_paranoia_level is sufficiently high: 3 or higher)
61
62
  #
62
63
 
63
64
 
64
65
 
65
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:911017,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
66
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:911018,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
66
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:911017,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
67
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:911018,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-911-METHOD-ENFORCEMENT"
67
68
  #
68
69
  # -= Paranoia Level 4 =- (apply only when tx.detection_paranoia_level is sufficiently high: 4 or higher)
69
70
  #
@@ -1,7 +1,7 @@
1
1
  # ------------------------------------------------------------------------
2
- # OWASP CRS ver.4.9.0
2
+ # OWASP CRS ver.4.16.0
3
3
  # Copyright (c) 2006-2020 Trustwave and contributors. All rights reserved.
4
- # Copyright (c) 2021-2024 CRS project. All rights reserved.
4
+ # Copyright (c) 2021-2025 CRS project. All rights reserved.
5
5
  #
6
6
  # The OWASP CRS is distributed under
7
7
  # Apache Software License (ASL) version 2
@@ -14,8 +14,8 @@
14
14
 
15
15
 
16
16
 
17
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:913011,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
18
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:913012,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
17
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:913011,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
18
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 1" "id:913012,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
19
19
  #
20
20
  # -= Paranoia Level 1 (default) =- (apply only when tx.detection_paranoia_level is sufficiently high: 1 or higher)
21
21
  #
@@ -49,31 +49,32 @@ SecRule REQUEST_HEADERS:User-Agent "@pmFromFile scanners-user-agents.data" \
49
49
  tag:'attack-reputation-scanner',\
50
50
  tag:'paranoia-level/1',\
51
51
  tag:'OWASP_CRS',\
52
+ tag:'OWASP_CRS/SCANNER-DETECTION',\
52
53
  tag:'capec/1000/118/224/541/310',\
53
54
  tag:'PCI/6.5.10',\
54
- ver:'OWASP_CRS/4.9.0',\
55
+ ver:'OWASP_CRS/4.16.0',\
55
56
  severity:'CRITICAL',\
56
57
  setvar:'tx.inbound_anomaly_score_pl1=+%{tx.critical_anomaly_score}'"
57
58
 
58
59
 
59
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:913013,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
60
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:913014,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
60
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:913013,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
61
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 2" "id:913014,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
61
62
  #
62
63
  # -= Paranoia Level 2 =- (apply only when tx.detection_paranoia_level is sufficiently high: 2 or higher)
63
64
  #
64
65
 
65
66
 
66
67
 
67
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:913015,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
68
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:913016,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
68
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:913015,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
69
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 3" "id:913016,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
69
70
  #
70
71
  # -= Paranoia Level 3 =- (apply only when tx.detection_paranoia_level is sufficiently high: 3 or higher)
71
72
  #
72
73
 
73
74
 
74
75
 
75
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:913017,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
76
- SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:913018,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.9.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
76
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:913017,phase:1,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
77
+ SecRule TX:DETECTION_PARANOIA_LEVEL "@lt 4" "id:913018,phase:2,pass,nolog,tag:'OWASP_CRS',ver:'OWASP_CRS/4.16.0',skipAfter:END-REQUEST-913-SCANNER-DETECTION"
77
78
  #
78
79
  # -= Paranoia Level 4 =- (apply only when tx.detection_paranoia_level is sufficiently high: 4 or higher)
79
80
  #