zeek/scripts
Johanna Amann e14eddeb97 SSL Analyzer: track connection direction by messages
This PR changes the way in which the SSL analyzer tracks the direction
of connections. So far, the SSL analyzer assumed that the originator of
a connection would send the client hello (and other associated
client-side events), and that the responder would be the SSL servers.

In some circumstances this is not true, and the initiator of a
connection is the server, with the responder being the client. So far
this confused some of the internal statekeeping logic and could lead to
mis-parsing of extensions.

This reversal of roles can happen in DTLS, if a connection uses STUN -
and potentially in some StartTLS protocols.

This PR tracks the direction of a TLS connection using the hello
request, client hello and server hello handshake messages. Furthermore,
it changes the SSL events from providing is_orig to providing is_client,
where is_client is true for the client_side of a connection. Since the
argument positioning in the event has not changed, old scripts will
continue to work seamlessly - the new semantics are what everyone
writing SSL scripts will have expected in any case.

There is a new event that is raised when a connection is flipped. A
weird is raised if a flip happens repeatedly.

Addresses GH-2198.
2022-06-24 18:35:44 +01:00
..
base SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
policy SSL Analyzer: track connection direction by messages 2022-06-24 18:35:44 +01:00
site Deprecate ICSI SSL notary script. 2021-06-29 09:34:29 +01:00
zeekygen Management framework: allow agents to communicate with cluster nodes 2022-04-15 18:51:54 -07:00
CMakeLists.txt Add base/misc/installation.zeek, with Zeek installation directories 2022-05-23 14:16:59 -07:00
test-all-policy.zeek Management framework: Supervisor extensions for stdout/stderr handling 2022-05-31 12:55:21 -07:00