zeek/testing/btest/scripts/base/protocols/ssl
Arne Welzel abb7f9a509 Introduce global disabling_analyzer() hook to veto disable_analyzer()
This hook can be used to coordinate disabling an analyzer for a given
connection. The contract is simple: Any script can veto a disable_analyzer()
call by breaking from this hook. The decision is local to the script taking
into account any state attached to the connection object or script specific
state stored elsewhere.
A script breaking from the hook takes over the responsibility to call
disable_analyzer() at a later point when it finds the condition due to which
it vetoed fulfilled (which may be never).

Signature:

    disabling_analyzer: hook(c: connection, atype: AllAnalyzers::Tag, aid: count);

Example use-cases are keeping the SSL analyzer enabled for finger-printing
until a certain amount of bytes or packets have been transferred or
similarly the connection duration exceed a certain threshold.

Other example use-cases might be keeping analyzers for SSH, RDP or SSL
enabled for connections from specific subnets.

It's a bit quirky as it makes disable_analyzer() a maybe operation. While log
policy hooks and/or the notice hook have similar semantics, they are not as
stateful. It still seems like a quite powerful primitive.

The disable_analyzer() call in dpd/main.zeek may motivate the addition of a
force flag as a follow-up for situations where the caller "knows better" or
absolutely wants to override.

Closes #1678 #1593.
2022-08-11 09:40:36 +02:00
..
basic.test Change SSL and X.509 logging format 2021-06-29 09:26:43 +01:00
common_name.test General btest cleanup 2020-08-11 11:26:22 -07:00
comp_methods.test General btest cleanup 2020-08-11 11:26:22 -07:00
cve-2015-3194.test General btest cleanup 2020-08-11 11:26:22 -07:00
dhe.test General btest cleanup 2020-08-11 11:26:22 -07:00
dpd.test Match DPD TLS signature on one-sided connections. 2022-02-01 16:51:21 +00:00
dtls-no-dtls.test GH-239: Rename bro to zeek, bro-config to zeek-config, and bro-path-dev to zeek-path-dev. 2019-05-01 21:43:45 +00:00
dtls-stun-dpd.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
dtls.test General btest cleanup 2020-08-11 11:26:22 -07:00
ecdhe.test General btest cleanup 2020-08-11 11:26:22 -07:00
ecdsa.test General btest cleanup 2020-08-11 11:26:22 -07:00
fragment.test Baseline updates for recent SSL changes. 2021-06-29 15:03:03 +01:00
handshake-events.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
keyexchange.test Remove some deprecated ocsp/ssl base scripts 2022-06-30 19:17:08 +00:00
ocsp-http-get.test Enable OCSP logging by default. 2021-06-29 09:26:29 +01:00
ocsp-request-only.test Enable OCSP logging by default. 2021-06-29 09:26:29 +01:00
ocsp-request-response.test Enable OCSP logging by default. 2021-06-29 09:26:29 +01:00
ocsp-response-only.test Enable OCSP logging by default. 2021-06-29 09:26:29 +01:00
ocsp-revoked.test Enable OCSP logging by default. 2021-06-29 09:26:29 +01:00
ocsp-stapling.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
prevent-disable-analyzer.test Introduce global disabling_analyzer() hook to veto disable_analyzer() 2022-08-11 09:40:36 +02:00
signed_certificate_timestamp.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
tls-1.2-ciphers.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls-1.2-handshake-failure.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls-1.2-random.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls-1.2.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls-extension-events.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
tls1_1.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls13-experiment.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
tls13-version.test General btest cleanup 2020-08-11 11:26:22 -07:00
tls13.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
tls13_encrypted_handshake_events.test SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
x509-invalid-extension.test General btest cleanup 2020-08-11 11:26:22 -07:00
x509_extensions.test OpenSSL 3: fix warnings and tests 2021-11-17 13:33:49 +00:00