policy/protocols/ssl/known-certs.bro
-
Known
Log information about certificates while attempting to avoid duplicate
logging.
Detailed Interface
Runtime Options
-
Known::cert_store_expiry
-
The expiry interval of new entries in Known::cert_store
.
This also changes the interval at which certs get logged.
-
Known::cert_store_timeout
-
The timeout interval to use for operations against
Known::cert_store
.
-
Known::cert_tracking
-
The certificates whose existence should be logged and tracked.
Choices are: LOCAL_HOSTS, REMOTE_HOSTS, ALL_HOSTS, NO_HOSTS.
Redefinable Options
-
Known::cert_store_name
-
The Broker topic name to use for Known::cert_store
.
-
Known::use_cert_store
-
Toggles between different implementations of this script.
When true, use a Broker data store, else use a regular Bro set
with keys uniformly distributed over proxy nodes in cluster
operation.
State Variables
-
Known::cert_store
-
{
name=<uninitialized>
store=<uninitialized>
master_node=""
master=F
backend=Broker::MEMORY
options=[sqlite=[path=""], rocksdb=[path=""]]
clone_resync_interval=10.0 secs
clone_stale_interval=5.0 mins
clone_mutation_buffer_interval=2.0 mins
}
Holds the set of all known certificates. Keys in the store are of
type Known::AddrCertHashPair
and their associated value is
always the boolean value of “true”.
-
Known::certs
-
The set of all known certificates to store for preventing duplicate
logging. It can also be used from other scripts to
inspect if a certificate has been seen in use. The string value
in the set is for storing the DER formatted certificate’ SHA1 hash.
In cluster operation, this set is uniformly distributed across
proxy nodes.
Types
-
Known::AddrCertHashPair
-
-
Known::CertsInfo
-
Events
-
Known::log_known_certs
-
Event that can be handled to access the loggable record as it is sent
on to the logging framework.