Skip to content

Commit bea83f9

Browse files
authored
Release v1.29.0 (#463)
1 parent 82d66cd commit bea83f9

File tree

2 files changed

+70
-1
lines changed

2 files changed

+70
-1
lines changed

CHANGELOG.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,74 @@
11
# libddwaf release
22

3+
## v1.29.0 ([unstable](https://github.com/DataDog/libddwaf/blob/master/README.md#versioning-semantics))
4+
5+
### New Features
6+
7+
This release introduces a focused set of features addressing the most pressing use cases. Barring any necessary patch releases, this will constitute the final v1.x release.
8+
9+
#### Block ID
10+
11+
Block and redirect actions now include a `block_id` in their action parameters. This same ID is also included in the generated event, allowing the WAF caller to reference it in the blocking response or add it as a query parameter in a redirect. This ensures that each blocking action can be reliably correlated with its corresponding event.
12+
13+
The following is an example of a block request action, including the new ID:
14+
15+
```yaml
16+
actions:
17+
block_request:
18+
status_code: 403
19+
grpc_status_code: 10
20+
type: auto
21+
block_id: "55af6314-9e02-11f0-b0a3-23dee2d4f390"
22+
```
23+
24+
#### Identifier validation through checksums
25+
26+
A new operator, `match_regex_with_checksum`, has been introduced to improve the accuracy of detections performed using a regular expression, when the identifier itself has a built-in validation mechanism, by performing a secondary validation through a checksum. The checksum may be a purpose-built or generic algorithm, however at this time only the Luhn algorithm is supported.
27+
28+
The configuration of the operator is equivalent to the `match_regex` operator, except for the addition of the `checksum` parameter:
29+
30+
```yaml
31+
operator: match_regex_with_checksum
32+
parameters:
33+
inputs: [{ address: server.request.body }]
34+
regex: "\\b4\\d{3}(?:(?:,\\d{4}){3}|(?:\\s\\d{4}){3}|(?:\\.\\d{4}){3}|(?:-\\d{4}){3})\\b"
35+
options: { min_length: 16 }
36+
checksum: luhn
37+
```
38+
39+
#### Incremental processor overrides
40+
41+
Processor overrides have been updated to allow for incremental additions or removals of scanners to a given processor. Before this release, processor overrides fully replaced the list of scanners of a processor, however now each override contributes to the set by either adding or removing scanners.
42+
43+
While this is technically a breaking change, processor overrides are not currently in use. An example of a processor override including and excluding scanners can be seen below:
44+
45+
```json
46+
{
47+
"processor_overrides": [
48+
{
49+
"target": [{ "id": "extract-content" }],
50+
"scanners": {
51+
"include": [{ "id": "scanner-001" }],
52+
"exclude": [{ "tags": { "type": "email" } }]
53+
}
54+
}
55+
]
56+
}
57+
```
58+
59+
### Release changelog
60+
61+
#### Fixes
62+
- Fix single-char matches on `phrase_match` ([#462](https://github.com/DataDog/libddwaf/pull/462))
63+
64+
#### Changes
65+
- `match_regex_with_checksum` operator: match and verify regexes with a checksum ([#450](https://github.com/DataDog/libddwaf/pull/450))
66+
- Add block ID to block & redirect action parameters & event ([#459](https://github.com/DataDog/libddwaf/pull/459))
67+
- Incremental processor overrides ([#461](https://github.com/DataDog/libddwaf/pull/461))
68+
69+
#### Miscellaneous
70+
- Replace number with integer for integer-only attrs ([#457](https://github.com/DataDog/libddwaf/pull/457))
71+
372
## v1.28.1 ([unstable](https://github.com/DataDog/libddwaf/blob/master/README.md#versioning-semantics))
473
### Release changelog
574
#### Fixes

version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.28.1
1+
1.29.0

0 commit comments

Comments
 (0)