You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
suricata/doc/userguide/firewall
Victor Julien fd4c197f45 app-layer/http2: add a transaction state for the trailer block
An HTTP/2 stream puts its trailers in a HEADERS block after the body.
There was no state for it, so detection had nothing to hook: the block
was merged into the header buffers, where the header state had already
been declared complete. gRPC streams, which always end with such a
block, could not be matched at all.

Add HTTP2ProgTrailers between the data and the closed state, and mark
the frames of a trailer block. Marking keys on the header section having
completed in that direction, not on the progress value and not on body
data: RFC 9113 permits a trailer section behind a message that sent no
DATA frames at all. A second block that only follows an informational
response is not a trailer, so a to-client block completes the header
section only with a non-1xx :status, and a CONTINUATION takes the
classification of the block it continues, not the state the direction
reached since.

A state inserted into a shipped protocol defaults to drop:flow in
firewall mode, which would block every stream that has trailers the
moment this builds. So a parser can now describe its sub-states fully -
completion state and the built-in policy of each state - instead of
AppLayerParserGetSubStateCompletion guessing from hard coded numbers.
The trailer states register accept:hook, so behaviour only changes for
deployments that opt in; the generic drop:flow still applies to the
states the protocol has always had.

Ticket: #8256.
5 days ago
..
firewall-design.rst app-layer/http2: add a transaction state for the trailer block 5 days ago
firewall-example.rst detect: reject the '<' hook form for non-firewall rules 3 weeks ago
firewall-stats.rst detect/firewall: update discarded logic 5 months ago
fw-pipeline.png
…
index.rst doc: update the SSH docs for the reworked state machine 3 weeks ago
ssh-state-migration.rst doc: update the SSH docs for the reworked state machine 3 weeks ago
tls-state-migration.rst doc/userguide: TLS firewall state phase rename 3 weeks ago